Author: tack
Date: Sun Feb 24 15:40:14 2008
New Revision: 3130

Log:
Use standard lock/unlock flags.


Modified:
   trunk/popcorn/src/backends/xine/player.py
   trunk/xine/src/drivers/kaa.c

Modified: trunk/popcorn/src/backends/xine/player.py
==============================================================================
--- trunk/popcorn/src/backends/xine/player.py   (original)
+++ trunk/popcorn/src/backends/xine/player.py   Sun Feb 24 15:40:14 2008
@@ -48,8 +48,8 @@
 # get logging object
 log = logging.getLogger('popcorn.xine')
 
-BUFFER_UNLOCKED = 0x00
-BUFFER_LOCKED = 0x01
+BUFFER_UNLOCKED = 0x10
+BUFFER_LOCKED = 0x20
 
 class Xine(MediaPlayer):
 

Modified: trunk/xine/src/drivers/kaa.c
==============================================================================
--- trunk/xine/src/drivers/kaa.c        (original)
+++ trunk/xine/src/drivers/kaa.c        Sun Feb 24 15:40:14 2008
@@ -13,6 +13,8 @@
 #endif
 
 #define NUM_FRAME_BUFFERS 3
+#define BUFFER_UNLOCKED 0x10
+#define BUFFER_LOCKED 0x20
 
 typedef struct _kaa_vo_user_data {
     driver_info_common common;
@@ -80,12 +82,12 @@
 
     gettimeofday(&curtime, NULL);
     start = now = curtime.tv_sec + (curtime.tv_usec/(1000.0*1000));
-    while (*lock && now - start < max_wait) {
+    while (*lock & BUFFER_LOCKED && now - start < max_wait) {
         gettimeofday(&curtime, NULL);
         now = curtime.tv_sec + (curtime.tv_usec/(1000.0*1000));
         usleep(1);
     }
-    return *lock == 0;
+    return *lock & BUFFER_UNLOCKED;
 } 
 
 
@@ -120,7 +122,7 @@
         };
 
         buffer_header_t header = {
-            .lock = 0,
+            .lock = BUFFER_UNLOCKED,
             .width = frame->width,
             .height = frame->height,
             .stride = stride,
@@ -151,7 +153,7 @@
         }
 
         memcpy(user_data->buffers[user_data->cur_buffer_idx], &header, 
sizeof(header));
-        *lock = 1;
+        *lock = BUFFER_LOCKED;
         // TODO: check return value for write()
         write(user_data->notify_fd, &notify, sizeof(notify));
         fsync(user_data->notify_fd);

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Freevo-cvslog mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freevo-cvslog

Reply via email to