--- a/ChangeLog Tue Apr 05 06:17:12 2011 +0000
+++ b/ChangeLog Mon Apr 11 04:59:18 2011 +0000
@@ -1,3 +1,9 @@
+2011-04-11 Abhijit Nath <[email protected]
+
+ * base-specs/glib2.spec
+ * patches/glib-12-gio-fen-clear-flag.diff
+ Added the patch to fix CR# 7028919.
+
2011-04-05 Abhijit Nath <[email protected]
* base-specs/pidgin.spec
--- a/base-specs/glib2.spec Tue Apr 05 06:17:12 2011 +0000
+++ b/base-specs/glib2.spec Mon Apr 11 04:59:18 2011 +0000
@@ -46,6 +46,7 @@
Patch10: glib-10-gio-fen.diff
#owner:lin date:2010-05-26 type:bug bugzilla:6955199
Patch11: glib-11-gio-fen-assertion-on-root.diff
+Patch12: glib-12-gio-fen-clear-flag.diff
URL: http://www.gtk.org
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Docdir: %{_defaultdocdir}/doc
@@ -90,6 +91,7 @@
%patch9 -p1
%patch10 -p1
%patch11 -p1
+%patch12 -p1
%build
%ifos linux
@@ -160,6 +162,8 @@
%{_mandir}/man3/*
%changelog
+* Tue Apr 5 2011 - [email protected]
+- Added patch glib-12-gio-fen-clear-flag.diff to fix CR# 7028919.
* Tue May 26 2010 - [email protected]
- Added glib-11-gio-fen-assertion-on-root.diff for bugzilla:6955199.
* Tue Apr 20 2010 - [email protected]
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/patches/glib-12-gio-fen-clear-flag.diff Mon Apr 11 04:59:18 2011 +0000
@@ -0,0 +1,67 @@
+diff --git a/gio/fen/fen-helper.c b/gio/fen/fen-helper.c
+index 418d003..f1c51da 100644
+--- a/gio/fen/fen-helper.c
++++ b/gio/fen/fen-helper.c
+@@ -35,8 +35,7 @@
+ #endif
+
+ #ifdef GIO_COMPILATION
+-#define FH_W if (fh_debug_enabled) g_debug
+-static gboolean fh_debug_enabled = FALSE;
++#define FH_W if (FALSE) g_debug
+ #else
+ #include "gam_error.h"
+ #define FH_W(...) GAM_DEBUG(DEBUG_INFO, __VA_ARGS__)
+diff --git a/gio/fen/fen-kernel.c b/gio/fen/fen-kernel.c
+index a060016..f09ebaa 100644
+--- a/gio/fen/fen-kernel.c
++++ b/gio/fen/fen-kernel.c
+@@ -33,8 +33,7 @@
+ #include "fen-dump.h"
+
+ #ifdef GIO_COMPILATION
+-#define FK_W if (fk_debug_enabled) g_debug
+-static gboolean fk_debug_enabled = FALSE;
++#define FK_W if (FALSE) g_debug
+ #else
+ #include "gam_error.h"
+ #define FK_W(...) GAM_DEBUG(DEBUG_INFO, __VA_ARGS__)
+diff --git a/gio/fen/fen-node.c b/gio/fen/fen-node.c
+index 5bbe6b8..0a5f1e0 100644
+--- a/gio/fen/fen-node.c
++++ b/gio/fen/fen-node.c
+@@ -40,8 +40,7 @@
+ #endif
+
+ #ifdef GIO_COMPILATION
+-#define FN_W if (fn_debug_enabled) g_debug
+-static gboolean fn_debug_enabled = FALSE;
++#define FN_W if (FALSE) g_debug
+ #else
+ #include "gam_error.h"
+ #define FN_W(...) GAM_DEBUG(DEBUG_INFO, __VA_ARGS__)
+@@ -145,7 +144,6 @@ node_find(node_t* node, const gchar* filename, gboolean create_on_missing)
+ for (token = strtok_r (str, G_DIR_SEPARATOR_S, &lasts);
+ token != NULL && child != NULL;
+ token = strtok_r (NULL, G_DIR_SEPARATOR_S, &lasts)) {
+- FN_W ("%s %s + %s\n", __func__, NODE_NAME(parent), token);
+ child = node_get_child(parent, token);
+ if (child) {
+ parent = child;
+@@ -282,7 +280,6 @@ node_try_delete(node_t* node)
+ if (!NODE_NEED_MONITOR(node)) {
+ /* Clean some flags. */
+ /* NODE_CLE_FLAG(node, NODE_FLAG_HAS_SNAPSHOT | NODE_FLAG_STAT_DONE); */
+- node->flag = 0;
+
+ /* Now we handle the state. */
+ if (NODE_HAS_STATE(node, NODE_STATE_ASSOCIATED)) {
+@@ -329,6 +326,8 @@ static void
+ node_delete (node_t *f)
+ {
+ FN_W ("%s 0x%p %s\n", __func__, f, NODE_NAME(f));
++ /* Clean flags. */
++ f->flag = 0;
+ g_assert(f->state == 0);
+ g_assert(!NODE_IS_ACTIVE(f));
+ g_assert(g_hash_table_size (f->children) == 0);