You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
1.8 KiB
30 lines
1.8 KiB
diff -up webkitgtk-2.14.7/Source/JavaScriptCore/bytecode/CodeBlock.cpp.b132333 webkitgtk-2.14.7/Source/JavaScriptCore/bytecode/CodeBlock.cpp |
|
--- webkitgtk-2.14.7/Source/JavaScriptCore/bytecode/CodeBlock.cpp.b132333 2017-02-07 09:05:07.000000000 +0100 |
|
+++ webkitgtk-2.14.7/Source/JavaScriptCore/bytecode/CodeBlock.cpp 2017-06-16 10:34:57.859748036 +0200 |
|
@@ -2186,7 +2186,12 @@ void CodeBlock::finishCreation(VM& vm, S |
|
instructions[i + 5].u.watchpointSet = op.watchpointSet; |
|
else if (op.structure) |
|
instructions[i + 5].u.structure.set(vm, this, op.structure); |
|
- instructions[i + 6].u.pointer = reinterpret_cast<void*>(op.operand); |
|
+ |
|
+ if (op.type == ClosureVar || op.type == ClosureVarWithVarInjectionChecks || op.type == GlobalProperty || op.type == GlobalPropertyWithVarInjectionChecks || op.type == ModuleVar) |
|
+ instructions[i + 6].u.operand = op.operand; |
|
+ else |
|
+ instructions[i + 6].u.pointer = reinterpret_cast<void*>(op.operand); |
|
+ |
|
break; |
|
} |
|
|
|
@@ -2222,7 +2227,11 @@ void CodeBlock::finishCreation(VM& vm, S |
|
op.watchpointSet->invalidate(vm, PutToScopeFireDetail(this, ident)); |
|
} else if (op.structure) |
|
instructions[i + 5].u.structure.set(vm, this, op.structure); |
|
- instructions[i + 6].u.pointer = reinterpret_cast<void*>(op.operand); |
|
+ |
|
+ if (op.type == ClosureVar || op.type == ClosureVarWithVarInjectionChecks || op.type == GlobalProperty || op.type == GlobalPropertyWithVarInjectionChecks || op.type == ModuleVar) |
|
+ instructions[i + 6].u.operand = op.operand; |
|
+ else |
|
+ instructions[i + 6].u.pointer = reinterpret_cast<void*>(op.operand); |
|
|
|
break; |
|
}
|
|
|