Re: [BUG] Empty reflogs and "git log -g"

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

 



Johannes Schindelin <Johannes.Schindelin@xxxxxx> writes:

> On Thu, 8 Feb 2007, Jakub Narebski wrote:
>
>> StGIT used to produce no reflog messages; I don't know if this has 
>> improved. But you can have old reflog entries with empty messages; git 
>> log -g should deal with them IMHO.
>
> I just tried. An empty string is not enough. The tab before the message 
> has to be lacking, too.
>
> Here's a small patch, if you have to have it.

I think this is necessary for v1.5.0.  I'd appreciate a properly
signed-off log message.

>
> ---
>
>  refs.c |    8 +++++---
>  1 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/refs.c b/refs.c
> index 7e07fc4..ba5bd2d 100644
> --- a/refs.c
> +++ b/refs.c
> @@ -1189,12 +1189,14 @@ int for_each_reflog_ent(const char *ref, each_reflog_ent_fn fn, void *cb_data)
>  		    !message || message[0] != ' ' ||
>  		    (message[1] != '+' && message[1] != '-') ||
>  		    !isdigit(message[2]) || !isdigit(message[3]) ||
> -		    !isdigit(message[4]) || !isdigit(message[5]) ||
> -		    message[6] != '\t')
> +		    !isdigit(message[4]) || !isdigit(message[5]))
>  			continue; /* corrupt? */
>  		email_end[1] = '\0';
>  		tz = strtol(message + 1, NULL, 10);
> -		message += 7;
> +		if (message[6] != '\t')
> +			message += 6;
> +		else
> +			message += 7;
>  		ret = fn(osha1, nsha1, buf+82, timestamp, tz, message, cb_data);
>  		if (ret)
>  			break;

-
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]