X-Git-Url: https://git.xinqibao.xyz/dmenu.git/blobdiff_plain/5162d1b37adc51d75f058be1244f38a72117a087..1f11faf7b505ac94bee1242e90dbd3ae37a086b4:/dmenu_run

diff --git a/dmenu_run b/dmenu_run
index 3279aa8..052e51b 100755
--- a/dmenu_run
+++ b/dmenu_run
@@ -3,13 +3,13 @@ cachedir=${XDG_CACHE_HOME:-"$HOME/.cache"}
 if [ -d "$cachedir" ]; then
 	cache=$cachedir/dmenu_run
 else
-	cache=$HOME/.dmenu_cache
+	cache=$HOME/.dmenu_cache # if no xdg dir, fall back to dotfile in ~
 fi
 (
 	IFS=:
-	if [ "`ls -dt $PATH "$cache" | head -n 1`" != "$cache" ]; then
-		lsx $PATH | sort -u | tee "$cache" | dmenu "$@"
+	if stest -dqr -n "$cache" $PATH; then
+		stest -flx $PATH | sort -u | tee "$cache" | dmenu "$@"
 	else
 		dmenu "$@" < "$cache"
 	fi
-) | exec sh
+) | ${SHELL:-"/bin/sh"} &