facebook: fixed memory leak with HTTP error checking facebook

Thu, 20 Aug 2015 16:31:46 -0400

author
James Geboski <jgeboski@gmail.com>
date
Thu, 20 Aug 2015 16:31:46 -0400
branch
facebook
changeset 37367
e0df3850e9c2
parent 37366
1cbcea2165c1
child 37368
ed868baac87d

facebook: fixed memory leak with HTTP error checking

libpurple/protocols/facebook/api.c file | annotate | diff | comparison | revisions
--- a/libpurple/protocols/facebook/api.c	Thu Aug 20 16:19:06 2015 -0400
+++ b/libpurple/protocols/facebook/api.c	Thu Aug 20 16:31:46 2015 -0400
@@ -625,12 +625,16 @@
 		FB_API_ERROR_EMIT(api, err, return FALSE);
 	}
 
-	if (fb_api_json_chk(api, data, size, root)) {
-		FB_API_ERROR_EMIT(api, err, return FALSE);
-		return TRUE;
+	if (!fb_api_json_chk(api, data, size, root)) {
+		if (G_UNLIKELY(err != NULL)) {
+			g_error_free(err);
+		}
+
+		return FALSE;
 	}
 
-	return FALSE;
+	FB_API_ERROR_EMIT(api, err, return FALSE);
+	return TRUE;
 }
 
 static PurpleHttpConnection *

mercurial