f656eab592
This adds ExecutionContextDescription.uniqueId for a system-unique way to identify an execution context and supports it in Runtime.evaluate. This allows a client to avoid accidentally executing an expression in a context different from that originally intended if a navigation occurs while Runtime.evaluate is in flight. Design doc: https://docs.google.com/document/d/1vGVWvKP9FTTX6kimcUJR_PAfVgDeIzXXITFpl0SyghQ Bug: v8:11268, chromium:1101897 Change-Id: I4c6bec562ffc85312559316f639d641780144039 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2594538 Commit-Queue: Andrey Kosyakov <caseq@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#71869}
62 lines
1.0 KiB
Plaintext
62 lines
1.0 KiB
Plaintext
Checks createContext().
|
|
{
|
|
method : Runtime.executionContextCreated
|
|
params : {
|
|
context : {
|
|
id : 1
|
|
name :
|
|
origin :
|
|
uniqueId : <uniqueId>
|
|
}
|
|
}
|
|
}
|
|
{
|
|
method : Runtime.executionContextCreated
|
|
params : {
|
|
context : {
|
|
id : 2
|
|
name :
|
|
origin :
|
|
uniqueId : <uniqueId>
|
|
}
|
|
}
|
|
}
|
|
{
|
|
id : <messageId>
|
|
result : {
|
|
debuggerId : <debuggerId>
|
|
}
|
|
}
|
|
#debugger;
|
|
|
|
setTimeout(x => x #* 3, 0)
|
|
|
|
Reported script's execution id: 2
|
|
{
|
|
method : Runtime.executionContextCreated
|
|
params : {
|
|
context : {
|
|
id : 1
|
|
name :
|
|
origin :
|
|
uniqueId : <uniqueId>
|
|
}
|
|
}
|
|
}
|
|
{
|
|
method : Runtime.executionContextCreated
|
|
params : {
|
|
context : {
|
|
id : 2
|
|
name :
|
|
origin :
|
|
uniqueId : <uniqueId>
|
|
}
|
|
}
|
|
}
|
|
#debugger;
|
|
|
|
setTimeout(x => x #* 3, 0)
|
|
|
|
Reported script's execution id: 2
|