diff options
author | Alon Levy <alevy@redhat.com> | 2011-06-17 21:25:32 +0200 |
---|---|---|
committer | Alon Levy <alevy@redhat.com> | 2011-06-17 21:25:32 +0200 |
commit | 03d3f0385befe6e742f28a1f524959d09e523ee3 (patch) | |
tree | 976b26685e0b35652b8fa121936a9097ef747f7a | |
parent | 1664d103cfe48f5994cd71a864868a2a385b3ebb (diff) |
display/res: better error message for FreeMem assert
-rw-r--r-- | display/res.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/display/res.c b/display/res.c index 1b8cf84..dd57491 100644 --- a/display/res.c +++ b/display/res.c @@ -344,8 +344,13 @@ static void *__AllocMem(PDev* pdev, UINT32 mspace_type, size_t size, BOOL force) static void FreeMem(PDev* pdev, UINT32 mspace_type, void *ptr) { ASSERT(pdev, pdev && pdev->Res->mspaces[mspace_type]._mspace); - ASSERT(pdev, (UINT8 *)ptr >= pdev->Res->mspaces[mspace_type].mspace_start && - (UINT8 *)ptr < pdev->Res->mspaces[mspace_type].mspace_end); + if (!((UINT8 *)ptr >= pdev->Res->mspaces[mspace_type].mspace_start && + (UINT8 *)ptr < pdev->Res->mspaces[mspace_type].mspace_end)) { + DebugPrint(pdev, 0, "ASSERT failed @ %s, %p not in [%p, %p) (%d)\n", __FUNCTION__, + ptr, pdev->Res->mspaces[mspace_type].mspace_start, + pdev->Res->mspaces[mspace_type].mspace_end, mspace_type); + EngDebugBreak(); + } EngAcquireSemaphore(pdev->Res->malloc_sem); mspace_free(pdev->Res->mspaces[mspace_type]._mspace, ptr); EngReleaseSemaphore(pdev->Res->malloc_sem); |