From: David Barr Date: Thu, 31 May 2012 14:41:25 +0000 (+1000) Subject: vcs-svn: avoid self-assignment in dummy initialization of pre_off X-Git-Tag: v1.7.12-rc0~41^2~7 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=4a5de8dd79879d737e172a5d7e4196c6bf99e57d;p=git.git vcs-svn: avoid self-assignment in dummy initialization of pre_off Without this change, clang complains: vcs-svn/svndiff.c:298:3: warning: Assigned value is garbage or undefined off_t pre_off = pre_off; /* stupid GCC... */ ^ ~~~~~~~ This code uses an old and common idiom for suppressing an "uninitialized variable" warning, and clang is wrong to warn about it. The idiom tells the compiler to leave the variable uninitialized, which saves a few bytes of code size, and, more importantly, allows valgrind to check at runtime that the variable is properly initialized by the time it is used. But MSVC and clang do not know that idiom, so let's avoid it in vcs-svn/ code. Initialize pre_off to -1, a recognizably meaningless value, to allow future code changes that cause pre_off to be used before it is initialized to be caught early. Signed-off-by: David Barr Signed-off-by: Jonathan Nieder --- diff --git a/vcs-svn/svndiff.c b/vcs-svn/svndiff.c index 1647c1a78..c89d9623f 100644 --- a/vcs-svn/svndiff.c +++ b/vcs-svn/svndiff.c @@ -295,7 +295,7 @@ int svndiff0_apply(struct line_buffer *delta, off_t delta_len, if (read_magic(delta, &delta_len)) return -1; while (delta_len) { /* For each window: */ - off_t pre_off = pre_off; /* stupid GCC... */ + off_t pre_off = -1; size_t pre_len; if (read_offset(delta, &pre_off, &delta_len) ||