| 1334 int place; |
1334 int place; |
| 1335 gchar *uri_escaped, *uri_custom = NULL; |
1335 gchar *uri_escaped, *uri_custom = NULL; |
| 1336 GSList *argv = NULL, *argv_remote = NULL; |
1336 GSList *argv = NULL, *argv_remote = NULL; |
| 1337 gchar **usercmd_argv = NULL; |
1337 gchar **usercmd_argv = NULL; |
| 1338 |
1338 |
| 1339 /* Replace some special characters like $ with their percent-encoded |
1339 uri_escaped = purple_uri_escape_for_open(uri); |
| 1340 value. This shouldn't be necessary because we shell-escape the entire |
|
| 1341 arg before exec'ing the browser, however, we had a report that a URL |
|
| 1342 containing $(xterm) was causing xterm to start on his system. This is |
|
| 1343 obviously a bug on his system, but it's pretty easy for us to protect |
|
| 1344 against it. */ |
|
| 1345 uri_escaped = g_uri_escape_string(uri, ":;/%#,+?=&@", FALSE); |
|
| 1346 |
1340 |
| 1347 web_browser = purple_prefs_get_string(PIDGIN_PREFS_ROOT |
1341 web_browser = purple_prefs_get_string(PIDGIN_PREFS_ROOT |
| 1348 "/browsers/browser"); |
1342 "/browsers/browser"); |
| 1349 place = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/browsers/place"); |
1343 place = purple_prefs_get_int(PIDGIN_PREFS_ROOT "/browsers/place"); |
| 1350 |
1344 |