summaryrefslogtreecommitdiff
path: root/dgit
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2017-07-09 14:45:17 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2017-07-09 16:25:53 +0100
commit166121d66d38a3f6584222a03558493c1a23de72 (patch)
tree97190dd6a94a926f4eca4bac43be5c1220f48e93 /dgit
parenta04897e74b24b59ed2a212d967f3698f08fec438 (diff)
dgit: Regularise patch filenames, and defend against funny commit subjects
* Do not specified patch names which look like series filenames * When we invent a filename based on a commit message, add ".patch". Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Diffstat (limited to 'dgit')
-rwxr-xr-xdgit2
1 files changed, 2 insertions, 0 deletions
diff --git a/dgit b/dgit
index 91172da..5197596 100755
--- a/dgit
+++ b/dgit
@@ -5274,6 +5274,7 @@ sub quiltify ($$$$) {
die "contains unexpected slashes\n" if m{//} || m{/$};
die "contains leading punctuation\n" if m{^\W} || m{/\W};
die "contains bad character(s)\n" if m{[^-a-z0-9_.+=~/]}i;
+ die "is series file\n" if m{$series_filename_re}o;
die "too long" if length > 200;
};
return $_ unless $@;
@@ -5312,6 +5313,7 @@ sub quiltify ($$$$) {
$patchname =~ y/-a-z0-9_.+=~//cd;
$patchname =~ s/^\W/x-$&/;
$patchname = substr($patchname,0,40);
+ $patchname .= ".patch";
}
if (!defined $patchdir) {
$patchdir = '';