Index: third_party/crashpad/crashpad/util/synchronization/semaphore_test.cc |
diff --git a/third_party/crashpad/crashpad/util/synchronization/semaphore_test.cc b/third_party/crashpad/crashpad/util/synchronization/semaphore_test.cc |
index fb4338c05ba0a8406bc4b3dbff89fab6844d0af9..ccaf742dd34e79675f8eae06b52b4c718bf036f8 100644 |
--- a/third_party/crashpad/crashpad/util/synchronization/semaphore_test.cc |
+++ b/third_party/crashpad/crashpad/util/synchronization/semaphore_test.cc |
@@ -43,6 +43,18 @@ TEST(Semaphore, TimedWaitTimeout) { |
EXPECT_FALSE(semaphore.TimedWait(0.01)); // 10ms |
} |
+TEST(Semaphore, TimedWaitInfinite_0) { |
+ Semaphore semaphore(0); |
+ semaphore.Signal(); |
+ EXPECT_TRUE(semaphore.TimedWait(std::numeric_limits<double>::infinity())); |
+} |
+ |
+TEST(Semaphore, TimedWaitInfinite_1) { |
+ Semaphore semaphore(1); |
+ EXPECT_TRUE(semaphore.TimedWait(std::numeric_limits<double>::infinity())); |
+ semaphore.Signal(); |
+} |
+ |
struct ThreadMainInfo { |
#if defined(OS_POSIX) |
pthread_t pthread; |