Merge branch 'nd/pack-ofs-4gb-limit' into maint
[gitweb.git] / builtin / grep.c
index 111b6f6cf1a61b0fb481101fcdc5a9f3f48c4650..ae738312aadd48e74497368917e82f221f3abe45 100644 (file)
@@ -386,7 +386,7 @@ static int grep_cache(struct grep_opt *opt, const struct pathspec *pathspec, int
 
        for (nr = 0; nr < active_nr; nr++) {
                const struct cache_entry *ce = active_cache[nr];
-               if (!S_ISREG(ce->ce_mode) || ce_intent_to_add(ce))
+               if (!S_ISREG(ce->ce_mode))
                        continue;
                if (!ce_path_match(ce, pathspec, NULL))
                        continue;
@@ -396,7 +396,7 @@ static int grep_cache(struct grep_opt *opt, const struct pathspec *pathspec, int
                 * cache version instead
                 */
                if (cached || (ce->ce_flags & CE_VALID) || ce_skip_worktree(ce)) {
-                       if (ce_stage(ce))
+                       if (ce_stage(ce) || ce_intent_to_add(ce))
                                continue;
                        hit |= grep_sha1(opt, ce->sha1, ce->name, 0, ce->name);
                }
@@ -438,7 +438,7 @@ static int grep_tree(struct grep_opt *opt, const struct pathspec *pathspec,
                strbuf_add(base, entry.path, te_len);
 
                if (S_ISREG(entry.mode)) {
-                       hit |= grep_sha1(opt, entry.sha1, base->buf, tn_len,
+                       hit |= grep_sha1(opt, entry.oid->hash, base->buf, tn_len,
                                         check_attr ? base->buf + tn_len : NULL);
                }
                else if (S_ISDIR(entry.mode)) {
@@ -447,10 +447,10 @@ static int grep_tree(struct grep_opt *opt, const struct pathspec *pathspec,
                        void *data;
                        unsigned long size;
 
-                       data = lock_and_read_sha1_file(entry.sha1, &type, &size);
+                       data = lock_and_read_sha1_file(entry.oid->hash, &type, &size);
                        if (!data)
                                die(_("unable to read tree (%s)"),
-                                   sha1_to_hex(entry.sha1));
+                                   oid_to_hex(entry.oid));
 
                        strbuf_addch(base, '/');
                        init_tree_desc(&sub, data, size);