[maemo-commits] [maemo-commits] r17804 - in projects/haf/trunk/libmatchbox2: . matchbox/core

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Thu Mar 26 02:31:26 EET 2009
Author: tthurman
Date: 2009-03-26 02:31:14 +0200 (Thu, 26 Mar 2009)
New Revision: 17804

Modified:
   projects/haf/trunk/libmatchbox2/ChangeLog
   projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c
Log:
	* matchbox/core/mb-wm-main-context.c: don't allow event handlers
	to stop processing of further events.  Give a warning if
	behaviour would have differed before this change.  This does not
	crash the system, so I'm not sure what the crasher yesterday was:
	I wonder whether it was caused by passing a function which still
	returned bool to some function which expected it to return void
	now.  Anyway, if Kimmo was right about the causes of that bug:
	Fixes NB#105014.



Modified: projects/haf/trunk/libmatchbox2/ChangeLog
===================================================================
--- projects/haf/trunk/libmatchbox2/ChangeLog	2009-03-26 00:12:21 UTC (rev 17803)
+++ projects/haf/trunk/libmatchbox2/ChangeLog	2009-03-26 00:31:14 UTC (rev 17804)
@@ -1,5 +1,16 @@
 2009-03-25  Thomas Thurman  <thomas.thurman at collabora.co.uk>
 
+	* matchbox/core/mb-wm-main-context.c: don't allow event handlers
+	to stop processing of further events.  Give a warning if
+	behaviour would have differed before this change.  This does not
+	crash the system, so I'm not sure what the crasher yesterday was:
+	I wonder whether it was caused by passing a function which still
+	returned bool to some function which expected it to return void
+	now.  Anyway, if Kimmo was right about the causes of that bug:
+	Fixes NB#105014.
+
+2009-03-25  Thomas Thurman  <thomas.thurman at collabora.co.uk>
+
 	* matchbox/core/mb-wm-main-context.c: slight fixup of warnings in
 	loop processing for events.
 

Modified: projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c
===================================================================
--- projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c	2009-03-26 00:12:21 UTC (rev 17803)
+++ projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c	2009-03-26 00:31:14 UTC (rev 17804)
@@ -182,21 +182,15 @@
 
       if (msg_xwin == None || msg_xwin == xwin)
 	{
-	  if (!(i->func (event, i->userdata)))
+	  if (!i->func (event, i->userdata))
 	    {
-	      MBWMXEventFuncInfo *breaker = i;
-	      iter = iter->next;
-
-	      /* This can get spammy. */
-	      while (iter)
-		{
-		  MBWMXEventFuncInfo *i = iter->data;
-		  
-		  g_warning ("Warning: Ignoring handler %p because of %p", i->func, breaker->func);
-		  iter = iter->next;
-		}
-	      
-	      return;
+	      /* We don't stop when they ask us to now.
+	       * But only warn about this if it's not the last
+	       * handler in the chain!
+	       */
+	      if (iter->next)
+		g_warning ("Handler %p asked us to stop.  But we won't.",
+			   i->func);
 	    }
 	}
 


More information about the maemo-commits mailing list