[Scummvm-git-logs] scummvm master -> 6575c1cca8ae311eda7e6fc8995ec345858d3ada

sev- noreply at scummvm.org
Fri Aug 4 15:48:15 UTC 2023


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
6575c1cca8 CLOUD: Fix memleak in ConnectionManager


Commit: 6575c1cca8ae311eda7e6fc8995ec345858d3ada
    https://github.com/scummvm/scummvm/commit/6575c1cca8ae311eda7e6fc8995ec345858d3ada
Author: hax0kartik (agarwala.kartik at gmail.com)
Date: 2023-08-04T17:48:11+02:00

Commit Message:
CLOUD: Fix memleak in ConnectionManager

Changed paths:
    backends/networking/curl/connectionmanager.cpp


diff --git a/backends/networking/curl/connectionmanager.cpp b/backends/networking/curl/connectionmanager.cpp
index 66419094048..022bb6843b5 100644
--- a/backends/networking/curl/connectionmanager.cpp
+++ b/backends/networking/curl/connectionmanager.cpp
@@ -53,8 +53,10 @@ ConnectionManager::~ConnectionManager() {
 		if (request)
 			request->finish();
 		delete request;
-		if (callback)
+		if (callback) {
 			(*callback)(request);
+			delete callback;
+		}
 	}
 	_addedRequests.clear();
 	_addedRequestsMutex.unlock();
@@ -67,8 +69,10 @@ ConnectionManager::~ConnectionManager() {
 		if (request)
 			request->finish();
 		delete request;
-		if (callback)
+		if (callback) {
 			(*callback)(request);
+			delete callback;
+		}
 	}
 	_requests.clear();
 
@@ -209,8 +213,10 @@ void ConnectionManager::interateRequests() {
 
 		if (!request || request->state() == FINISHED) {
 			delete (i->request);
-			if (i->onDeleteCallback)
+			if (i->onDeleteCallback) {
 				(*i->onDeleteCallback)(i->request); //that's not a mistake (we're passing an address and that method knows there is no object anymore)
+				delete i->onDeleteCallback;
+			}
 			_requests.erase(i);
 			continue;
 		}




More information about the Scummvm-git-logs mailing list