diff src/ft.c @ 9771:9812dde4323e

[gaim-migrate @ 10639] Some good file transfer tweaks from Dave West committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Wed, 18 Aug 2004 04:13:35 +0000
parents be96293982d2
children 5f7c81eeebd2
line wrap: on
line diff
--- a/src/ft.c	Tue Aug 17 02:52:13 2004 +0000
+++ b/src/ft.c	Wed Aug 18 04:13:35 2004 +0000
@@ -121,6 +121,11 @@
 			gaim_xfer_request_accepted(xfer, filename);
 		}
 		else {
+			/*
+			 * XXX - I believe this will never happen when using
+			 * gaim_request_file() because filename is always an
+			 * existing file.  Someone verify that.  --Mark
+			 */
 			gaim_notify_error(NULL, NULL,
 							  _("That file does not exist."), NULL);
 
@@ -137,7 +142,9 @@
 	}
 	else {
 		if (S_ISDIR(st.st_mode)) {
-			/* XXX */
+			/*
+			 * XXX - Sending a directory should be valid for some protocols.
+			 */
 			gaim_xfer_request_denied(xfer);
 		}
 		else if (gaim_xfer_get_type(xfer) == GAIM_XFER_RECEIVE) {
@@ -876,9 +883,17 @@
 gaim_xfer_cancel_remote(GaimXfer *xfer)
 {
 	GaimXferUiOps *ui_ops;
+	gchar *msg;
 
 	g_return_if_fail(xfer != NULL);
 
+	gaim_request_close_with_handle(xfer);
+
+	msg = g_strdup_printf(_("%s canceled the transfer of %s"),
+	xfer->who, gaim_xfer_get_filename(xfer));
+	gaim_xfer_error(gaim_xfer_get_type(xfer), xfer->who, msg);
+	g_free(msg);
+
 	gaim_xfer_set_status(xfer, GAIM_XFER_STATUS_CANCEL_REMOTE);
 
 	if (gaim_xfer_get_type(xfer) == GAIM_XFER_SEND)