summaryrefslogtreecommitdiff
path: root/libnautilus
diff options
context:
space:
mode:
authorRamiro Estrugo <ramiro@src.gnome.org>2001-04-20 07:26:25 +0000
committerRamiro Estrugo <ramiro@src.gnome.org>2001-04-20 07:26:25 +0000
commit8e0885068bfbdd71c0cce470614d28a60cb646a4 (patch)
tree9abdf5495870cf64fcbcb29ef372c6647f58e1f3 /libnautilus
parent62e3cef5a5423103500c1fbd3f3c5d2fc509a5a6 (diff)
downloadnautilus-8e0885068bfbdd71c0cce470614d28a60cb646a4.tar.gz
Fix bug 8105 - GConf error getting font for icon view and text
view. * libnautilus/nautilus-view-standard-main.c: (nautilus_view_standard_main_multi): Move the post initialization callback to before the component's factory creation. Otherwise bad things can happen if the component assumes that its post init function has already been called while in its factory code. For example, if the post init function initialized nautilus preferences and the component factory executes code that uses nautilus preferences.
Diffstat (limited to 'libnautilus')
-rw-r--r--libnautilus/nautilus-view-standard-main.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/libnautilus/nautilus-view-standard-main.c b/libnautilus/nautilus-view-standard-main.c
index 0b6c3e0a6..d7b487126 100644
--- a/libnautilus/nautilus-view-standard-main.c
+++ b/libnautilus/nautilus-view-standard-main.c
@@ -119,7 +119,8 @@ make_object (BonoboGenericFactory *factory,
* @post_initialize_callback: An optional callback which is invoked after
* all modules have been initialized (gtk, bonobo,
* gnome-vfs, etc.) but before the execution of
- * the main event loop.
+ * the main event loop or the creation of the
+ * component's factory.
* @user_data: User data for @create_function.
**/
int
@@ -178,6 +179,10 @@ nautilus_view_standard_main_multi (const char *executable_name,
gnome_vfs_init ();
bonobo_init (orb, CORBA_OBJECT_NIL, CORBA_OBJECT_NIL);
+ if (post_initialize_callback != NULL) {
+ (* post_initialize_callback) ();
+ }
+
/* Fill in the callback data */
callback_data.object_count = 0;
callback_data.view_iids = view_iids;
@@ -191,10 +196,6 @@ nautilus_view_standard_main_multi (const char *executable_name,
&callback_data);
g_free (registration_id);
- if (post_initialize_callback != NULL) {
- (* post_initialize_callback) ();
- }
-
/* Loop until we have no more objects. */
do {
bonobo_main ();
@@ -232,7 +233,8 @@ nautilus_view_standard_main_multi (const char *executable_name,
* @post_initialize_callback: An optional callback which is invoked after
* all modules have been initialized (gtk, bonobo,
* gnome-vfs, etc.) but before the execution of
- * the main event loop.
+ * the main event loop or the creation of the
+ * component's factory.
* @user_data: User data for @create_function.
**/
int