evolution-rss r176 - in trunk: . src



Author: lucilanga
Date: Wed Feb 27 06:39:07 2008
New Revision: 176
URL: http://svn.gnome.org/viewvc/evolution-rss?rev=176&view=rev

Log:
abort soup issues

Modified:
   trunk/TODO
   trunk/src/network-soup.c
   trunk/src/rss.c

Modified: trunk/TODO
==============================================================================
--- trunk/TODO	(original)
+++ trunk/TODO	Wed Feb 27 06:39:07 2008
@@ -37,3 +37,4 @@
 	* convert reading feeds progress bar to articles number that will actually be read
 	* force soup to follow redirects (304) test on fedora weekly news
 	* check loading of images in certain feeds
+	* convert rest of non-intrusiver error messages 

Modified: trunk/src/network-soup.c
==============================================================================
--- trunk/src/network-soup.c	(original)
+++ trunk/src/network-soup.c	Wed Feb 27 06:39:07 2008
@@ -153,16 +153,17 @@
 static void
 unblock_free (gpointer user_data, GObject *ex_msg)
 {
+	g_print("weak ref - trying to free object\n");
 #ifdef RSS_DEBUG
 	g_print("weak ref - trying to free object\n");
 #endif
 	g_hash_table_remove(rf->session, user_data);
-	g_hash_table_destroy(rf->abort_session);
-	rf->abort_session = g_hash_table_new(g_direct_hash, g_direct_equal);
-	g_hash_table_foreach(rf->session, construct_abort, NULL);
-	g_hash_table_find(rf->key_session,
+//	g_hash_table_destroy(rf->abort_session);
+//	rf->abort_session = g_hash_table_new(g_direct_hash, g_direct_equal);
+//	g_hash_table_foreach(rf->session, construct_abort, NULL);
+/*	g_hash_table_find(rf->key_session,
 		remove_if_match,
-		user_data);
+		user_data);*/
 	gboolean prune = soup_session_try_prune_connection (user_data);
 	//I really don't know if his is necesarry
 	//but I believe it won't hurt
@@ -423,12 +424,11 @@
 	{
 		g_set_error(err, NET_ERROR, NET_ERROR_GENERIC,
 				soup_status_get_phrase(2));			//invalid url
-		g_print("status:%s\n", soup_status_get_phrase(2));		//invalid url
 		return -1;
 	}
 	g_hash_table_insert(rf->session, soup_sess, msg);
-	g_hash_table_insert(rf->abort_session, soup_sess, msg);
-	g_hash_table_insert(rf->key_session, data, soup_sess);
+//	g_hash_table_insert(rf->abort_session, soup_sess, msg);
+//	g_hash_table_insert(rf->key_session, data, soup_sess);
 
 	gchar *agstr = g_strdup_printf("Evolution/%s; Evolution-RSS/%s",
 			EVOLUTION_VERSION_STRING, VERSION);
@@ -447,8 +447,8 @@
 	soup_session_queue_message (soup_sess, msg,
            cb2, cbdata2);
 
-	g_object_add_weak_pointer (G_OBJECT(msg), (gpointer)info);
-	g_object_weak_ref (G_OBJECT(msg), unblock_free, soup_sess);
+////	g_object_add_weak_pointer (G_OBJECT(msg), (gpointer)info);
+////	g_object_weak_ref (G_OBJECT(msg), unblock_free, soup_sess);
 //	g_object_weak_ref (G_OBJECT(soup_sess), unblock_free, soup_sess);
 //	GMainLoop *mainloop = g_main_loop_new (g_main_context_default (), FALSE);
   //	g_timeout_add (10 * 1000, &conn_mainloop_quit, mainloop);

Modified: trunk/src/rss.c
==============================================================================
--- trunk/src/rss.c	(original)
+++ trunk/src/rss.c	Wed Feb 27 06:39:07 2008
@@ -586,10 +586,11 @@
 gboolean
 cancel_soup_sess(gpointer key, gpointer value, gpointer user_data)
 {
-	g_print("key:%p, value:%p ==", key, value);
+//	g_print("key:%p, value:%p ==", key, value);
+	g_print("key:%p ==", key);
 
-	if (SOUP_IS_SESSION(key))
-	{
+//	if (SOUP_IS_SESSION(key))
+/*	{
 		if (SOUP_IS_MESSAGE(value))
 		{
 #if LIBSOUP_VERSION < 2003000
@@ -598,14 +599,18 @@
 #else
 			soup_session_cancel_message(key, value, SOUP_STATUS_CANCELLED);
 #endif
-		}
+		}*/
+//			soup_session_cancel_message(key, value);
+//		g_object_weak_unref(value, unblock_free, key);
+			if (key)
 		soup_session_abort(key);
-		g_hash_table_find(rf->key_session,
+/*		g_hash_table_find(rf->key_session,
                 	remove_if_match,
                 	user_data);
-	}
-	g_print(" key:%p, value:%p\n", key, value);
-	return TRUE;
+	}*/
+//	g_print(" key:%p, value:%p\n", key, value);
+	g_print(" key:%p, \n", key);
+	return FALSE;
 }
 void
 remove_weak(gpointer key, gpointer value, gpointer user_data)
@@ -617,13 +622,16 @@
 abort_all_soup(void)
 {
 	//abort all session
-	if (rf->abort_session)
-	{
-		g_hash_table_foreach(rf->abort_session, remove_weak, NULL);
-		g_hash_table_foreach_remove(rf->abort_session, cancel_soup_sess, NULL);
+//	if (rf->abort_session)
+//	{
+//		g_hash_table_foreach(rf->abort_session, remove_weak, NULL);
+//		g_hash_table_foreach_remove(rf->abort_session, cancel_soup_sess, NULL);
+//		g_hash_table_foreach(rf->abort_session, cancel_soup_sess, NULL);
+		g_hash_table_foreach(rf->session, cancel_soup_sess, NULL);
 		g_hash_table_destroy(rf->session);
                 rf->session = g_hash_table_new(g_direct_hash, g_direct_equal);
-	}
+		g_print("purdup\n");
+//	}
 	if (rf->progress_bar)
 	{
 		gtk_progress_bar_set_fraction((GtkProgressBar *)rf->progress_bar, 1);
@@ -675,7 +683,8 @@
         if (info->cancel_button)
                 gtk_widget_set_sensitive(info->cancel_button, FALSE);
 
-	abort_all_soup();
+//	abort_all_soup();
+	g_print("\nCancel reading feeds\n");
 }
 
 gchar *
@@ -2232,6 +2241,7 @@
 finish_feed (SoupSession *soup_sess, SoupMessage *msg, gpointer user_data)
 #endif
 {
+	g_print("finish feed\n");
 	GError *err = NULL;
 	gchar *chn_name = NULL;
 	//FIXME user_data might be out of bounds here
@@ -2416,7 +2426,7 @@
 out:	
 	if (user_data)
 	{
-		taskbar_op_finish(user_data);
+//		taskbar_op_finish(user_data);
 		g_free(user_data);
 	}
 	return;
@@ -3012,6 +3022,7 @@
 			rf->cancel = 0;
 		rf->pending = FALSE;
 	}
+	g_print("REVE bailk\n");
 	
 
 //camel_store_subscribe_folder (store, ->node->info->full_name, &mm->ex);



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