surf

Simple browser by suckless.org (fork)
git clone git://git.ckyln.com/surf.git
Log | Files | Refs | README | LICENSE

commit 1554354f1689c2205a809e23d29c9e21d38e0be5
parent 3c2acda0b745ffd887a99f8f32b64064665fa553
Author: Quentin Rameau <quinq+hackers@fifth.space>
Date:   Tue, 13 Oct 2015 13:32:09 +0200

Fix atom value parsing in SETPROP

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>

Diffstat:
Mconfig.def.h | 4+++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/config.def.h b/config.def.h @@ -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 \ } \