SHA256
1
0
forked from pool/xdg-utils
xdg-utils/CVE-2008-0386.diff

64 lines
1.7 KiB
Diff

--- scripts/xdg-open
+++ scripts/xdg-open
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
#---------------------------------------------
# xdg-open
#
@@ -382,7 +382,8 @@ open_generic()
for browser in $BROWSER; do
if [ x"$browser" != x"" ]; then
- browser_with_arg=`echo "$browser" | sed s#%s#"$1"#`
+ IFS=' '
+ browser_with_arg=${browser//'%s'/"$1"}
if [ x"$browser_with_arg" = x"$browser" ]; then "$browser" "$1";
else $browser_with_arg;
--- scripts/xdg-email
+++ scripts/xdg-email
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/bin/bash
#---------------------------------------------
# xdg-email
#
@@ -435,7 +435,8 @@ open_generic()
for browser in $BROWSER; do
if [ x"$browser" != x"" ]; then
- browser_with_arg=`echo "$browser" | sed s#%s#"$1"#`
+ IFS=' '
+ browser_with_arg=${browser//'%s'/"$1"}
if [ x"$browser_with_arg" = x"$browser" ]; then "$browser" "$1";
else $browser_with_arg;
@@ -495,7 +496,7 @@ while [ $# -gt 0 ] ; do
exit_failure_syntax "email address argument missing for --to"
fi
url_encode "$1"
- options="${options}to=${result}&"
+ options="${options}to=${result}&"
shift
;;
@@ -531,7 +532,7 @@ while [ $# -gt 0 ] ; do
exit_failure_syntax "text argument missing for --body option"
fi
url_encode "$1"
- options="${options}body=${result}&"
+ options="${options}body=${result}&"
shift
;;
@@ -575,7 +576,7 @@ done
if [ -z "${mailto}" ] ; then
# TO address is optional
- mailto="mailto:?"
+ mailto="mailto:?"
fi
case $mailto in