]> Dogcows Code - chaz/openbox/blobdiff - openbox/openbox.c
gracefully handle grabs failing when doing interactive actions
[chaz/openbox] / openbox / openbox.c
index 84b9fbebe8fc12ffd6a6aba1bbb67bcc671c1460..3ffaded81ce4127ba7493a97ee54058b908fa66a 100644 (file)
@@ -100,6 +100,8 @@ int main(int argc, char **argv)
     textdomain(PACKAGE_NAME);
 
     g_set_prgname(argv[0]);
+
+    chdir(g_get_home_dir());
      
     parse_paths_startup();
 
@@ -130,8 +132,6 @@ int main(int argc, char **argv)
     if (ob_rr_inst == NULL)
         ob_exit_with_error("Failed to initialize the render library.");
 
-    /* XXX fork self onto other screens */
-     
     XSynchronize(ob_display, xsync);
 
     /* check for locale support */
@@ -205,7 +205,7 @@ int main(int argc, char **argv)
                 if (parse_load_rc(&doc, &node))
                     parse_tree(i, doc, node->xmlChildrenNode);
                 /* we're done with parsing now, kill it */
-                xmlFreeDoc(doc);
+                parse_close(doc);
                 parse_shutdown(i);
             }
 
@@ -248,6 +248,7 @@ int main(int argc, char **argv)
             if (!reconfigure) {
                 /* get all the existing windows */
                 client_manage_all();
+                focus_fallback(OB_FOCUS_FALLBACK_NOFOCUS);
             } else {
                 GList *it;
 
@@ -286,6 +287,8 @@ int main(int argc, char **argv)
         } while (reconfigure);
     }
 
+    XSync(ob_display, FALSE);
+
     RrThemeFree(ob_rr_theme);
     RrInstanceFree(ob_rr_inst);
 
This page took 0.025045 seconds and 4 git commands to generate.