[libc-commits] [libc] 82ef720 - [libc][fuzzing] Delete test buffs for asan checks (#174018)
via libc-commits
libc-commits at lists.llvm.org
Tue Dec 30 13:11:51 PST 2025
Author: Kyungtak Woo
Date: 2025-12-30T16:11:46-05:00
New Revision: 82ef720c6b5b5ea9d470d834c4274a0d90a19ef9
URL: https://github.com/llvm/llvm-project/commit/82ef720c6b5b5ea9d470d834c4274a0d90a19ef9
DIFF: https://github.com/llvm/llvm-project/commit/82ef720c6b5b5ea9d470d834c4274a0d90a19ef9.diff
LOG: [libc][fuzzing] Delete test buffs for asan checks (#174018)
I'm currently getting "Detected memory leaks" errors due to this. This
change should always delete the buffers after use.
Added:
Modified:
libc/fuzzing/stdio/printf_float_conv_fuzz.cpp
Removed:
################################################################################
diff --git a/libc/fuzzing/stdio/printf_float_conv_fuzz.cpp b/libc/fuzzing/stdio/printf_float_conv_fuzz.cpp
index 5b388c1fce1bd..85494d8d3f835 100644
--- a/libc/fuzzing/stdio/printf_float_conv_fuzz.cpp
+++ b/libc/fuzzing/stdio/printf_float_conv_fuzz.cpp
@@ -58,6 +58,7 @@ inline TestResult test_vals(const char *fmt, F num, int prec, int width) {
int test_result = 0;
int reference_result = 0;
+ TestResult result = TestResult::Success;
test_result = LIBC_NAMESPACE::snprintf(test_buff, buffer_size + 1, fmt, width,
prec, num);
@@ -66,16 +67,14 @@ inline TestResult test_vals(const char *fmt, F num, int prec, int width) {
// All of these calls should return that they wrote the same amount.
if (test_result != reference_result || test_result != buffer_size) {
- return TestResult::LengthsDiffer;
- }
-
- if (!simple_streq(test_buff, reference_buff, buffer_size)) {
- return TestResult::StringsNotEqual;
+ result = TestResult::LengthsDiffer;
+ } else if (!simple_streq(test_buff, reference_buff, buffer_size)) {
+ result = TestResult::StringsNotEqual;
}
delete[] test_buff;
delete[] reference_buff;
- return TestResult::Success;
+ return result;
}
constexpr char const *fmt_arr[] = {
More information about the libc-commits
mailing list