Re: [GUILT 06/28] Fix and simplify the do_get_patch function.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Mar 21, 2014 at 08:31:44AM +0100, Per Cederqvist wrote:
> When extracting the patch, we only want the actual patches.  We don't
> want the "---" delimiter.  Simplify the extraction by simply deleting
> everything before the first "diff " line.  (Use sed instead of awk to
> simplify the code.)
> 
> Without this patch, "guilt fold" and "guilt push" sometimes fails if
> guilt.diffstat is true.
> 
> Signed-off-by: Per Cederqvist <cederp@xxxxxxxxx>
> ---
>  guilt | 7 +------
>  1 file changed, 1 insertion(+), 6 deletions(-)
> 
> diff --git a/guilt b/guilt
> index 8701481..c59cd0f 100755
> --- a/guilt
> +++ b/guilt
> @@ -332,12 +332,7 @@ do_make_header()
>  # usage: do_get_patch patchfile
>  do_get_patch()
>  {
> -	awk '
> -BEGIN{}
> -/^(diff |---$|--- )/ {patch = 1}
> -patch == 1 {print $0}
> -END{}
> -' < "$1"
> +	sed -n '/^diff /,$p' < "$1"

So, the thought behind this mess was to allow minimal patches to work.  The
'diff' line is *not* required by patch(1)!

Is it a problem if a patch description contains a line that starts with
'diff '?  (The current code has this issue as well.)

For the record, this ambiguity is what's on several occasions made me
consider splitting the header and the patch into separate files.  Yeah, it'd
be messier.  :/

>  }
>  
>  # usage: do_get_header patchfile
> -- 
> 1.8.3.1
> 

-- 
Defenestration n. (formal or joc.):
  The act of removing Windows from your computer in disgust, usually
  followed by the installation of Linux or some other Unix-like operating
  system.
--
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




[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]