Fix pthread_cond_clockwait() when cond is initialized with CLOCK_MONOTONIC

A bit of over-reliance on implementing pthread_cond_clockwait() in
terms of existing functions ended up with a bug that if the condition
variable was initialized to use CLOCK_MONOTONIC, then
pthread_cond_clockwait() would do the wrong thing.

This change corrects that and adds a test for this case.

Test: new and existing tests pthread_cond unit tests
Change-Id: I708d5dfbef95a67678db56dceda011f2f8fd1c5c
diff --git a/libc/bionic/pthread_cond.cpp b/libc/bionic/pthread_cond.cpp
index 1ab1b81..e857069 100644
--- a/libc/bionic/pthread_cond.cpp
+++ b/libc/bionic/pthread_cond.cpp
@@ -221,7 +221,7 @@
     case CLOCK_MONOTONIC:
       return pthread_cond_timedwait_monotonic_np(cond_interface, mutex, abs_timeout);
     case CLOCK_REALTIME:
-      return pthread_cond_timedwait(cond_interface, mutex, abs_timeout);
+      return __pthread_cond_timedwait(__get_internal_cond(cond_interface), mutex, true, abs_timeout);
     default:
       return EINVAL;
   }