aboutsummaryrefslogtreecommitdiffhomepage
path: root/uzbl-core.c
diff options
context:
space:
mode:
authorGravatar Rob <rob.manea@gmail.com>2009-11-12 22:13:32 +0100
committerGravatar Rob <rob.manea@gmail.com>2009-11-12 22:13:32 +0100
commitb7629a9a2afa1b5305eb456ccae365112df94c3c (patch)
tree8851fa0980d5bf9538261108ffaa440d9afe9b97 /uzbl-core.c
parentf85c745e67eccda70d43ead308ababa37cfd036f (diff)
guard g_strstplit
Diffstat (limited to 'uzbl-core.c')
-rw-r--r--uzbl-core.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/uzbl-core.c b/uzbl-core.c
index 96a6208..be2ce75 100644
--- a/uzbl-core.c
+++ b/uzbl-core.c
@@ -345,6 +345,9 @@ str_replace (const char* search, const char* replace, const char* string) {
gchar **buf;
char *ret;
+ if(!string)
+ return NULL;
+
buf = g_strsplit (string, search, -1);
ret = g_strjoinv (replace, buf);
g_strfreev(buf);
@@ -434,8 +437,10 @@ parseenv (gchar* string) {
gchar* tmpstr = NULL, * out;
int i = 0;
- out = g_strdup(string);
+ if(!string)
+ return NULL;
+ out = g_strdup(string);
while (environ[i] != NULL) {
gchar** env = g_strsplit (environ[i], "=", 2);
gchar* envname = g_strconcat ("$", env[0], NULL);
@@ -669,6 +674,10 @@ file_exists (const char * filename) {
void
set_var(WebKitWebView *page, GArray *argv, GString *result) {
(void) page; (void) result;
+
+ if(!argv_idx(argv, 0))
+ return;
+
gchar **split = g_strsplit(argv_idx(argv, 0), "=", 2);
if (split[0] != NULL) {
gchar *value = parseenv(split[1] ? g_strchug(split[1]) : " ");
@@ -683,8 +692,11 @@ add_to_menu(GArray *argv, guint context) {
GUI *g = &uzbl.gui;
MenuItem *m;
gchar *item_cmd = NULL;
- gchar **split = g_strsplit(argv_idx(argv, 0), "=", 2);
+ if(!argv_idx(argv, 0))
+ return;
+
+ gchar **split = g_strsplit(argv_idx(argv, 0), "=", 2);
if(!g->menu_items)
g->menu_items = g_ptr_array_new();