On Wed, May 27, 2009 at 9:19 AM, Junio C Hamano <gitster@xxxxxxxxx> wrote: > Giuseppe Bilotta <giuseppe.bilotta@xxxxxxxxx> writes: > >> + # set the patch format appropriately >> + patch_format=stgit >> + # now handle the actual StGIT patches >> + split_patches "$@" > > Can an stgit patch file (or the leading pathname for that matter) have IFS > character in its name? StGIT sanitizes filenames in a way similar to what format-patch does. >> + ;; >> + stgit) >> + this=0 >> + for stgit in "$@" >> + do >> + this=`expr "$this" + 1` >> + msgnum=`printf "%0${prec}d" $this` >> + touch "$dotest/$msgnum" > > Portability tip from an old timer: do not create a new empty file with > "touch" (only use that command to update the timestamp of an existing > file). > > Instead say > > >"$dotest/$msgnum" > >> + # Awk version of StGIT parse_patch. The first nonemptyline >> + # not starting with Author, From or Date is the >> + # subject, and the body starts with the next nonempty >> + # line not starting with Author, From or Date >> + awk 'BEGIN { subject=0 } >> + { >> + if (subject > 1) >> + print ; >> + else if (/^$/) next ; >> + else if (/^Author:/) print sub("Author", "From"), $ORS ; > > Can any token that match Author other than the initial "Author: " appear > on this line? Irrelevant, sub only substitutes the first hit so only the initial Author: is replaced. > Since we rely on Perl but not awk in core-ish part of the scripted > Porcelains, it might be a good idea to write this in Perl as well. By 'as well' you mean in case awk is missing, and have both, or by only keeping a perl version? -- Giuseppe "Oblomov" Bilotta -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html