]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Added command line option -q, which allows to suppress printing an error message...
authorBart Van Assche <bvanassche@acm.org>
Fri, 24 Jul 2009 06:29:57 +0000 (06:29 +0000)
committerBart Van Assche <bvanassche@acm.org>
Fri, 24 Jul 2009 06:29:57 +0000 (06:29 +0000)
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@10576

drd/tests/pth_inconsistent_cond_wait.c

index a3f9abd4e1a7747d8450361820b137f0795c8980..f7501cc25c895f7c7bccb97b1af4906e5dac6219 100644 (file)
@@ -20,7 +20,7 @@
   do                                                    \
   {                                                     \
     int err = (expr);                                   \
-    if ((err) != 0)                                     \
+    if (! s_quiet && err)                              \
     {                                                   \
       fprintf(stderr,                                   \
               "%s:%d %s returned error code %d (%s)\n", \
   } while (0)
 
 
-pthread_cond_t  s_cond;
-pthread_mutex_t s_mutex1;
-pthread_mutex_t s_mutex2;
-sem_t*          s_sem;
+static pthread_cond_t  s_cond;
+static pthread_mutex_t s_mutex1;
+static pthread_mutex_t s_mutex2;
+static sem_t*          s_sem;
+static int             s_quiet;
 
 
 static sem_t* create_semaphore(const char* const name)
@@ -81,11 +82,23 @@ static void* thread_func(void* mutex)
 
 int main(int argc, char** argv)
 {
+  char semaphore_name[32];
+  int optchar;
   pthread_t tid1;
   pthread_t tid2;
 
+  while ((optchar = getopt(argc, argv, "q")) != EOF)
+  {
+    switch (optchar)
+    {
+    case 'q': s_quiet = 1; break;
+    default:
+      fprintf(stderr, "Error: unknown option '%c'.\n", optchar);
+      return 1;
+    }
+  }
+
   /* Initialize synchronization objects. */
-  char semaphore_name[32];
   snprintf(semaphore_name, sizeof(semaphore_name), "semaphore-%d", getpid());
   s_sem = create_semaphore(semaphore_name);
   PTH_CALL(pthread_cond_init(&s_cond, 0));