summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-09-01 09:24:26 +0000
committerDana Jansens <danakj@orodu.net>2003-09-01 09:24:26 +0000
commit416ee379eaf1b9c0fb98e0367bd0e19d67d51bbb (patch)
treefdb1ecfe2b5355ee6f75587a004f118fc83c355e
parentb90b0beaf930deb96e47eddab7b971d686052ea1 (diff)
make ob_expand_tilde expand all tildes in the string
-rw-r--r--openbox/openbox.c13
1 files changed, 9 insertions, 4 deletions
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;
}