[maemo-commits] [maemo-commits] r17998 - in projects/haf/trunk/libmatchbox2: . matchbox/core
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Thu Apr 2 14:58:47 EEST 2009
- Previous message: [maemo-commits] r17997 - in projects/haf/trunk/gtk+: . gtk
- Next message: [maemo-commits] r17999 - in projects/haf/trunk/glib: . gio
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: gw Date: 2009-04-02 14:58:44 +0300 (Thu, 02 Apr 2009) New Revision: 17998 Modified: projects/haf/trunk/libmatchbox2/ChangeLog projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-decor.c projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c Log: * matchbox/core/mb-wm-main-context.c: Removed accidentally checked in code * matchbox/core/mb-wm-decor.c: Fixed NB#109094 - crash caused by clicking on title bar button repeatedly very quickly Modified: projects/haf/trunk/libmatchbox2/ChangeLog =================================================================== --- projects/haf/trunk/libmatchbox2/ChangeLog 2009-04-02 11:48:52 UTC (rev 17997) +++ projects/haf/trunk/libmatchbox2/ChangeLog 2009-04-02 11:58:44 UTC (rev 17998) @@ -1,5 +1,12 @@ 2009-04-02 Gordon Williams <gordon.williams at collabora.co.uk> + * matchbox/core/mb-wm-main-context.c: Removed accidentally checked + in code + * matchbox/core/mb-wm-decor.c: Fixed NB#109094 - crash caused by + clicking on title bar button repeatedly very quickly + +2009-04-02 Gordon Williams <gordon.williams at collabora.co.uk> + * matchbox/comp-mgr/mb-wm-comp-mgr-clutter.c: More fixes for g_object_unref - deal with weak reference on clutter actors. Modified: projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-decor.c =================================================================== --- projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-decor.c 2009-04-02 11:48:52 UTC (rev 17997) +++ projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-decor.c 2009-04-02 11:58:44 UTC (rev 17998) @@ -670,11 +670,12 @@ while (l) { - MBWMList * old = l; + MBWMList * next = l->next; mb_wm_decor_button_unrealize((MBWMDecorButton *)l->data); mb_wm_object_unref (MB_WM_OBJECT (l->data)); - l = l->next; - free (old); + l = next; + /* we don't free, because the dispose handler of the decor button + * removes itself */ } if (decor->press_cb_id) @@ -1103,12 +1104,16 @@ static void mb_wm_decor_button_destroy (MBWMObject* obj) { - //MBWMDecorButton * button = MB_WM_DECOR_BUTTON (obj); - /* - * We are doing the job in the mb_wm_decor_button_unrealize() while the - * decoration still exists. - */ + MBWMDecorButton * button = MB_WM_DECOR_BUTTON (obj); + /* unrealise ourselves */ + if (button->realized) + mb_wm_decor_button_unrealize(button); + + /* remove ourselves from the list of buttons in decor */ + if (button->decor) + button->decor->buttons = mb_wm_util_list_remove(button->decor->buttons, + button); } static void Modified: projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c =================================================================== --- projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c 2009-04-02 11:48:52 UTC (rev 17997) +++ projects/haf/trunk/libmatchbox2/matchbox/core/mb-wm-main-context.c 2009-04-02 11:58:44 UTC (rev 17998) @@ -170,17 +170,15 @@ } static inline void -call_handlers_for_event (MBWMList *iter_base, +call_handlers_for_event (MBWMList *iter, void *event, Window xwin ) { - MBWMList *iter = iter_base; while (iter) { MBWMXEventFuncInfo *i = iter->data; MBWMList *next = iter->next; - MBWMList *iter_check = iter_base; if (i && (i->xwindow == None || i->xwindow == xwin)) { @@ -196,10 +194,6 @@ } } - while (iter_check && iter_check!=next) - iter_check = iter_check->next; - g_assert(iter_check == next); - iter = next; } }
- Previous message: [maemo-commits] r17997 - in projects/haf/trunk/gtk+: . gtk
- Next message: [maemo-commits] r17999 - in projects/haf/trunk/glib: . gio
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]