]> Skullheadx's Git Forge - surf.git/commitdiff
Fix atom value parsing in SETPROP
authorQuentin Rameau <quinq+hackers@fifth.space>
Tue, 13 Oct 2015 11:32:09 +0000 (13:32 +0200)
committerChristoph Lohmann <20h@r-36.net>
Tue, 13 Oct 2015 12:28:09 +0000 (14:28 +0200)
xprop(1) encloses the returned atom string value in double quotes while
it doesn't when the value is unset. Original simple parsing would fail
and parse the atom name instead of getting an empty value.

Signed-off-by: Christoph Lohmann <20h@r-36.net>
config.def.h

index 1eb9566c9fd2f6ad9d8705c36e227c233a63cb8c..5245129f8a76ad79e3b4e24ad80753240eca416a 100644 (file)
@@ -37,7 +37,9 @@ static Bool allowgeolocation      = TRUE;
 
 #define SETPROP(p, q) { \
        .v = (char *[]){ "/bin/sh", "-c", \
-               "prop=\"`xprop -id $2 $0 | cut -d '\"' -f 2 | xargs -0 printf %b | dmenu`\" &&" \
+               "prop=\"`xprop -id $2 $0 " \
+               "| sed \"s/^$0(STRING) = \\(\\\\\"\\?\\)\\(.*\\)\\1$/\\2/\" " \
+               "| xargs -0 printf %b | dmenu`\" &&" \
                "xprop -id $2 -f $1 8s -set $1 \"$prop\"", \
                p, q, winid, NULL \
        } \