remove thread deadlock! werd!
authorCarsten Haitzler <raster@rasterman.com>
Sat, 18 Nov 2006 03:24:40 +0000 (03:24 +0000)
committerCarsten Haitzler <raster@rasterman.com>
Sat, 18 Nov 2006 03:24:40 +0000 (03:24 +0000)
SVN revision: 27164

legacy/evas/src/lib/engines/common/evas_pipe.c

index d769b0d..5a32e6a 100644 (file)
@@ -123,6 +123,7 @@ evas_common_pipe_begin(RGBA_Image *im)
 #ifdef BUILD_PTHREAD
    int i, y, h;
    
+   if (!im->pipe) return;
    if (thread_num == 1) return;
    if (thread_num == 0)
      {
@@ -176,13 +177,9 @@ evas_common_pipe_begin(RGBA_Image *im)
        y += info->h;
 #endif      
        thinfo[i].info = info;
-            /* send startsignal */
-//          printf("START %i\n", i);
      }
    /* tell worker threads to start */
-//   pthread_barrier_init(&(thbarrier[1]), NULL, thread_num + 1);
    pthread_barrier_wait(&(thbarrier[0]));
-//   pthread_barrier_destroy(&(thbarrier[0]));
 #endif   
 }
 
@@ -198,10 +195,7 @@ evas_common_pipe_flush(RGBA_Image *im)
    if (thread_num > 1)
      {
        /* sync worker threads */
-//     pthread_barrier_init(&(thbarrier[0]), NULL, thread_num + 1);
        pthread_barrier_wait(&(thbarrier[1]));
-//     pthread_barrier_destroy(&(thbarrier[1]));
-//     printf("DONE\n");
      }
    else
 #endif