Index: runtime/vm/code_patcher.cc |
=================================================================== |
--- runtime/vm/code_patcher.cc (revision 44996) |
+++ runtime/vm/code_patcher.cc (working copy) |
@@ -52,6 +52,7 @@ |
// The patch code buffer contains the jmp code which will be inserted at |
// entry point. |
void CodePatcher::PatchEntry(const Code& code) { |
+ ASSERT(!IsEntryPatched(code)); |
const uword patch_addr = code.GetEntryPatchPc(); |
ASSERT(patch_addr != 0); |
JumpPattern jmp_entry(patch_addr, code); |
@@ -76,6 +77,7 @@ |
// The entry point is a jmp instruction, the patch code buffer contains |
// original code, the entry point contains the jump instruction. |
void CodePatcher::RestoreEntry(const Code& code) { |
+ if (!IsEntryPatched(code)) return; |
const uword patch_addr = code.GetEntryPatchPc(); |
ASSERT(patch_addr != 0); |
JumpPattern jmp_entry(patch_addr, code); |