vlc | branch: master | Rémi Denis-Courmont <r...@remlab.net> | Sun Jul 21 19:14:56 2013 +0300| [013044c36169a4ef9974423a79432f2092281bf3] | committer: Rémi Denis-Courmont
win32: do not clobber error status when touching thread variables > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=013044c36169a4ef9974423a79432f2092281bf3 --- src/win32/thread.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/win32/thread.c b/src/win32/thread.c index 45abc4e..d13ac08 100644 --- a/src/win32/thread.c +++ b/src/win32/thread.c @@ -358,12 +358,21 @@ void vlc_threadvar_delete (vlc_threadvar_t *p_tls) int vlc_threadvar_set (vlc_threadvar_t key, void *value) { - return TlsSetValue (key->id, value) ? ENOMEM : 0; + int saved = GetLastError (); + int val = TlsSetValue (key->id, value) ? ENOMEM : 0; + + if (val == 0) + SetLastError(saved); + return val; } void *vlc_threadvar_get (vlc_threadvar_t key) { - return TlsGetValue (key->id); + int saved = GetLastError (); + void *value = TlsGetValue (key->id); + + SetLastError(saved); + return value; } /*** Threads ***/ _______________________________________________ vlc-commits mailing list vlc-commits@videolan.org http://mailman.videolan.org/listinfo/vlc-commits