[gnome-user-share] A few fixes for rejected transfers



commit c15de83d8dda3f0b93791527d06c22b3325c12a8
Author: Bastien Nocera <hadess hadess net>
Date:   Mon Jun 29 15:37:16 2009 +0100

    A few fixes for rejected transfers
    
    Hide the status icon when transfers are rejected on our side.
    Also make sure we don't tell the user they received a file
    when we rejected the transfer.

 src/obexpush.c |   13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)
---
diff --git a/src/obexpush.c b/src/obexpush.c
index 0eabcc6..b61dac0 100644
--- a/src/obexpush.c
+++ b/src/obexpush.c
@@ -343,6 +343,7 @@ transfer_started_cb (DBusGProxy *session,
 			return;
 		}
 		g_message ("rejected transfer");
+		g_object_set_data (G_OBJECT (session), "filename", NULL);
 	}
 }
 
@@ -352,16 +353,21 @@ transfer_completed_cb (DBusGProxy *session,
 {
 	GConfClient *client;
 	gboolean display_notify; 
+	const char *filename;
 
-	g_message ("file finish transfer: %s",
-		   (char *) g_object_get_data (G_OBJECT (session), "filename"));
+	filename = (const char *) g_object_get_data (G_OBJECT (session), "filename");
+
+	g_message ("file finish transfer: %s", filename);
+
+	if (filename == NULL)
+		return;
 	
 	client = gconf_client_get_default ();	
 	display_notify = gconf_client_get_bool (client, FILE_SHARING_BLUETOOTH_OBEXPUSH_NOTIFY, NULL);
 	g_object_unref (client);
 	
 	if (display_notify) {
-		show_notification (g_object_get_data (G_OBJECT (session), "filename"));
+		show_notification (filename);
 	} else {
 		hide_statusicon ();
 	}
@@ -375,6 +381,7 @@ cancelled_cb (DBusGProxy *session,
 	//FIXME implement properly, we never actually finished the transfer
 	g_message ("transfered was cancelled by the sender");
 	transfer_completed_cb (session, user_data);
+	hide_statusicon ();
 }
 
 static void



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]