[PATCH] Remove potential reference count races

max at mtew.isa-geek.net max at mtew.isa-geek.net
Sat Oct 27 20:59:22 CDT 2012


From: Max TenEyck Woodbury <max at mtew.isa-geek.net>

---
 dlls/jscript/jscript.h |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/dlls/jscript/jscript.h b/dlls/jscript/jscript.h
index 18ac1db..c979824 100644
--- a/dlls/jscript/jscript.h
+++ b/dlls/jscript/jscript.h
@@ -235,13 +235,13 @@ void jsdisp_free(jsdisp_t*) DECLSPEC_HIDDEN;
  */
 static inline jsdisp_t *jsdisp_addref(jsdisp_t *jsdisp)
 {
-    jsdisp->ref++;
+    InterlockedIncrement(&jsdisp->ref);
     return jsdisp;
 }
 
 static inline void jsdisp_release(jsdisp_t *jsdisp)
 {
-    if(!--jsdisp->ref)
+    if(!InterlockedDecrement(&jsdisp->ref))
         jsdisp_free(jsdisp);
 }
 
@@ -409,7 +409,7 @@ void clear_ei(script_ctx_t*) DECLSPEC_HIDDEN;
 
 static inline void script_addref(script_ctx_t *ctx)
 {
-    ctx->ref++;
+    InterlockedIncrement(&ctx->ref);
 }
 
 HRESULT init_global(script_ctx_t*) DECLSPEC_HIDDEN;
-- 
1.7.7.6




More information about the wine-patches mailing list