Revision: 5909 http://geany.svn.sourceforge.net/geany/?rev=5909&view=rev Author: colombanw Date: 2011-09-11 17:06:11 +0000 (Sun, 11 Sep 2011) Log Message: ----------- Cleanup code in utils_open_browser()
Modified Paths: -------------- trunk/src/utils.c
Modified: trunk/src/utils.c =================================================================== --- trunk/src/utils.c 2011-09-02 21:45:20 UTC (rev 5908) +++ trunk/src/utils.c 2011-09-11 17:06:11 UTC (rev 5909) @@ -81,37 +81,28 @@ cmdline = g_strconcat(tool_prefs.browser_cmd, " "", uri, """, NULL); if (! g_spawn_command_line_async(cmdline, NULL)) { + static const gchar *browsers[] = + { + "xdg-open", + "firefox", + "mozilla", + "opera", + "konqueror", + "netscape" + }; const gchar *argv[3]; + guint i;
- argv[0] = "xdg-open"; + argv[0] = NULL; argv[1] = uri; argv[2] = NULL; - if (! g_spawn_async(NULL, (gchar**)argv, NULL, G_SPAWN_SEARCH_PATH, - NULL, NULL, NULL, NULL)) + + for (i = 0; i < G_N_ELEMENTS (browsers); i++) { - argv[0] = "firefox"; - if (! g_spawn_async(NULL, (gchar**)argv, NULL, G_SPAWN_SEARCH_PATH, + argv[0] = browsers[i]; + if (g_spawn_async(NULL, (gchar**)argv, NULL, G_SPAWN_SEARCH_PATH, NULL, NULL, NULL, NULL)) - { - argv[0] = "mozilla"; - if (! g_spawn_async(NULL, (gchar**)argv, NULL, G_SPAWN_SEARCH_PATH, NULL, - NULL, NULL, NULL)) - { - argv[0] = "opera"; - if (! g_spawn_async(NULL, (gchar**)argv, NULL, G_SPAWN_SEARCH_PATH, - NULL, NULL, NULL, NULL)) - { - argv[0] = "konqueror"; - if (! g_spawn_async(NULL, (gchar**)argv, NULL, G_SPAWN_SEARCH_PATH, - NULL, NULL, NULL, NULL)) - { - argv[0] = "netscape"; - g_spawn_async(NULL, (gchar**)argv, NULL, G_SPAWN_SEARCH_PATH, - NULL, NULL, NULL, NULL); - } - } - } - } + break; } } g_free(cmdline);
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.