2022-09-21 14:17:55 +00:00
|
|
|
diff --git a/Makefile b/Makefile
|
2022-10-01 19:38:58 +00:00
|
|
|
index 6bfb62cbe9..2230b40a9f 100644
|
2022-09-21 14:17:55 +00:00
|
|
|
--- a/Makefile
|
|
|
|
+++ b/Makefile
|
2022-10-01 19:38:58 +00:00
|
|
|
@@ -691,6 +691,11 @@ ETAGS_TARGET = TAGS
|
|
|
|
FUZZ_OBJS += oss-fuzz/fuzz-commit-graph.o
|
|
|
|
FUZZ_OBJS += oss-fuzz/fuzz-pack-headers.o
|
|
|
|
FUZZ_OBJS += oss-fuzz/fuzz-pack-idx.o
|
2022-09-23 18:26:32 +00:00
|
|
|
+FUZZ_OBJS += oss-fuzz/fuzz-command.o
|
2022-09-21 14:17:55 +00:00
|
|
|
+FUZZ_OBJS += oss-fuzz/fuzz-cmd-status.o
|
|
|
|
+FUZZ_OBJS += oss-fuzz/fuzz-cmd-version.o
|
|
|
|
+FUZZ_OBJS += oss-fuzz/fuzz-cmd-diff.o
|
2022-10-01 19:38:58 +00:00
|
|
|
+
|
2022-09-21 14:17:55 +00:00
|
|
|
.PHONY: fuzz-objs
|
|
|
|
fuzz-objs: $(FUZZ_OBJS)
|
2022-09-23 18:26:32 +00:00
|
|
|
|
2022-10-01 19:38:58 +00:00
|
|
|
@@ -1015,6 +1020,7 @@ LIB_OBJS += oid-array.o
|
2022-09-21 14:17:55 +00:00
|
|
|
LIB_OBJS += oidmap.o
|
|
|
|
LIB_OBJS += oidset.o
|
|
|
|
LIB_OBJS += oidtree.o
|
|
|
|
+LIB_OBJS += oss-fuzz/fuzz-cmd-base.o
|
|
|
|
LIB_OBJS += pack-bitmap-write.o
|
|
|
|
LIB_OBJS += pack-bitmap.o
|
|
|
|
LIB_OBJS += pack-check.o
|
2022-10-01 19:38:58 +00:00
|
|
|
diff --git a/diff.c b/diff.c
|
|
|
|
index 648f6717a5..24e42d0cd1 100644
|
|
|
|
--- a/diff.c
|
|
|
|
+++ b/diff.c
|
|
|
|
@@ -3557,7 +3557,7 @@ static void builtin_diff(const char *name_a,
|
|
|
|
}
|
|
|
|
if (fill_mmfile(o->repo, &mf1, one) < 0 ||
|
|
|
|
fill_mmfile(o->repo, &mf2, two) < 0)
|
|
|
|
- die("unable to read files to diff");
|
|
|
|
+ return; //die("unable to read files to diff");
|
|
|
|
/* Quite common confusing case */
|
|
|
|
if (mf1.size == mf2.size &&
|
|
|
|
!memcmp(mf1.ptr, mf2.ptr, mf1.size)) {
|
|
|
|
@@ -4009,7 +4009,7 @@ int diff_populate_filespec(struct repository *r,
|
|
|
|
conv_flags = CONV_EOL_RNDTRP_WARN;
|
|
|
|
|
|
|
|
if (!DIFF_FILE_VALID(s))
|
|
|
|
- die("internal error: asking to populate invalid file.");
|
|
|
|
+ return -1;//die("internal error: asking to populate invalid file.");
|
|
|
|
if (S_ISDIR(s->mode))
|
|
|
|
return -1;
|
|
|
|
|
|
|
|
@@ -4113,7 +4113,7 @@ int diff_populate_filespec(struct repository *r,
|
|
|
|
}
|
|
|
|
if (oid_object_info_extended(r, &s->oid, &info,
|
|
|
|
OBJECT_INFO_LOOKUP_REPLACE))
|
|
|
|
- die("unable to read %s", oid_to_hex(&s->oid));
|
|
|
|
+ return -1;//die("unable to read %s", oid_to_hex(&s->oid));
|
|
|
|
|
|
|
|
object_read:
|
|
|
|
if (size_only || check_binary) {
|
|
|
|
@@ -4128,7 +4128,7 @@ int diff_populate_filespec(struct repository *r,
|
|
|
|
info.contentp = &s->data;
|
|
|
|
if (oid_object_info_extended(r, &s->oid, &info,
|
|
|
|
OBJECT_INFO_LOOKUP_REPLACE))
|
|
|
|
- die("unable to read %s", oid_to_hex(&s->oid));
|
|
|
|
+ return -1;//die("unable to read %s", oid_to_hex(&s->oid));
|
|
|
|
}
|
|
|
|
s->should_free = 1;
|
|
|
|
}
|
|
|
|
@@ -7051,7 +7051,7 @@ size_t fill_textconv(struct repository *r,
|
|
|
|
return 0;
|
|
|
|
}
|
|
|
|
if (diff_populate_filespec(r, df, NULL))
|
|
|
|
- die("unable to read files to diff");
|
|
|
|
+ return 0;//die("unable to read files to diff");
|
|
|
|
*outbuf = df->data;
|
|
|
|
return df->size;
|
|
|
|
}
|
|
|
|
@@ -7069,7 +7069,7 @@ size_t fill_textconv(struct repository *r,
|
|
|
|
|
|
|
|
*outbuf = run_textconv(r, driver->textconv, df, &size);
|
|
|
|
if (!*outbuf)
|
|
|
|
- die("unable to read files to diff");
|
|
|
|
+ return 0;//die("unable to read files to diff");
|
|
|
|
|
|
|
|
if (driver->textconv_cache && df->oid_valid) {
|
|
|
|
/* ignore errors, as we might be in a readonly repository */
|
|
|
|
diff --git a/environment.c b/environment.c
|
|
|
|
index 18d042b467..7e0ba9dc47 100644
|
|
|
|
--- a/environment.c
|
|
|
|
+++ b/environment.c
|
|
|
|
@@ -265,7 +265,7 @@ void set_git_work_tree(const char *new_work_tree)
|
|
|
|
strbuf_release(&realpath);
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
- git_work_tree_initialized = 1;
|
|
|
|
+ git_work_tree_initialized = 0;
|
|
|
|
repo_set_worktree(the_repository, new_work_tree);
|
|
|
|
}
|
|
|
|
|