* [PATCH 0/2] Fix uninitialized memory read and comment typo @ 2010-09-16 20:53 Pat Notz 2010-09-16 20:53 ` [PATCH 1/2] dir.c: fix uninitialized memory warning Pat Notz 2010-09-16 20:53 ` [PATCH 2/2] strbuf.h: fix comment typo Pat Notz 0 siblings, 2 replies; 9+ messages in thread From: Pat Notz @ 2010-09-16 20:53 UTC (permalink / raw) To: git One-liner corrections. Pat Notz (2): dir.c: fix uninitialized memory warning strbuf.h: fix comment typo dir.c | 2 +- strbuf.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) -- 1.7.2.3 ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 1/2] dir.c: fix uninitialized memory warning 2010-09-16 20:53 [PATCH 0/2] Fix uninitialized memory read and comment typo Pat Notz @ 2010-09-16 20:53 ` Pat Notz 2010-09-16 23:13 ` Ævar Arnfjörð Bjarmason 2010-09-16 20:53 ` [PATCH 2/2] strbuf.h: fix comment typo Pat Notz 1 sibling, 1 reply; 9+ messages in thread From: Pat Notz @ 2010-09-16 20:53 UTC (permalink / raw) To: git GCC 4.4.4 on MacOS warns about potential use of uninitialized memory. Signed-off-by: Pat Notz <patnotz@gmail.com> --- dir.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/dir.c b/dir.c index 133f472..d1e5e5e 100644 --- a/dir.c +++ b/dir.c @@ -232,7 +232,7 @@ int add_excludes_from_file_to_list(const char *fname, { struct stat st; int fd, i; - size_t size; + size_t size = 0; char *buf, *entry; fd = open(fname, O_RDONLY); -- 1.7.2.3 ^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] dir.c: fix uninitialized memory warning 2010-09-16 20:53 ` [PATCH 1/2] dir.c: fix uninitialized memory warning Pat Notz @ 2010-09-16 23:13 ` Ævar Arnfjörð Bjarmason 2010-09-16 23:26 ` Nguyen Thai Ngoc Duy 0 siblings, 1 reply; 9+ messages in thread From: Ævar Arnfjörð Bjarmason @ 2010-09-16 23:13 UTC (permalink / raw) To: Pat Notz; +Cc: git, Nguyễn Thái Ngọc Duy On Thu, Sep 16, 2010 at 20:53, Pat Notz <patnotz@gmail.com> wrote: > GCC 4.4.4 on MacOS warns about potential use of uninitialized memory. > > Signed-off-by: Pat Notz <patnotz@gmail.com> > --- > dir.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/dir.c b/dir.c > index 133f472..d1e5e5e 100644 > --- a/dir.c > +++ b/dir.c > @@ -232,7 +232,7 @@ int add_excludes_from_file_to_list(const char *fname, > { > struct stat st; > int fd, i; > - size_t size; > + size_t size = 0; > char *buf, *entry; What does the GCC warning say exactl? I.e. what line does it complain about? Maybe this is a logic error introduced in v1.7.0-rc0~25^2? I haven't checked. ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] dir.c: fix uninitialized memory warning 2010-09-16 23:13 ` Ævar Arnfjörð Bjarmason @ 2010-09-16 23:26 ` Nguyen Thai Ngoc Duy 2010-09-17 0:32 ` Pat Notz 0 siblings, 1 reply; 9+ messages in thread From: Nguyen Thai Ngoc Duy @ 2010-09-16 23:26 UTC (permalink / raw) To: Ævar Arnfjörð Bjarmason; +Cc: Pat Notz, git 2010/9/17 Ævar Arnfjörð Bjarmason <avarab@gmail.com>: > On Thu, Sep 16, 2010 at 20:53, Pat Notz <patnotz@gmail.com> wrote: >> GCC 4.4.4 on MacOS warns about potential use of uninitialized memory. >> >> Signed-off-by: Pat Notz <patnotz@gmail.com> >> --- >> dir.c | 2 +- >> 1 files changed, 1 insertions(+), 1 deletions(-) >> >> diff --git a/dir.c b/dir.c >> index 133f472..d1e5e5e 100644 >> --- a/dir.c >> +++ b/dir.c >> @@ -232,7 +232,7 @@ int add_excludes_from_file_to_list(const char *fname, >> { >> struct stat st; >> int fd, i; >> - size_t size; >> + size_t size = 0; >> char *buf, *entry; > > What does the GCC warning say exactl? I.e. what line does it complain > about? > > Maybe this is a logic error introduced in v1.7.0-rc0~25^2? I haven't > checked. I don't see any case that "size" can be used uninitialized. Maybe the compiler was confused by if (!check_index || (buf = read_skip_worktree_file_from_index(fname, &size)) == NULL) return -1; I wouldn't hurt though to initialize it early, even just to stop the compiler from complaining. -- Duy ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] dir.c: fix uninitialized memory warning 2010-09-16 23:26 ` Nguyen Thai Ngoc Duy @ 2010-09-17 0:32 ` Pat Notz 2010-09-17 1:04 ` Nguyen Thai Ngoc Duy 0 siblings, 1 reply; 9+ messages in thread From: Pat Notz @ 2010-09-17 0:32 UTC (permalink / raw) To: Nguyen Thai Ngoc Duy; +Cc: Ævar Arnfjörð Bjarmason, git On Thu, Sep 16, 2010 at 5:26 PM, Nguyen Thai Ngoc Duy <pclouds@gmail.com> wrote: > 2010/9/17 Ævar Arnfjörð Bjarmason <avarab@gmail.com>: >> On Thu, Sep 16, 2010 at 20:53, Pat Notz <patnotz@gmail.com> wrote: >>> GCC 4.4.4 on MacOS warns about potential use of uninitialized memory. >>> >>> Signed-off-by: Pat Notz <patnotz@gmail.com> >>> --- >>> dir.c | 2 +- >>> 1 files changed, 1 insertions(+), 1 deletions(-) >>> >>> diff --git a/dir.c b/dir.c >>> index 133f472..d1e5e5e 100644 >>> --- a/dir.c >>> +++ b/dir.c >>> @@ -232,7 +232,7 @@ int add_excludes_from_file_to_list(const char *fname, >>> { >>> struct stat st; >>> int fd, i; >>> - size_t size; >>> + size_t size = 0; >>> char *buf, *entry; >> >> What does the GCC warning say exactl? I.e. what line does it complain >> about? Here's the output: make V=1 -j2 all gcc -o dir.o -c -g -O2 -Wall -I. -I/opt/local/include -DUSE_ST_TIMESPEC -DSHA1_HEADER='<openssl/sha.h>' -DNO_MEMMEM dir.c dir.c: In function 'add_excludes_from_file_to_list': dir.c:235: warning: 'size' may be used uninitialized in this function >> >> Maybe this is a logic error introduced in v1.7.0-rc0~25^2? I haven't >> checked. > > I don't see any case that "size" can be used uninitialized. Maybe the > compiler was confused by > > if (!check_index || > (buf = read_skip_worktree_file_from_index(fname, &size)) == NULL) > return -1; > No, line 245: if(size==0) > I wouldn't hurt though to initialize it early, even just to stop the > compiler from complaining. > -- > Duy > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] dir.c: fix uninitialized memory warning 2010-09-17 0:32 ` Pat Notz @ 2010-09-17 1:04 ` Nguyen Thai Ngoc Duy 2010-09-17 1:13 ` Pat Notz 0 siblings, 1 reply; 9+ messages in thread From: Nguyen Thai Ngoc Duy @ 2010-09-17 1:04 UTC (permalink / raw) To: Pat Notz; +Cc: Ævar Arnfjörð Bjarmason, git On Fri, Sep 17, 2010 at 10:32 AM, Pat Notz <patnotz@gmail.com> wrote: >> I don't see any case that "size" can be used uninitialized. Maybe the >> compiler was confused by >> >> if (!check_index || >> (buf = read_skip_worktree_file_from_index(fname, &size)) == NULL) >> return -1; >> > > No, line 245: if(size==0) The only chance for that line to be executed is read_skip_*() is executed and returns non-NULL buf. read_skip*() returns a non-NULL buffer at the end of function and does set size right before returning. To me it looks like a false alarm. But again, no objection to the patch. -- Duy ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] dir.c: fix uninitialized memory warning 2010-09-17 1:04 ` Nguyen Thai Ngoc Duy @ 2010-09-17 1:13 ` Pat Notz 2010-09-17 17:23 ` Pat Notz 0 siblings, 1 reply; 9+ messages in thread From: Pat Notz @ 2010-09-17 1:13 UTC (permalink / raw) To: Nguyen Thai Ngoc Duy; +Cc: Ævar Arnfjörð Bjarmason, git On Thu, Sep 16, 2010 at 7:04 PM, Nguyen Thai Ngoc Duy <pclouds@gmail.com> wrote: > On Fri, Sep 17, 2010 at 10:32 AM, Pat Notz <patnotz@gmail.com> wrote: >>> I don't see any case that "size" can be used uninitialized. Maybe the >>> compiler was confused by >>> >>> if (!check_index || >>> (buf = read_skip_worktree_file_from_index(fname, &size)) == NULL) >>> return -1; >>> >> >> No, line 245: if(size==0) > > The only chance for that line to be executed is read_skip_*() is > executed and returns non-NULL buf. read_skip*() returns a non-NULL > buffer at the end of function and does set size right before > returning. > > To me it looks like a false alarm. But again, no objection to the patch. I agree that it's a false alarm which is why I wasn't too interested in looking into it very deeply. Just looking to keep the code warning free is all. > -- > Duy > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH 1/2] dir.c: fix uninitialized memory warning 2010-09-17 1:13 ` Pat Notz @ 2010-09-17 17:23 ` Pat Notz 0 siblings, 0 replies; 9+ messages in thread From: Pat Notz @ 2010-09-17 17:23 UTC (permalink / raw) To: Nguyen Thai Ngoc Duy; +Cc: Ævar Arnfjörð Bjarmason, git For anyone who care, this warning was actually emitted by the version of GCC that ships with MacOS 10.5: i686-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5493). GCC 4.4.4 does *not* git this warning. Sorry for the confusion, my IDE was using a different $PATH than my shell. On Thu, Sep 16, 2010 at 7:13 PM, Pat Notz <patnotz@gmail.com> wrote: > On Thu, Sep 16, 2010 at 7:04 PM, Nguyen Thai Ngoc Duy <pclouds@gmail.com> wrote: >> On Fri, Sep 17, 2010 at 10:32 AM, Pat Notz <patnotz@gmail.com> wrote: >>>> I don't see any case that "size" can be used uninitialized. Maybe the >>>> compiler was confused by >>>> >>>> if (!check_index || >>>> (buf = read_skip_worktree_file_from_index(fname, &size)) == NULL) >>>> return -1; >>>> >>> >>> No, line 245: if(size==0) >> >> The only chance for that line to be executed is read_skip_*() is >> executed and returns non-NULL buf. read_skip*() returns a non-NULL >> buffer at the end of function and does set size right before >> returning. >> >> To me it looks like a false alarm. But again, no objection to the patch. > > I agree that it's a false alarm which is why I wasn't too interested > in looking into it very deeply. Just looking to keep the code warning > free is all. > >> -- >> Duy >> > ^ permalink raw reply [flat|nested] 9+ messages in thread
* [PATCH 2/2] strbuf.h: fix comment typo 2010-09-16 20:53 [PATCH 0/2] Fix uninitialized memory read and comment typo Pat Notz 2010-09-16 20:53 ` [PATCH 1/2] dir.c: fix uninitialized memory warning Pat Notz @ 2010-09-16 20:53 ` Pat Notz 1 sibling, 0 replies; 9+ messages in thread From: Pat Notz @ 2010-09-16 20:53 UTC (permalink / raw) To: git Signed-off-by: Pat Notz <patnotz@gmail.com> --- strbuf.h | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/strbuf.h b/strbuf.h index fac2dbc..675a91f 100644 --- a/strbuf.h +++ b/strbuf.h @@ -16,7 +16,7 @@ * * 2. the ->buf member is a byte array that has at least ->len + 1 bytes * allocated. The extra byte is used to store a '\0', allowing the ->buf - * member to be a valid C-string. Every strbuf function ensure this + * member to be a valid C-string. Every strbuf function ensures this * invariant is preserved. * * Note that it is OK to "play" with the buffer directly if you work it -- 1.7.2.3 ^ permalink raw reply related [flat|nested] 9+ messages in thread
end of thread, other threads:[~2010-09-17 17:23 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-09-16 20:53 [PATCH 0/2] Fix uninitialized memory read and comment typo Pat Notz 2010-09-16 20:53 ` [PATCH 1/2] dir.c: fix uninitialized memory warning Pat Notz 2010-09-16 23:13 ` Ævar Arnfjörð Bjarmason 2010-09-16 23:26 ` Nguyen Thai Ngoc Duy 2010-09-17 0:32 ` Pat Notz 2010-09-17 1:04 ` Nguyen Thai Ngoc Duy 2010-09-17 1:13 ` Pat Notz 2010-09-17 17:23 ` Pat Notz 2010-09-16 20:53 ` [PATCH 2/2] strbuf.h: fix comment typo Pat Notz
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).