summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/msan/tests/msan_test.cc13
1 files changed, 11 insertions, 2 deletions
diff --git a/lib/msan/tests/msan_test.cc b/lib/msan/tests/msan_test.cc
index 99be07e59..a3b8d2692 100644
--- a/lib/msan/tests/msan_test.cc
+++ b/lib/msan/tests/msan_test.cc
@@ -2814,10 +2814,19 @@ TEST(MemorySanitizer, getrlimit) {
struct rlimit limit2;
__msan_poison(&limit2, sizeof(limit2));
- int result2 = prlimit(getpid(), RLIMIT_DATA, &limit, &limit2);
- ASSERT_EQ(result2, 0);
+ result = prlimit(getpid(), RLIMIT_DATA, &limit, &limit2);
+ ASSERT_EQ(result, 0);
EXPECT_NOT_POISONED(limit2.rlim_cur);
EXPECT_NOT_POISONED(limit2.rlim_max);
+
+ __msan_poison(&limit, sizeof(limit));
+ result = prlimit(getpid(), RLIMIT_DATA, nullptr, &limit);
+ ASSERT_EQ(result, 0);
+ EXPECT_NOT_POISONED(limit.rlim_cur);
+ EXPECT_NOT_POISONED(limit.rlim_max);
+
+ result = prlimit(getpid(), RLIMIT_DATA, &limit, nullptr);
+ ASSERT_EQ(result, 0);
}
TEST(MemorySanitizer, getrusage) {