reassign 556428 sensible-tools retitle 556428 sensible-browser passes empty argv[1] when called without URL tags 556428 patch thanks
The behaviour appears when iceweasel (or x-www-browser) is called
with "" as the first argument. A look into sensible-browser reveals
that it uses a quoted "$URL" to pass the argument. If $URL is
empty, "" will be passed.
Using ${URL:+"$URL"} instead gives the desired behaviour, and quotes
the URL only when it is non-empty.
A better approach might be to handle URL calling with printf like
it's done in the $BROWSER loop.
Curiously, there, $URL is not quoted. Second patch down below, if
you want it.
--- /tmp/sensible-browser 2009-11-26 12:25:46.970150575 +0100
+++ /usr/bin/sensible-browser 2009-11-26 12:28:33.142147405 +0100
@@ -29,20 +29,20 @@
if test -n "$DISPLAY"; then
if test -n "$GNOME_DESKTOP_SESSION_ID"; then
if test -x /usr/bin/gnome-www-browser; then
- exec /usr/bin/gnome-www-browser "$URL"
+ exec /usr/bin/gnome-www-browser ${URL:+"$URL"}
elif test -x /usr/bin/x-www-browser; then
- exec /usr/bin/x-www-browser "$URL"
+ exec /usr/bin/x-www-browser ${URL:+"$URL"}
elif test -x /usr/bin/gnome-terminal && test -x /usr/bin/www-browser;
then
- exec /usr/bin/gnome-terminal -e "/usr/bin/www-browser \"$URL\""
+ exec /usr/bin/gnome-terminal -e "/usr/bin/www-browser
\"${URL:+"$URL"}\""
fi
fi
if test -x /usr/bin/x-www-browser; then
- exec /usr/bin/x-www-browser "$URL"
+ exec /usr/bin/x-www-browser ${URL:+"$URL"}
elif test -x /usr/bin/x-terminal-emulator && test -x /usr/bin/www-browser;
then
- exec /usr/bin/x-terminal-emulator -e /usr/bin/www-browser "$URL"
+ exec /usr/bin/x-terminal-emulator -e /usr/bin/www-browser
${URL:+"$URL"}
fi
elif test -x /usr/bin/www-browser; then
- exec /usr/bin/www-browser "$URL"
+ exec /usr/bin/www-browser ${URL:+"$URL"}
fi
printf "Couldn't find a suitable web browser!\n" >&2
--- /tmp/sensible-browser 2009-11-26 12:25:46.970150575 +0100
+++ /usr/bin/sensible-browser 2009-11-26 12:31:14.458488326 +0100
@@ -15,7 +15,7 @@
:
;;
(*)
- i="$i %s"
+ i="$i \"%s\""
;;
esac
IFS="$OLDIFS"
--
.''`. martin f. krafft <[email protected]> Related projects:
: :' : proud Debian developer http://debiansystem.info
`. `'` http://people.debian.org/~madduck http://vcs-pkg.org
`- Debian - when you have better things to do than fixing systems
digital_signature_gpg.asc
Description: Digital signature (see http://martin-krafft.net/gpg/)

