From e08e8732819449e007c128afd1988cb059e6d231 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krystian=20Bac=C5=82awski?= Date: Sun, 19 May 2013 21:38:00 +0200 Subject: [PATCH] Fix argument checking and file path schema. --- scripts/split-diff.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/split-diff.sh b/scripts/split-diff.sh index 16872ca..27e31a3 100755 --- a/scripts/split-diff.sh +++ b/scripts/split-diff.sh @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/sh -e # 1) Splits a patch file into smaller patches - one for each file. # 2) Build a directory structure correspoding to paths in patch headers. @@ -6,14 +6,14 @@ # 4) If a patch introduces a completely new file, it will be put into directory # as a regular file and not diff file. -[ $# == 1 ] || echo "Error: expected single patch file as an argument." -[ -f $1 ] || echo "Error: no such file '$1'." +[ $# == 1 ] || { echo "Error: expected single patch file as an argument."; false; } +[ -f $1 ] || { echo "Error: no such file '$1'."; false; } path="$1" splitdiff -a "${path}" >/dev/null -for p in ${path}.part???; do +for p in ${path}.part*; do file=`sed -E -n -e '1s/---[[:space:]]+([^[:space:]]+).*/\1/p' ${p}` origsize=`sed -E -n -e '3s/@@ ([^[:space:]]+) .*/\1/p' ${p}` mkdir -p `dirname ${file}`