mirror of
https://github.com/shadps4-emu/shadPS4.git
synced 2026-04-26 08:15:59 +03:00
[PR #2938] [MERGED] Proper error handling for MapMemory errors #3096
Labels
No labels
Bloodborne
bug
contributor wanted
documentation
enhancement
frontend
good first issue
help wanted
linux
pull-request
question
release
verification progress
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/shadPS4#3096
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/shadps4-emu/shadPS4/pull/2938
Author: @StevenMiller123
Created: 5/15/2025
Status: ✅ Merged
Merged: 5/16/2025
Merged by: @georgemoralis
Base:
main← Head:mapmemory-assert-remove📝 Commits (9)
e250119Properly handle ENOMEM error return in MapMemory582766fMerge branch 'shadps4-emu:main' into mapmemory-assert-removeaff59c3Merge branch 'shadps4-emu:main' into mapmemory-assert-remove88b1e0dMerge branch 'shadps4-emu:main' into mapmemory-assert-remove1d319eeChange error messagedc25dd6Clangfbab952Attempt to handle MemoryMapFlags::NoOverwrite8258a4bFix flag description1296c1fMove overwrite check to while condition📊 Changes
1 file changed (+8 additions, -5 deletions)
View changed files
📝
src/core/memory.cpp(+8 -5)📄 Description
On real hardware, most functions we've attached to MapMemory will return ENOMEM if they've got flag
MAP_FIXEDand try mapping to already mapped addresses.Handling this error case properly is necessary for Assassin's Creed® Unity (CUSA00663) and Need for Speed™ Heat (CUSA15081) to progress further.
Once this is merged, I'll probably start an aggregate issue for tracking known memory issues, as this will make it harder to identify them.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.