X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=openbox%2Fopenbox.c;h=4786ecc40ba4e6884ed79f0e2811bfaa5e3ff999;hb=8419fe8a112986faeb1380329d29f53d198c6fbb;hp=21f3a60604a6a0ba7854768668e069396feab506;hpb=b543af60b3b625f978bec0eacc7da31cd9d347f6;p=chaz%2Fopenbox diff --git a/openbox/openbox.c b/openbox/openbox.c index 21f3a606..4786ecc4 100644 --- a/openbox/openbox.c +++ b/openbox/openbox.c @@ -417,10 +417,15 @@ ObState ob_state() gchar *ob_expand_tilde(const gchar *f) { + gchar **spl; + gchar *ret, *mid; + if (!f) return NULL; - else if (f[0] != '~') - return g_strdup(f); - else - return g_strconcat(g_get_home_dir(), f+1, NULL); + spl = g_strsplit(f, "~", 0); + mid = g_strconcat(g_get_home_dir(), G_DIR_SEPARATOR_S, NULL); + ret = g_strjoinv(mid, spl); + g_free(mid); + g_strfreev(spl); + return ret; }