diff options
author | mycroft <mycroft> | 2003-10-03 17:49:27 +0000 |
---|---|---|
committer | mycroft <mycroft> | 2003-10-03 17:49:27 +0000 |
commit | 9d4873d4e4a59a13675d73517baf9b0e345a89f6 (patch) | |
tree | d99759f711ccab3ca9772b5b975dfaec0abf5d23 /graphics | |
parent | 3eb64d09ebb638659a854d966ea114e45bca537c (diff) | |
download | pkgsrc-9d4873d4e4a59a13675d73517baf9b0e345a89f6.tar.gz |
Adjust the CRITICAL_SECTION locking protocol slightly -- only increase
cs->locked *after* acquiring the lock, so that we can count recursive locks
and unlock at the right time. Doesn't seem to affect any codecs I've tested,
but you never know...
Diffstat (limited to 'graphics')
-rw-r--r-- | graphics/xine-lib/distinfo | 4 | ||||
-rw-r--r-- | graphics/xine-lib/patches/patch-al | 18 |
2 files changed, 12 insertions, 10 deletions
diff --git a/graphics/xine-lib/distinfo b/graphics/xine-lib/distinfo index 89eb15a3266..47b20620e61 100644 --- a/graphics/xine-lib/distinfo +++ b/graphics/xine-lib/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.9 2003/10/02 14:20:35 mycroft Exp $ +$NetBSD: distinfo,v 1.10 2003/10/03 17:49:27 mycroft Exp $ SHA1 (xine-lib-1-rc0a.tar.gz) = ee41ba602179a9f02208a15e3dff36a1dfa00fac Size (xine-lib-1-rc0a.tar.gz) = 4211552 bytes @@ -12,7 +12,7 @@ SHA1 (patch-ah) = 3f9b23c4a7994259056b73209a9e194db759f06d SHA1 (patch-ai) = f71e3cb57bf30cbf9653a469c040b6e3f717ba97 SHA1 (patch-aj) = 54cf69b028d46327d46b5cc2a0ec457bd4a59b67 SHA1 (patch-ak) = 5e791e17755e0b7515d81f80790d529992e827d6 -SHA1 (patch-al) = 4e995a84efcb8ae17a803f8f1cc6118506be09b0 +SHA1 (patch-al) = af557ce4fd64e11f84947e067f445e59628c6f99 SHA1 (patch-am) = 0441dcd9faf0c0e7f07c8d0fc7a61fcce435af76 SHA1 (patch-an) = 4877ff4f905c2b62c37c0d4bbb51510d8a043344 SHA1 (patch-ao) = 53de6febfed214e9e43d53e3e5b83af1fcb19b20 diff --git a/graphics/xine-lib/patches/patch-al b/graphics/xine-lib/patches/patch-al index f628a3ba073..6be99a26bd1 100644 --- a/graphics/xine-lib/patches/patch-al +++ b/graphics/xine-lib/patches/patch-al @@ -1,8 +1,8 @@ -$NetBSD: patch-al,v 1.1 2003/10/02 12:31:30 mycroft Exp $ +$NetBSD: patch-al,v 1.2 2003/10/03 17:49:27 mycroft Exp $ --- src/libw32dll/wine/win32.c.orig 2003-10-02 12:25:52.000000000 +0000 +++ src/libw32dll/wine/win32.c 2003-10-02 12:21:50.000000000 +0000 -@@ -440,9 +442,8 @@ +@@ -440,9 +440,8 @@ alccnt--; @@ -14,20 +14,22 @@ $NetBSD: patch-al,v 1.1 2003/10/02 12:31:30 mycroft Exp $ pthread_mutex_destroy(&memmut); //if (alccnt < 40000) printf("MY_RELEASE: %p\t%ld (%d)\n", header, header->size, alccnt); -@@ -1349,11 +1350,10 @@ - #endif +@@ -1350,10 +1349,12 @@ printf("wine/win32: Win32 Warning: Accessed uninitialized Critical Section (%p)!\n", c); } -- if(cs->locked) -+ if(cs->locked++) - if(cs->id==pthread_self()) + if(cs->locked) +- if(cs->id==pthread_self()) ++ if(cs->id==pthread_self()) { ++ cs->locked++; return; ++ } pthread_mutex_lock(&(cs->mutex)); - cs->locked=1; ++ cs->locked++; /* should always be 1 */ cs->id=pthread_self(); return; } -@@ -1371,8 +1371,8 @@ +@@ -1371,8 +1372,8 @@ printf("Win32 Warning: Leaving uninitialized Critical Section %p!!\n", c); return; } |