From c6f52db194f1108f353c7498d4cdee733f2dca74 Mon Sep 17 00:00:00 2001 From: "Unknown W. Brackets" Date: Sun, 30 Mar 2014 13:14:17 -0700 Subject: [PATCH] Fix some scePsmf leaks. --- Core/HLE/scePsmf.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Core/HLE/scePsmf.cpp b/Core/HLE/scePsmf.cpp index eb5dc3ee4f..9792ea075f 100644 --- a/Core/HLE/scePsmf.cpp +++ b/Core/HLE/scePsmf.cpp @@ -879,6 +879,8 @@ int scePsmfPlayerCreate(u32 psmfPlayer, u32 psmfPlayerDataAddr) if (!psmfplayer) { // TODO: This is the wrong data. PsmfPlayer needs a new interface. psmfplayer = new PsmfPlayer(psmfPlayerDataAddr); + if (psmfPlayerMap.find(psmfPlayer) != psmfPlayerMap.end()) + delete psmfPlayerMap[psmfPlayer]; psmfPlayerMap[psmfPlayer] = psmfplayer; } @@ -1086,6 +1088,8 @@ int scePsmfPlayerStart(u32 psmfPlayer, u32 psmfPlayerData, int initPts) if (!psmfplayer) { psmfplayer = new PsmfPlayer(psmfPlayerData); + if (psmfPlayerMap.find(psmfPlayer) != psmfPlayerMap.end()) + delete psmfPlayerMap[psmfPlayer]; psmfPlayerMap[psmfPlayer] = psmfplayer; }