efreet: store volatile value locally before return
authorSebastian Dransfeld <sd@tango.flipp.net>
Wed, 20 Nov 2013 12:20:03 +0000 (13:20 +0100)
committerSebastian Dransfeld <sd@tango.flipp.net>
Thu, 21 Nov 2013 08:29:25 +0000 (09:29 +0100)
src/lib/efreet/efreet_desktop.c

index 35e20e0..9c4c4e7 100644 (file)
@@ -174,11 +174,14 @@ efreet_desktop_get(const char *file)
 EAPI int
 efreet_desktop_ref(Efreet_Desktop *desktop)
 {
+    int ret;
+
     EINA_SAFETY_ON_NULL_RETURN_VAL(desktop, 0);
     eina_lock_take(&_lock);
     desktop->ref++;
+    ret = desktop->ref;
     eina_lock_release(&_lock);
-    return desktop->ref;
+    return ret;
 }
 
 EAPI Efreet_Desktop *