diff options
author | Florian Pritz <bluewind@xssn.at> | 2010-08-17 11:35:50 +0200 |
---|---|---|
committer | Florian Pritz <bluewind@xssn.at> | 2010-08-17 11:35:50 +0200 |
commit | 6b3a47d512ea51ffc1c7749de6939160641a1280 (patch) | |
tree | e20c3ddd3b8066aa852a2ce64a15c08938ee99ba | |
parent | 1db8078f981fe2898b6702d10b4a35f21ab072fb (diff) | |
download | bin-6b3a47d512ea51ffc1c7749de6939160641a1280.tar.gz bin-6b3a47d512ea51ffc1c7749de6939160641a1280.tar.xz |
fb: catch errors and exit correctly
Signed-off-by: Florian Pritz <bluewind@xssn.at>
-rwxr-xr-x | fb | 26 |
1 files changed, 20 insertions, 6 deletions
@@ -11,7 +11,7 @@ # Optional: xclip #---------------------------------------------------- -VERSION="0.6.6.1" +VERSION="0.6.7" DELETE= EXTENSION="" @@ -20,6 +20,7 @@ PASTEBIN="http://paste.xinu.at" WARNSIZE=10485760 USERAGENT="fb-client/$VERSION" CLIPBOARD="" +EXITCODE=0 do_upload() { local EXTRA="" @@ -31,10 +32,14 @@ do_upload() { WARNSIZE=`curl -s "$PASTEBIN/file/get_max_size"` if [ `stat -c %s "$1"` -gt "$WARNSIZE" ]; then echo "Warning: Your upload is too big and would be rejected. Maximum size is: $WARNSIZE bytes. Skipping..." >&2 - return + EXITCODE=1 + return 1 fi fi - curl -# -n -L -A $USERAGENT $EXTRA -F "file=@$1" "$PASTEBIN/file/do_upload" > $TMPFILE + if ! curl -# -n -L -A $USERAGENT $EXTRA -F "file=@$1" "$PASTEBIN/file/do_upload" > $TMPFILE; then + EXITCODE=1 + return 1 + fi sed '$d' $TMPFILE >&2 URL=`tail -1 $TMPFILE` echo $URL @@ -85,12 +90,19 @@ if [ $# -eq 0 ]; then else for i in "$@"; do if [ "$DELETE" ]; then - curl -n -L -A $USERAGENT "$PASTEBIN/file/delete/$i" + if ! curl -n -L -A $USERAGENT "$PASTEBIN/file/delete/$i"; then + EXITCODE=1 + fi elif [ "$GET" ]; then - curl -s -o - -A $USERAGENT "$PASTEBIN/$i" + if ! curl -s -o - -A $USERAGENT "$PASTEBIN/$i"; then + EXITCODE=1 + fi elif echo "$i" | grep -qE "^(f|ht)tp(s)?://.+"; then cd $TMPDIR - curl -# -A $USERAGENT -O "$i" + if ! curl -# -A $USERAGENT -O "$i"; then + EXITCODE=1 + continue + fi for f in *; do do_upload "$f" && rm -f "$f" done @@ -101,3 +113,5 @@ else fi [ "`which xclip 2>/dev/null`" ] && echo -n $CLIPBOARD | nohup xclip >/dev/null 2>&1 + +exit $EXITCODE |