Thread (19 messages) flat view 19 messages, 7 authors, 2016-06-15

Re: [PATCH 1/3] traverse_trees(): allow pruning with pathspec

From: Michael Haggerty <hidden>
Date: 2016-06-15 22:52:13

Possibly related (same subject, not in this thread)

On 10/09/2011 11:35 PM, Nguyen Thai Ngoc Duy wrote:
On Mon, Oct 10, 2011 at 2:39 AM, Michael Haggerty [off-list ref] wrote:
quoted
On 08/29/2011 11:33 PM, Junio C Hamano wrote:
quoted
diff --git a/tree-walk.c b/tree-walk.c
index 33f749e..808bb55 100644
--- a/tree-walk.c
+++ b/tree-walk.c
[...]
@@ -376,16 +396,22 @@ int traverse_trees(int n, struct tree_desc *t, struct traverse_info *info)
                      mask |= 1ul << i;
                      if (S_ISDIR(entry[i].mode))
                              dirmask |= 1ul << i;
+                     e = &entry[i];
              }
              if (!mask)
                      break;
-             ret = info->fn(n, mask, dirmask, entry, info);
-             if (ret < 0) {
-                     error = ret;
-                     if (!info->show_all_errors)
-                             break;
+             interesting = prune_traversal(e, info, &base, interesting);
According to gcc 4.2.4 (though, strangely, not gcc 4.4.3):
I checked this a bit more carefully.  gcc 4.2.4 emits a warning when the
-O1 or -O2 optimization levels are used, but not with -O0.  gcc 4.4.3
does not emit a warning regardless of optimization level.
quoted
tree-walk.c: In function ‘traverse_trees’:
tree-walk.c:347: warning: ‘e’ may be used uninitialized in this function
False alarm. If e is not initialized in the for loop, mask would be
zero and therefore prune_traversal(e, info, &base, interesting), which
would use uninitialized "e", would never be called.
That's good to know.  Still, it might be worthwhile to initialize the
variable explicitly to avoid future confusion.

Michael

-- 
Michael Haggerty
mhagger@alum.mit.edu
http://softwareswirl.blogspot.com/
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help