Skip to content

Commit 77e5855

Browse files
Connor ClarkDevtools-frontend LUCI CQ
authored andcommitted
[RPP] Fix some issues in ScriptsHandlers wrt enhanced traces
1. Remove the check for old/broken enhanced traces not having valid source map urls. Just allow the source map resolver to error. We expect few if any of these traces exist. 2. Fix some wrong types related to enhanced trace events, which resulted in errors. Bug: 394373632 Change-Id: I9aceba4bf1caebe6801a8bd72ff6a387f2b100fa Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6282446 Reviewed-by: Paul Irish <[email protected]> Commit-Queue: Connor Clark <[email protected]> Auto-Submit: Connor Clark <[email protected]>
1 parent b5a7775 commit 77e5855

File tree

3 files changed

+13
-10
lines changed

3 files changed

+13
-10
lines changed

front_end/models/trace/handlers/ScriptsHandler.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export function handleEvent(event: Types.Events.Event): void {
3333
const getOrMakeScript = (scriptId: Protocol.Runtime.ScriptId): Script =>
3434
Platform.MapUtilities.getWithDefault(scriptById, scriptId, () => ({scriptId, frame: '', ts: 0} as Script));
3535

36-
if (Types.Events.isTargetRundownEvent(event)) {
36+
if (Types.Events.isTargetRundownEvent(event) && event.args.data) {
3737
const {scriptId, frame} = event.args.data;
3838
const script = getOrMakeScript(scriptId);
3939
script.frame = frame;
@@ -46,14 +46,13 @@ export function handleEvent(event: Types.Events.Event): void {
4646
const {scriptId, url, sourceMapUrl} = event.args.data;
4747
const script = getOrMakeScript(scriptId);
4848
script.url = url;
49-
// Ignore nonsense values, which is what this was when initially implemented.
50-
// TODO(cjamcl): https://g-issues.chromium.org/issues/337909145#comment15
51-
if (sourceMapUrl && sourceMapUrl !== url && sourceMapUrl.endsWith('.json')) {
49+
if (sourceMapUrl) {
5250
script.sourceMapUrl = sourceMapUrl;
5351
}
5452
return;
5553
}
5654

55+
// TODO(cjamcl): handle `LargeScriptCatchup` variant.
5756
if (Types.Events.isScriptSourceRundownEvent(event)) {
5857
const {scriptId, sourceText} = event.args.data;
5958
const script = getOrMakeScript(scriptId);

front_end/models/trace/types/TraceEvents.ts

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3073,9 +3073,10 @@ export interface LegacyLayerPaintEventPicture {
30733073
}
30743074

30753075
export interface TargetRundownEvent extends Event {
3076-
cat: 'disabled-by-default-devtools.v8-source-rundown';
3076+
cat: 'disabled-by-default-devtools.target-rundown';
3077+
name: 'ScriptCompiled';
30773078
args: Args&{
3078-
data: {
3079+
data?: {
30793080
frame: Protocol.Page.FrameId,
30803081
frameType: string,
30813082
url: string,
@@ -3090,11 +3091,12 @@ export interface TargetRundownEvent extends Event {
30903091
}
30913092

30923093
export function isTargetRundownEvent(event: Event): event is TargetRundownEvent {
3093-
return event.cat === 'disabled-by-default-devtools.target-rundown';
3094+
return event.cat === 'disabled-by-default-devtools.target-rundown' && event.name === 'ScriptCompiled';
30943095
}
30953096

30963097
export interface ScriptRundownEvent extends Event {
30973098
cat: 'disabled-by-default-devtools.v8-source-rundown';
3099+
name: 'ScriptCatchup';
30983100
args: Args&{
30993101
data: {
31003102
isolate: string,
@@ -3104,21 +3106,23 @@ export interface ScriptRundownEvent extends Event {
31043106
startColumn: number,
31053107
endLine: number,
31063108
endColumn: number,
3107-
url: string,
31083109
hash: string,
31093110
isModule: boolean,
31103111
hasSourceUrl: boolean,
3112+
url?: string,
3113+
sourceUrl?: string,
31113114
sourceMapUrl?: string,
31123115
},
31133116
};
31143117
}
31153118

31163119
export function isScriptRundownEvent(event: Event): event is ScriptRundownEvent {
3117-
return event.cat === 'disabled-by-default-devtools.v8-source-rundown';
3120+
return event.cat === 'disabled-by-default-devtools.v8-source-rundown' && event.name === 'ScriptCatchup';
31183121
}
31193122

31203123
export interface ScriptSourceRundownEvent extends Event {
31213124
cat: 'disabled-by-default-devtools.v8-source-rundown-sources';
3125+
name: 'ScriptCatchup';
31223126
args: Args&{
31233127
data: {
31243128
isolate: string,
@@ -3130,5 +3134,5 @@ export interface ScriptSourceRundownEvent extends Event {
31303134
}
31313135

31323136
export function isScriptSourceRundownEvent(event: Event): event is ScriptSourceRundownEvent {
3133-
return event.cat === 'disabled-by-default-devtools.v8-source-rundown-sources';
3137+
return event.cat === 'disabled-by-default-devtools.v8-source-rundown-sources' && event.name === 'ScriptCatchup';
31343138
}
16 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)