# STEPS TO REPRODUCE 1. inspect <http://acko.net> 2. take a single-frame canvas recording Uncaught Exceptions: ----------------------- - null is not an object (evaluating 'this._listeners.get') (at Object.js:83:52) removeEventListener @ Object.js:83:52 ondetach @ ShaderProgramTreeElement.js:66:55 _detach @ TreeElement.js:294:26 removeChildren @ TreeOutline.js:382:26 removeChildren @ FolderizedTreeElement.js:74:29 onpopulate @ CanvasTreeElement.js:75:28 expand @ TreeElement.js:412:28 reveal @ TreeElement.js:488:39 revealAndSelect @ TreeElement.js:551:20 _revealAndSelectRepresentedObject @ ContentBrowserTabContentView.js:307:40 _contentBrowserCurrentContentViewDidChange @ ContentBrowserTabContentView.js:289:47 dispatch @ Object.js:129:35 dispatchEventToListeners @ Object.js:137:17 _currentContentViewDidChange @ ContentBrowser.js:540:38 dispatch @ Object.js:129:35 dispatchEventToListeners @ Object.js:137:17 showBackForwardEntryForIndex @ ContentViewContainer.js:164:38 showContentView @ ContentViewContainer.js:141:42 showRepresentedObject @ ContentBrowserTabContentView.js:218:64 showRepresentedObject @ GraphicsTabContentView.js:108:36 _addRecording @ GraphicsTabContentView.js:262:39 _handleRecordingSavedOrStopped @ GraphicsTabContentView.js:309:27 dispatch @ Object.js:129:35 dispatchEventToListeners @ Object.js:145:21 recordingFinished @ Canvas.js:427:38 recordingFinished @ CanvasManager.js:232:33 recordingFinished @ CanvasObserver.js:62:43 _dispatchEvent @ Connection.js:210:26 dispatch @ Connection.js:79:32 dispatchMessageFromTarget @ TargetManager.js:176:39 dispatchMessageFromTarget @ TargetObserver.js:47:51 _dispatchEvent @ Connection.js:210:26 dispatch @ Connection.js:79:32 dispatch @ InspectorBackend.js:232:52 ? @ MessageDispatcher.js:42:34 Additional Details: cause --> An uncaught exception was thrown while handling event: Canvas.recordingFinished ----------------------- Notes: Inspected URL: http://acko.net/ Loading completed: true Frontend User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Dispatch Source: Protocol Event Protocol Event: {"method":"Canvas.recordingFinished","params":{"canvasId":"canvas:0.6","recording":{"version":1,"type":"canvas-webgl","initialState":{"attributes":{"width":1068,"height":1228},"parameters":[{"alpha":false,"depth":true,"stencil":false,"antialias":true,"premultipliedAlpha":true,"preserveDrawingBuffer":false,"failIfMajorPerformanceCaveat":false}],"content":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABCwAAATMCAYAAABMVhYSAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABA…
Created attachment 426189 [details] Patch
Comment on attachment 426189 [details] Patch r=me Sad to be covering up this problem. We need to prioritize fixing the followup, since we now know what the design issue is.
Comment on attachment 426189 [details] Patch (In reply to BJ Burg from comment #2) > Sad to be covering up this problem. We need to prioritize fixing the followup, since we now know what the design issue is. Yeah I agree :( I remember making a decision not to add these early-return in r269359 because my thought was "this should never happen as we'd consider it an error", but since then I've seen it be an issue a handful of times, so I'd rather not have that happen to actual developers.
Committed r276146 (236639@main): <https://commits.webkit.org/236639@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 426189 [details].
<rdar://problem/77110123>