1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2025-02-01 13:11:39 +01:00

[libFuzzer] use print+exit(1) instead of assert to report an error

llvm-svn: 292685
This commit is contained in:
Kostya Serebryany 2017-01-21 00:13:50 +00:00
parent 5be455e59e
commit 8cde0a4691
2 changed files with 5 additions and 3 deletions

View File

@ -365,8 +365,10 @@ int FuzzerDriver(int *argc, char ***argv, UserCallback Callback) {
const std::vector<std::string> Args(*argv, *argv + *argc);
assert(!Args.empty());
ProgName = new std::string(Args[0]);
assert(Argv0 == *ProgName &&
"argv[0] has been modified in LLVMFuzzerInitialize");
if (Argv0 != *ProgName) {
Printf("ERROR: argv[0] has been modified in LLVMFuzzerInitialize\n");
exit(1);
}
ParseFlags(Args);
if (Flags.help) {
PrintHelp();

View File

@ -56,5 +56,5 @@ STRNCMP: AddressSanitizer: heap-buffer-overflow
STRNCMP-NOT: __sanitizer_weak_hook_strncmp
STRNCMP: in LLVMFuzzerTestOneInput
RUN: not --crash LLVMFuzzer-BogusInitializeTest 2>&1 | FileCheck %s --check-prefix=BOGUS_INITIALIZE
RUN: not LLVMFuzzer-BogusInitializeTest 2>&1 | FileCheck %s --check-prefix=BOGUS_INITIALIZE
BOGUS_INITIALIZE: argv[0] has been modified in LLVMFuzzerInitialize