projects
/
releases.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Introduce --reverse-patch.
[releases.git]
/
deblob-check
diff --git
a/deblob-check
b/deblob-check
index 8c5e97fafd11db78af029dc657ba03cbc4822301..6028e78fe1313db0c4dd099f36c495ca26774247 100755
(executable)
--- a/
deblob-check
+++ b/
deblob-check
@@
-38,6
+38,9
@@
# Specifies the number of consecutive integral or
# character constants that trigger the blob detector.
# Specifies the number of consecutive integral or
# character constants that trigger the blob detector.
+# --reverse-patch: Test the removed parts of a patch, rather than
+# the added ones.
+
# The default sensitivity is 32 constants.
# The sensitivity, if present, must be the first option. The action
# The default sensitivity is 32 constants.
# The sensitivity, if present, must be the first option. The action
@@
-250,6
+253,14
@@
case $1 in
;;
esac
;;
esac
+reverse_patch=false
+case $1 in
+--reverse-patch)
+ reverse_patch=:
+ shift;
+ ;;
+esac
+
test_mode=false
name=deblob-check
test_mode=false
name=deblob-check
@@
-1930,17
+1941,22
@@
check () {
cmd="tar -xf - --to-command='echo \";/*begin \$TAR_FILENAME*/;\"; cat; echo \";/**/;\"; echo \";/*end \$TAR_FILENAME*/;\"'"
;;
*.patch | */patch-* | *.diff)
cmd="tar -xf - --to-command='echo \";/*begin \$TAR_FILENAME*/;\"; cat; echo \";/**/;\"; echo \";/*end \$TAR_FILENAME*/;\"'"
;;
*.patch | */patch-* | *.diff)
- sedpatch='
- /^[-]/d;
- /^\(@@\|+++\) / {
- i\
-;/**/;\
-;/*end patchlet */;\
+ if $reverse_patch; then
+ s=- r=+
+ else
+ s=+ r=-
+ fi
+ sedpatch="
+ /^[$r]/d;
+ /^\\(@@\\|$s$s$s\\) / {
+ i\\
+;/**/;\\
+;/*end patchlet */;\\
;/*begin patchlet */;
;/*begin patchlet */;
- s/^/;\/*/;
- s/
$/*
\/;/;
+ s/^/;\
\
/*/;
+ s/
\$/*\
\/;/;
};
};
- s/^[
+]//;'
+ s/^[
$s]//;"
cmd='sed "$sedpatch"'
;;
*)
cmd='sed "$sedpatch"'
;;
*)