Browse Source

Remove external ref count visibility

The returned ref count was never used and the returned value doesn't
actually confer any meaning in a multithreaded environment
Palana 12 years ago
parent
commit
ac23df500a
3 changed files with 28 additions and 32 deletions
  1. 14 15
      libobs/obs-scene.c
  2. 8 11
      libobs/obs-source.c
  3. 6 6
      libobs/obs.h

+ 14 - 15
libobs/obs-scene.c

@@ -197,14 +197,16 @@ obs_scene_t obs_scene_create(const char *name)
 	return scene;
 }
 
-int obs_scene_addref(obs_scene_t scene)
+void obs_scene_addref(obs_scene_t scene)
 {
-	return scene ? obs_source_addref(scene->source) : 0;
+	if (scene)
+		obs_source_addref(scene->source);
 }
 
-int obs_scene_release(obs_scene_t scene)
+void obs_scene_release(obs_scene_t scene)
 {
-	return scene ? obs_source_release(scene->source) : 0;
+	if (scene)
+		obs_source_release(scene->source);
 }
 
 obs_source_t obs_scene_getsource(obs_scene_t scene)
@@ -312,22 +314,19 @@ static void obs_sceneitem_destroy(obs_sceneitem_t item)
 	}
 }
 
-int obs_sceneitem_addref(obs_sceneitem_t item)
+void obs_sceneitem_addref(obs_sceneitem_t item)
 {
-	return item ? ++item->ref : 0;
+	if (item)
+		++item->ref;
 }
 
-int obs_sceneitem_release(obs_sceneitem_t item)
+void obs_sceneitem_release(obs_sceneitem_t item)
 {
-	int ref = 0;
-
-	if (item) {
-		ref = --item->ref;
-		if (!ref)
-			obs_sceneitem_destroy(item);
-	}
+	if (!item)
+		return;
 
-	return ref;
+	if (--item->ref == 0)
+		obs_sceneitem_destroy(item);
 }
 
 void obs_sceneitem_remove(obs_sceneitem_t item)

+ 8 - 11
libobs/obs-source.c

@@ -219,22 +219,19 @@ static void obs_source_destroy(obs_source_t source)
 	bfree(source);
 }
 
-int obs_source_addref(obs_source_t source)
+void obs_source_addref(obs_source_t source)
 {
-	return source ? ++source->refs : 0;
+	if (source)
+		++source->refs;
 }
 
-int obs_source_release(obs_source_t source)
+void obs_source_release(obs_source_t source)
 {
-	int refs = 0;
-
-	if (source) {
-		refs = --source->refs;
-		if (refs == 0)
-			obs_source_destroy(source);
-	}
+	if (!source)
+		return;
 
-	return refs;
+	if (--source->refs == 0)
+		obs_source_destroy(source);
 }
 
 void obs_source_remove(obs_source_t source)

+ 6 - 6
libobs/obs.h

@@ -347,8 +347,8 @@ EXPORT obs_source_t obs_source_create(enum obs_source_type type,
  * Adds/releases a reference to a source.  When the last reference is
  * released, the source is destroyed.
  */
-EXPORT int obs_source_addref(obs_source_t source);
-EXPORT int obs_source_release(obs_source_t source);
+EXPORT void obs_source_addref(obs_source_t source);
+EXPORT void obs_source_release(obs_source_t source);
 
 /** Notifies all references that the source should be released */
 EXPORT void obs_source_remove(obs_source_t source);
@@ -458,8 +458,8 @@ EXPORT void obs_source_process_filter(obs_source_t filter,
  */
 EXPORT obs_scene_t obs_scene_create(const char *name);
 
-EXPORT int         obs_scene_addref(obs_scene_t scene);
-EXPORT int         obs_scene_release(obs_scene_t scene);
+EXPORT void        obs_scene_addref(obs_scene_t scene);
+EXPORT void        obs_scene_release(obs_scene_t scene);
 
 /** Gets the scene's source context */
 EXPORT obs_source_t obs_scene_getsource(obs_scene_t scene);
@@ -479,8 +479,8 @@ EXPORT void obs_scene_enum_items(obs_scene_t scene,
 /** Adds/creates a new scene item for a source */
 EXPORT obs_sceneitem_t obs_scene_add(obs_scene_t scene, obs_source_t source);
 
-EXPORT int obs_sceneitem_addref(obs_sceneitem_t item);
-EXPORT int obs_sceneitem_release(obs_sceneitem_t item);
+EXPORT void obs_sceneitem_addref(obs_sceneitem_t item);
+EXPORT void obs_sceneitem_release(obs_sceneitem_t item);
 
 /** Removes a scene item. */
 EXPORT void obs_sceneitem_remove(obs_sceneitem_t item);