Module Name:    src
Committed By:   nia
Date:           Fri Jul 22 17:06:46 UTC 2022

Modified Files:
        src/external/mit/ctwm/libexec: ctwm_app_menu

Log Message:
ctwm_app_menu: Work around "emacs being installed results in the
generated ctwmrc containing invalid syntax" problem. Emacs installs
a desktop file called "emacsclient" that contains "doublequotes"
in its exec string. Pending a better solution for dumping escaped
shell lines into the config file, hide or sanitize desktop entires
that might mess up the internal ctwmrc quoting rules.


To generate a diff of this commit:
cvs rdiff -u -r1.4 -r1.5 src/external/mit/ctwm/libexec/ctwm_app_menu

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/external/mit/ctwm/libexec/ctwm_app_menu
diff -u src/external/mit/ctwm/libexec/ctwm_app_menu:1.4 src/external/mit/ctwm/libexec/ctwm_app_menu:1.5
--- src/external/mit/ctwm/libexec/ctwm_app_menu:1.4	Mon May  9 15:05:18 2022
+++ src/external/mit/ctwm/libexec/ctwm_app_menu	Fri Jul 22 17:06:46 2022
@@ -1,5 +1,5 @@
 #!/bin/sh
-#	$NetBSD: ctwm_app_menu,v 1.4 2022/05/09 15:05:18 nia Exp $
+#	$NetBSD: ctwm_app_menu,v 1.5 2022/07/22 17:06:46 nia Exp $
 #
 # Copyright (c) 2020-2022 The NetBSD Foundation, Inc.
 # All rights reserved.
@@ -98,13 +98,18 @@ do_category()
 				Name=*)
 					if ! [ -n "$name" ];
 					then
-						name=$(printf '%s' "$line" | cut -c6- | tr -d '\r')
+						name=$(printf '%s' "$line" | cut -c6- | tr -d '\r' | tr -d '"')
 					fi
 				;;
 				Exec=*)
 					if ! [ -n "$exec" ];
 					then
 						exec=$(printf '%s' "$line" | cut -c6- | sed -e 's/ %.*//g' | tr -d '\r')
+						if printf '%s' "$exec" | grep -q '"'; then
+							# results in malformed config file, better way
+							# to handle this...?
+							nodisplay="true"
+						fi
 					fi
 				;;
 				Terminal=true)

Reply via email to