Fix argument checking and file path schema.

This commit is contained in:
Krystian Bacławski 2013-05-19 21:38:00 +02:00
parent dc0a3308cb
commit e08e873281
1 changed files with 4 additions and 4 deletions

View File

@ -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}`