diff options
author | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2014-12-31 09:20:48 -0200 |
---|---|---|
committer | Yuri Kunde Schlesner <yuriks@yuriks.net> | 2015-01-09 19:43:51 -0200 |
commit | d751de7341029dc8335a6766dcdf5c8dc047f0bc (patch) | |
tree | 377af7443462b50731ce8a817efbc6803a2b3d3c /src/core/hle/kernel/kernel.cpp | |
parent | 6ae12424df58f0ea171fc75ca4b700ab1fffc192 (diff) |
Kernel: Don't re-assign object's handle when duplicating one
Diffstat (limited to 'src/core/hle/kernel/kernel.cpp')
-rw-r--r-- | src/core/hle/kernel/kernel.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/core/hle/kernel/kernel.cpp b/src/core/hle/kernel/kernel.cpp index a1bc6c5d83..7d40dcbee7 100644 --- a/src/core/hle/kernel/kernel.cpp +++ b/src/core/hle/kernel/kernel.cpp @@ -44,7 +44,8 @@ ResultVal<Handle> HandleTable::Create(Object* obj) { objects[slot] = obj; Handle handle = generation | (slot << 15); - obj->handle = handle; + if (obj->handle == INVALID_HANDLE) + obj->handle = handle; return MakeResult<Handle>(handle); } |