mirror of
https://github.com/hrydgard/ppsspp.git
synced 2024-11-23 05:19:56 +00:00
[Common/Core/Windows] Removed excess check pointer before delete or free()
This commit is contained in:
parent
94f0e7afa8
commit
3c66f149d3
@ -20,7 +20,7 @@ public:
|
|||||||
data_ = (T *)malloc(initialCapacity * sizeof(T));
|
data_ = (T *)malloc(initialCapacity * sizeof(T));
|
||||||
_assert_(data_ != nullptr);
|
_assert_(data_ != nullptr);
|
||||||
}
|
}
|
||||||
~FastVec() { if (data_) free(data_); }
|
~FastVec() { free(data_); }
|
||||||
|
|
||||||
T &push_uninitialized() {
|
T &push_uninitialized() {
|
||||||
if (size_ < capacity_) {
|
if (size_ < capacity_) {
|
||||||
|
@ -61,7 +61,6 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
~JsonReader() {
|
~JsonReader() {
|
||||||
if (buffer_)
|
|
||||||
free(buffer_);
|
free(buffer_);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -122,10 +122,8 @@ public:
|
|||||||
if (program) {
|
if (program) {
|
||||||
glDeleteProgram(program);
|
glDeleteProgram(program);
|
||||||
}
|
}
|
||||||
if (locData_) {
|
|
||||||
delete locData_;
|
delete locData_;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
struct Semantic {
|
struct Semantic {
|
||||||
int location;
|
int location;
|
||||||
const char *attrib;
|
const char *attrib;
|
||||||
|
@ -63,9 +63,7 @@ struct AutoCharArrayBuf {
|
|||||||
buf_ = nullptr;
|
buf_ = nullptr;
|
||||||
}
|
}
|
||||||
void reset(char *buf) {
|
void reset(char *buf) {
|
||||||
if (buf_) {
|
|
||||||
delete[] buf_;
|
delete[] buf_;
|
||||||
}
|
|
||||||
buf_ = buf;
|
buf_ = buf;
|
||||||
}
|
}
|
||||||
operator char *() {
|
operator char *() {
|
||||||
|
@ -189,7 +189,6 @@ LogManager::~LogManager() {
|
|||||||
// Make sure we don't shutdown while logging. RemoveListener locks too, but there are gaps.
|
// Make sure we don't shutdown while logging. RemoveListener locks too, but there are gaps.
|
||||||
std::lock_guard<std::mutex> listeners_lock(listeners_lock_);
|
std::lock_guard<std::mutex> listeners_lock(listeners_lock_);
|
||||||
|
|
||||||
if (fileLog_)
|
|
||||||
delete fileLog_;
|
delete fileLog_;
|
||||||
#if !defined(MOBILE_DEVICE) || defined(_DEBUG)
|
#if !defined(MOBILE_DEVICE) || defined(_DEBUG)
|
||||||
#if PPSSPP_PLATFORM(WINDOWS) && !PPSSPP_PLATFORM(UWP)
|
#if PPSSPP_PLATFORM(WINDOWS) && !PPSSPP_PLATFORM(UWP)
|
||||||
|
@ -64,7 +64,6 @@ void DoClass(PointerWrap &p, T &x) {
|
|||||||
template<class T>
|
template<class T>
|
||||||
void DoClass(PointerWrap &p, T *&x) {
|
void DoClass(PointerWrap &p, T *&x) {
|
||||||
if (p.mode == PointerWrap::MODE_READ) {
|
if (p.mode == PointerWrap::MODE_READ) {
|
||||||
if (x != nullptr)
|
|
||||||
delete x;
|
delete x;
|
||||||
x = new T();
|
x = new T();
|
||||||
}
|
}
|
||||||
|
@ -63,7 +63,6 @@ template<class K, class T>
|
|||||||
void Do(PointerWrap &p, std::map<K, T *> &x) {
|
void Do(PointerWrap &p, std::map<K, T *> &x) {
|
||||||
if (p.mode == PointerWrap::MODE_READ) {
|
if (p.mode == PointerWrap::MODE_READ) {
|
||||||
for (auto it = x.begin(), end = x.end(); it != end; ++it) {
|
for (auto it = x.begin(), end = x.end(); it != end; ++it) {
|
||||||
if (it->second != nullptr)
|
|
||||||
delete it->second;
|
delete it->second;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -81,7 +80,6 @@ template<class K, class T>
|
|||||||
void Do(PointerWrap &p, std::unordered_map<K, T *> &x) {
|
void Do(PointerWrap &p, std::unordered_map<K, T *> &x) {
|
||||||
if (p.mode == PointerWrap::MODE_READ) {
|
if (p.mode == PointerWrap::MODE_READ) {
|
||||||
for (auto it = x.begin(), end = x.end(); it != end; ++it) {
|
for (auto it = x.begin(), end = x.end(); it != end; ++it) {
|
||||||
if (it->second != nullptr)
|
|
||||||
delete it->second;
|
delete it->second;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -135,7 +133,6 @@ template<class K, class T>
|
|||||||
void Do(PointerWrap &p, std::multimap<K, T *> &x) {
|
void Do(PointerWrap &p, std::multimap<K, T *> &x) {
|
||||||
if (p.mode == PointerWrap::MODE_READ) {
|
if (p.mode == PointerWrap::MODE_READ) {
|
||||||
for (auto it = x.begin(), end = x.end(); it != end; ++it) {
|
for (auto it = x.begin(), end = x.end(); it != end; ++it) {
|
||||||
if (it->second != nullptr)
|
|
||||||
delete it->second;
|
delete it->second;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -153,7 +150,6 @@ template<class K, class T>
|
|||||||
void Do(PointerWrap &p, std::unordered_multimap<K, T *> &x) {
|
void Do(PointerWrap &p, std::unordered_multimap<K, T *> &x) {
|
||||||
if (p.mode == PointerWrap::MODE_READ) {
|
if (p.mode == PointerWrap::MODE_READ) {
|
||||||
for (auto it = x.begin(), end = x.end(); it != end; ++it) {
|
for (auto it = x.begin(), end = x.end(); it != end; ++it) {
|
||||||
if (it->second != nullptr)
|
|
||||||
delete it->second;
|
delete it->second;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -55,7 +55,6 @@ template <class T>
|
|||||||
void Do(PointerWrap &p, std::set<T *> &x) {
|
void Do(PointerWrap &p, std::set<T *> &x) {
|
||||||
if (p.mode == PointerWrap::MODE_READ) {
|
if (p.mode == PointerWrap::MODE_READ) {
|
||||||
for (auto it = x.begin(), end = x.end(); it != end; ++it) {
|
for (auto it = x.begin(), end = x.end(); it != end; ++it) {
|
||||||
if (*it != nullptr)
|
|
||||||
delete *it;
|
delete *it;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -96,9 +96,7 @@ void ScreenManager::switchToNext() {
|
|||||||
}
|
}
|
||||||
stack_.push_back(nextStack_.front());
|
stack_.push_back(nextStack_.front());
|
||||||
nextStack_.front().screen->focusChanged(ScreenFocusChange::FOCUS_BECAME_TOP);
|
nextStack_.front().screen->focusChanged(ScreenFocusChange::FOCUS_BECAME_TOP);
|
||||||
if (temp.screen) {
|
|
||||||
delete temp.screen;
|
delete temp.screen;
|
||||||
}
|
|
||||||
UI::SetFocusedView(nullptr);
|
UI::SetFocusedView(nullptr);
|
||||||
|
|
||||||
// When will this ever happen? Should handle focus here too?
|
// When will this ever happen? Should handle focus here too?
|
||||||
@ -403,15 +401,11 @@ void ScreenManager::processFinishDialog() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void ScreenManager::SetBackgroundOverlayScreens(Screen *backgroundScreen, Screen *overlayScreen) {
|
void ScreenManager::SetBackgroundOverlayScreens(Screen *backgroundScreen, Screen *overlayScreen) {
|
||||||
if (backgroundScreen_) {
|
|
||||||
delete backgroundScreen_;
|
delete backgroundScreen_;
|
||||||
}
|
|
||||||
backgroundScreen_ = backgroundScreen;
|
backgroundScreen_ = backgroundScreen;
|
||||||
backgroundScreen_->setScreenManager(this);
|
backgroundScreen_->setScreenManager(this);
|
||||||
|
|
||||||
if (overlayScreen_) {
|
|
||||||
delete overlayScreen_;
|
delete overlayScreen_;
|
||||||
}
|
|
||||||
overlayScreen_ = overlayScreen;
|
overlayScreen_ = overlayScreen;
|
||||||
overlayScreen_->setScreenManager(this);
|
overlayScreen_->setScreenManager(this);
|
||||||
}
|
}
|
||||||
|
@ -1494,16 +1494,15 @@ void SavedataParam::Clear()
|
|||||||
}
|
}
|
||||||
|
|
||||||
delete [] saveDataList;
|
delete [] saveDataList;
|
||||||
saveDataList = 0;
|
saveDataList = NULL;
|
||||||
saveDataListCount = 0;
|
saveDataListCount = 0;
|
||||||
}
|
}
|
||||||
if (noSaveIcon)
|
if (noSaveIcon)
|
||||||
{
|
{
|
||||||
if (noSaveIcon->texture != NULL)
|
|
||||||
delete noSaveIcon->texture;
|
delete noSaveIcon->texture;
|
||||||
noSaveIcon->texture = NULL;
|
noSaveIcon->texture = NULL;
|
||||||
delete noSaveIcon;
|
delete noSaveIcon;
|
||||||
noSaveIcon = 0;
|
noSaveIcon = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1924,7 +1923,6 @@ void SavedataParam::DoState(PointerWrap &p) {
|
|||||||
Do(p, saveDataListCount);
|
Do(p, saveDataListCount);
|
||||||
Do(p, saveNameListDataCount);
|
Do(p, saveNameListDataCount);
|
||||||
if (p.mode == p.MODE_READ) {
|
if (p.mode == p.MODE_READ) {
|
||||||
if (saveDataList)
|
|
||||||
delete [] saveDataList;
|
delete [] saveDataList;
|
||||||
if (saveDataListCount != 0) {
|
if (saveDataListCount != 0) {
|
||||||
saveDataList = new SaveFileInfo[saveDataListCount];
|
saveDataList = new SaveFileInfo[saveDataListCount];
|
||||||
|
@ -83,7 +83,6 @@ private:
|
|||||||
void SetData(const u8* data, int size);
|
void SetData(const u8* data, int size);
|
||||||
|
|
||||||
~ValueData() {
|
~ValueData() {
|
||||||
if (u_value)
|
|
||||||
delete[] u_value;
|
delete[] u_value;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -82,9 +82,7 @@ PGF::PGF()
|
|||||||
}
|
}
|
||||||
|
|
||||||
PGF::~PGF() {
|
PGF::~PGF() {
|
||||||
if (fontData) {
|
|
||||||
delete [] fontData;
|
delete [] fontData;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
struct GlyphFromPGF1State {
|
struct GlyphFromPGF1State {
|
||||||
@ -139,9 +137,7 @@ void PGF::DoState(PointerWrap &p) {
|
|||||||
Do(p, fontDataSizeTemp);
|
Do(p, fontDataSizeTemp);
|
||||||
fontDataSize = (size_t)fontDataSizeTemp;
|
fontDataSize = (size_t)fontDataSizeTemp;
|
||||||
if (p.mode == p.MODE_READ) {
|
if (p.mode == p.MODE_READ) {
|
||||||
if (fontData) {
|
|
||||||
delete [] fontData;
|
delete [] fontData;
|
||||||
}
|
|
||||||
if (fontDataSize) {
|
if (fontDataSize) {
|
||||||
fontData = new u8[fontDataSize];
|
fontData = new u8[fontDataSize];
|
||||||
DoArray(p, fontData, (int)fontDataSize);
|
DoArray(p, fontData, (int)fontDataSize);
|
||||||
|
@ -160,7 +160,6 @@ struct ThreadQueueList {
|
|||||||
|
|
||||||
inline void clear() {
|
inline void clear() {
|
||||||
for (int i = 0; i < NUM_QUEUES; ++i) {
|
for (int i = 0; i < NUM_QUEUES; ++i) {
|
||||||
if (queues[i].data != nullptr)
|
|
||||||
free(queues[i].data);
|
free(queues[i].data);
|
||||||
}
|
}
|
||||||
memset(queues, 0, sizeof(queues));
|
memset(queues, 0, sizeof(queues));
|
||||||
|
@ -433,7 +433,6 @@ void __KernelReturnFromInterrupt()
|
|||||||
|
|
||||||
void __RegisterIntrHandler(u32 intrNumber, IntrHandler* handler)
|
void __RegisterIntrHandler(u32 intrNumber, IntrHandler* handler)
|
||||||
{
|
{
|
||||||
if(intrHandlers[intrNumber])
|
|
||||||
delete intrHandlers[intrNumber];
|
delete intrHandlers[intrNumber];
|
||||||
intrHandlers[intrNumber] = handler;
|
intrHandlers[intrNumber] = handler;
|
||||||
}
|
}
|
||||||
|
@ -95,10 +95,8 @@ struct FPL : public KernelObject
|
|||||||
{
|
{
|
||||||
FPL() : blocks(NULL), nextBlock(0) {}
|
FPL() : blocks(NULL), nextBlock(0) {}
|
||||||
~FPL() {
|
~FPL() {
|
||||||
if (blocks != NULL) {
|
|
||||||
delete [] blocks;
|
delete [] blocks;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
const char *GetName() override { return nf.name; }
|
const char *GetName() override { return nf.name; }
|
||||||
const char *GetTypeName() override { return GetStaticTypeName(); }
|
const char *GetTypeName() override { return GetStaticTypeName(); }
|
||||||
static const char *GetStaticTypeName() { return "FPL"; }
|
static const char *GetStaticTypeName() { return "FPL"; }
|
||||||
|
@ -1387,7 +1387,6 @@ static PSPModule *__KernelLoadELFFromPtr(const u8 *ptr, size_t elfSize, u32 load
|
|||||||
if (*magicPtr != 0x464c457f) {
|
if (*magicPtr != 0x464c457f) {
|
||||||
ERROR_LOG(Log::sceModule, "Wrong magic number %08x", *magicPtr);
|
ERROR_LOG(Log::sceModule, "Wrong magic number %08x", *magicPtr);
|
||||||
*error_string = "File corrupt";
|
*error_string = "File corrupt";
|
||||||
if (newptr)
|
|
||||||
delete [] newptr;
|
delete [] newptr;
|
||||||
module->Cleanup();
|
module->Cleanup();
|
||||||
kernelObjects.Destroy<PSPModule>(module->GetUID());
|
kernelObjects.Destroy<PSPModule>(module->GetUID());
|
||||||
@ -1401,7 +1400,6 @@ static PSPModule *__KernelLoadELFFromPtr(const u8 *ptr, size_t elfSize, u32 load
|
|||||||
int result = reader.LoadInto(loadAddress, fromTop);
|
int result = reader.LoadInto(loadAddress, fromTop);
|
||||||
if (result != SCE_KERNEL_ERROR_OK) {
|
if (result != SCE_KERNEL_ERROR_OK) {
|
||||||
ERROR_LOG(Log::sceModule, "LoadInto failed with error %08x",result);
|
ERROR_LOG(Log::sceModule, "LoadInto failed with error %08x",result);
|
||||||
if (newptr)
|
|
||||||
delete [] newptr;
|
delete [] newptr;
|
||||||
module->Cleanup();
|
module->Cleanup();
|
||||||
kernelObjects.Destroy<PSPModule>(module->GetUID());
|
kernelObjects.Destroy<PSPModule>(module->GetUID());
|
||||||
@ -1426,7 +1424,6 @@ static PSPModule *__KernelLoadELFFromPtr(const u8 *ptr, size_t elfSize, u32 load
|
|||||||
if (!Memory::IsValidAddress(modinfoaddr)) {
|
if (!Memory::IsValidAddress(modinfoaddr)) {
|
||||||
*error_string = StringFromFormat("Bad module info address %08x", modinfoaddr);
|
*error_string = StringFromFormat("Bad module info address %08x", modinfoaddr);
|
||||||
ERROR_LOG(Log::sceModule, "Bad module info address %08x", modinfoaddr);
|
ERROR_LOG(Log::sceModule, "Bad module info address %08x", modinfoaddr);
|
||||||
if (newptr)
|
|
||||||
delete[] newptr;
|
delete[] newptr;
|
||||||
module->Cleanup();
|
module->Cleanup();
|
||||||
kernelObjects.Destroy<PSPModule>(module->GetUID());
|
kernelObjects.Destroy<PSPModule>(module->GetUID());
|
||||||
@ -1729,7 +1726,6 @@ static PSPModule *__KernelLoadELFFromPtr(const u8 *ptr, size_t elfSize, u32 load
|
|||||||
module->nm.entry_addr = -1;
|
module->nm.entry_addr = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (newptr)
|
|
||||||
delete [] newptr;
|
delete [] newptr;
|
||||||
|
|
||||||
if (!reportedModule && IsHLEVersionedModule(modinfo->name)) {
|
if (!reportedModule && IsHLEVersionedModule(modinfo->name)) {
|
||||||
@ -1817,9 +1813,7 @@ static PSPModule *__KernelLoadModule(u8 *fileptr, size_t fileSize, SceKernelLMOp
|
|||||||
u32 error;
|
u32 error;
|
||||||
module = __KernelLoadELFFromPtr(temp ? temp : fileptr + offsets[5], elfSize, PSP_GetDefaultLoadAddress(), false, error_string, &magic, error);
|
module = __KernelLoadELFFromPtr(temp ? temp : fileptr + offsets[5], elfSize, PSP_GetDefaultLoadAddress(), false, error_string, &magic, error);
|
||||||
|
|
||||||
if (temp) {
|
|
||||||
delete [] temp;
|
delete [] temp;
|
||||||
}
|
|
||||||
} else if (fileSize > sizeof(PSP_Header)) {
|
} else if (fileSize > sizeof(PSP_Header)) {
|
||||||
u32 error;
|
u32 error;
|
||||||
u32 magic = 0;
|
u32 magic = 0;
|
||||||
|
@ -5008,7 +5008,7 @@ int NetAdhocMatching_Start(int matchingId, int evthPri, int evthPartitionId, int
|
|||||||
//sceNetAdhocMatchingSetHelloOpt(matchingId, optLen, optDataAddr); //SetHelloOpt only works when context is running
|
//sceNetAdhocMatchingSetHelloOpt(matchingId, optLen, optDataAddr); //SetHelloOpt only works when context is running
|
||||||
if ((optLen > 0) && Memory::IsValidAddress(optDataAddr)) {
|
if ((optLen > 0) && Memory::IsValidAddress(optDataAddr)) {
|
||||||
// Allocate the memory and copy the content
|
// Allocate the memory and copy the content
|
||||||
if (item->hello != NULL) free(item->hello);
|
free(item->hello);
|
||||||
item->hello = (uint8_t*)malloc(optLen);
|
item->hello = (uint8_t*)malloc(optLen);
|
||||||
if (item->hello != NULL) {
|
if (item->hello != NULL) {
|
||||||
Memory::Memcpy(item->hello, optDataAddr, optLen);
|
Memory::Memcpy(item->hello, optDataAddr, optLen);
|
||||||
|
@ -219,7 +219,6 @@ public:
|
|||||||
PsmfPlayer(const PsmfPlayerCreateData *data);
|
PsmfPlayer(const PsmfPlayerCreateData *data);
|
||||||
~PsmfPlayer() {
|
~PsmfPlayer() {
|
||||||
AbortFinish();
|
AbortFinish();
|
||||||
if (mediaengine)
|
|
||||||
delete mediaengine;
|
delete mediaengine;
|
||||||
pspFileSystem.CloseFile(filehandle);
|
pspFileSystem.CloseFile(filehandle);
|
||||||
}
|
}
|
||||||
|
@ -29,13 +29,11 @@ struct BufferQueue {
|
|||||||
}
|
}
|
||||||
|
|
||||||
~BufferQueue() {
|
~BufferQueue() {
|
||||||
if (bufQueue)
|
|
||||||
delete [] bufQueue;
|
delete [] bufQueue;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool alloc(int size) {
|
bool alloc(int size) {
|
||||||
_assert_(size > 0);
|
_assert_(size > 0);
|
||||||
if (bufQueue)
|
|
||||||
delete [] bufQueue;
|
delete [] bufQueue;
|
||||||
bufQueue = new unsigned char[size];
|
bufQueue = new unsigned char[size];
|
||||||
bufQueueSize = size;
|
bufQueueSize = size;
|
||||||
|
@ -147,9 +147,7 @@ MediaEngine::~MediaEngine() {
|
|||||||
|
|
||||||
void MediaEngine::closeMedia() {
|
void MediaEngine::closeMedia() {
|
||||||
closeContext();
|
closeContext();
|
||||||
if (m_pdata)
|
|
||||||
delete m_pdata;
|
delete m_pdata;
|
||||||
if (m_demux)
|
|
||||||
delete m_demux;
|
delete m_demux;
|
||||||
m_pdata = nullptr;
|
m_pdata = nullptr;
|
||||||
m_demux = nullptr;
|
m_demux = nullptr;
|
||||||
|
@ -138,7 +138,7 @@ private:
|
|||||||
class SasAtrac3 {
|
class SasAtrac3 {
|
||||||
public:
|
public:
|
||||||
SasAtrac3() : contextAddr_(0), atracID_(-1), sampleQueue_(0), end_(false) {}
|
SasAtrac3() : contextAddr_(0), atracID_(-1), sampleQueue_(0), end_(false) {}
|
||||||
~SasAtrac3() { if (sampleQueue_) delete sampleQueue_; }
|
~SasAtrac3() { delete sampleQueue_; }
|
||||||
int setContext(u32 context);
|
int setContext(u32 context);
|
||||||
void getNextSamples(s16 *outbuf, int wantedSamples);
|
void getNextSamples(s16 *outbuf, int wantedSamples);
|
||||||
int addStreamData(u32 bufPtr, u32 addbytes);
|
int addStreamData(u32 bufPtr, u32 addbytes);
|
||||||
|
@ -1000,10 +1000,9 @@ static inline bool load_vfpu_table(T *&ptr, const char *filename, size_t expecte
|
|||||||
size_t size = 0u;
|
size_t size = 0u;
|
||||||
INFO_LOG(Log::CPU, "Loading '%s'...", filename);
|
INFO_LOG(Log::CPU, "Loading '%s'...", filename);
|
||||||
ptr = reinterpret_cast<decltype(&*ptr)>(g_VFS.ReadFile(filename, &size));
|
ptr = reinterpret_cast<decltype(&*ptr)>(g_VFS.ReadFile(filename, &size));
|
||||||
if(!ptr || size != expected_size)
|
if (!ptr || size != expected_size) {
|
||||||
{
|
|
||||||
ERROR_LOG(Log::CPU, "Error loading '%s' (size=%u, expected: %u)", filename, (unsigned)size, (unsigned)expected_size);
|
ERROR_LOG(Log::CPU, "Error loading '%s' (size=%u, expected: %u)", filename, (unsigned)size, (unsigned)expected_size);
|
||||||
if(ptr) delete[] ptr;
|
delete[] ptr;
|
||||||
ptr = nullptr;
|
ptr = nullptr;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
@ -91,7 +91,6 @@ static Promise<VkShaderModule> *CompileShaderModuleAsync(VulkanContext *vulkan,
|
|||||||
#ifdef SHADERLOG
|
#ifdef SHADERLOG
|
||||||
OutputDebugStringA("OK");
|
OutputDebugStringA("OK");
|
||||||
#endif
|
#endif
|
||||||
if (tag)
|
|
||||||
delete tag;
|
delete tag;
|
||||||
}
|
}
|
||||||
return shaderModule;
|
return shaderModule;
|
||||||
|
@ -142,9 +142,7 @@ CtrlRegisterList::CtrlRegisterList(HWND _wnd)
|
|||||||
CtrlRegisterList::~CtrlRegisterList()
|
CtrlRegisterList::~CtrlRegisterList()
|
||||||
{
|
{
|
||||||
DeleteObject(font);
|
DeleteObject(font);
|
||||||
if (lastCat0Values != NULL)
|
|
||||||
delete [] lastCat0Values;
|
delete [] lastCat0Values;
|
||||||
if (changedCat0Regs != NULL)
|
|
||||||
delete [] changedCat0Regs;
|
delete [] changedCat0Regs;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -583,24 +583,20 @@ namespace MainWindow
|
|||||||
|
|
||||||
void DestroyDebugWindows() {
|
void DestroyDebugWindows() {
|
||||||
DialogManager::RemoveDlg(disasmWindow);
|
DialogManager::RemoveDlg(disasmWindow);
|
||||||
if (disasmWindow)
|
|
||||||
delete disasmWindow;
|
delete disasmWindow;
|
||||||
disasmWindow = nullptr;
|
disasmWindow = nullptr;
|
||||||
|
|
||||||
#if PPSSPP_API(ANY_GL)
|
#if PPSSPP_API(ANY_GL)
|
||||||
DialogManager::RemoveDlg(geDebuggerWindow);
|
DialogManager::RemoveDlg(geDebuggerWindow);
|
||||||
if (geDebuggerWindow)
|
|
||||||
delete geDebuggerWindow;
|
delete geDebuggerWindow;
|
||||||
geDebuggerWindow = nullptr;
|
geDebuggerWindow = nullptr;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
DialogManager::RemoveDlg(memoryWindow);
|
DialogManager::RemoveDlg(memoryWindow);
|
||||||
if (memoryWindow)
|
|
||||||
delete memoryWindow;
|
delete memoryWindow;
|
||||||
memoryWindow = nullptr;
|
memoryWindow = nullptr;
|
||||||
|
|
||||||
DialogManager::RemoveDlg(vfpudlg);
|
DialogManager::RemoveDlg(vfpudlg);
|
||||||
if (vfpudlg)
|
|
||||||
delete vfpudlg;
|
delete vfpudlg;
|
||||||
vfpudlg = nullptr;
|
vfpudlg = nullptr;
|
||||||
}
|
}
|
||||||
|
@ -443,9 +443,7 @@ namespace WindowsRawInput {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void Shutdown() {
|
void Shutdown() {
|
||||||
if (rawInputBuffer) {
|
|
||||||
free(rawInputBuffer);
|
free(rawInputBuffer);
|
||||||
}
|
|
||||||
rawInputBuffer = 0;
|
rawInputBuffer = 0;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user