diff --git a/Core/HLE/sceMpeg.cpp b/Core/HLE/sceMpeg.cpp index 7989fb49ab..c8d830a9ef 100644 --- a/Core/HLE/sceMpeg.cpp +++ b/Core/HLE/sceMpeg.cpp @@ -197,6 +197,9 @@ static std::map mpegMap; static u32 lastMpegHandle = 0; MpegContext *getMpegCtx(u32 mpegAddr) { + if (!Memory::IsValidAddress(mpegAddr)) + return NULL; + u32 mpeg = Memory::Read_U32(mpegAddr); if (mpegMap.find(mpeg) == mpegMap.end()) @@ -205,10 +208,6 @@ MpegContext *getMpegCtx(u32 mpegAddr) { return mpegMap[mpeg]; } -u32 getMpegHandle(u32 mpeg) { - return Memory::Read_U32(mpeg); -} - static void InitRingbuffer(SceMpegRingBuffer *buf, int packets, int data, int size, int callback_addr, int callback_args) { buf->packets = packets; buf->packetsRead = 0;