Flaky NOTREACHED in blink::ScriptWrappableVisitorVerifier::pushToMarkingDeque in WebglConformance_conformance_context_context_lost_restored test |
||||
Issue descriptionSeen here: https://build.chromium.org/p/chromium.gpu.fyi/builders/Linux%20Release%20%28NVIDIA%20GeForce%20730%29/builds/4016/steps/webgl2_conformance_tests/logs/stdio and here: https://build.chromium.org/p/chromium.gpu.fyi/builders/Linux%20Release%20%28New%20Intel%29/builds/3594/steps/webgl2_conformance_tests/logs/stdio 1:1:0103/083852.149657:FATAL:ScriptWrappableVisitorVerifier.h(54)] Check failed: false. #0 0x7ff771a4258e base::debug::StackTrace::StackTrace() #1 0x7ff771a5b8cb logging::LogMessage::~LogMessage() #2 0x7ff773d6d0b1 blink::ScriptWrappableVisitorVerifier::pushToMarkingDeque() #3 0x7ff774fa3d69 blink::WebGLRenderingContextBase::traceWrappers() #4 0x7ff773dbb886 blink::TraceTrait<>::traceMarkedWrapper() #5 0x7ff773d6b769 blink::ScriptWrappableVisitor::TraceEpilogue() #6 0x7ff770681951 v8::internal::MarkCompactCollector::MarkLiveObjects() #7 0x7ff770680ae2 v8::internal::MarkCompactCollector::CollectGarbage() #8 0x7ff77065d783 v8::internal::Heap::MarkCompact() #9 0x7ff77065bd58 v8::internal::Heap::PerformGarbageCollection() #10 0x7ff77065b051 v8::internal::Heap::CollectGarbage() #11 0x7ff77066c2b8 v8::internal::Heap::FinalizeIncrementalMarkingIfComplete() #12 0x7ff770676cad v8::internal::IncrementalMarkingJob::Task::RunInternal() #13 0x7ff771aee4ce base::debug::TaskAnnotator::RunTask() #14 0x7ff773c694f0 blink::scheduler::TaskQueueManager::ProcessTaskFromWorkQueue() #15 0x7ff773c67dd4 blink::scheduler::TaskQueueManager::DoWork() #16 0x7ff771899cdb _ZN4base8internal12InvokeHelperILb1EvE8MakeItSoIRKMN13safe_browsing24IncidentReportingServiceEFvPNS5_13UploadContextEbERKNS_7WeakPtrIS5_EEJRKS7_bEEEvOT_OT0_DpOT1_ #17 0x7ff771aee4ce base::debug::TaskAnnotator::RunTask() #18 0x7ff771a62bdd base::MessageLoop::RunTask() #19 0x7ff771a63296 base::MessageLoop::DoWork() #20 0x7ff771a64ca9 base::MessagePumpDefault::Run() #21 0x7ff771a62935 base::MessageLoop::RunHandler() #22 0x7ff771a893bc base::RunLoop::Run() #23 0x7ff7750e6c98 content::RendererMain() #24 0x7ff77160eee7 content::RunZygote() #25 0x7ff77160f618 content::RunNamedProcessTypeMain() #26 0x7ff771610036 content::ContentMainRunnerImpl::Run() #27 0x7ff77160ea80 content::ContentMain() #28 0x7ff76fe84d21 ChromeMain #29 0x7ff76892bec5 __libc_start_main #30 0x7ff76fe84bb1 <unknown>
,
Jan 3 2017
,
Jan 4 2017
fyi: I have an idea to get better error message. It will require some refactoring steps to get there though. Stay tuned.
,
Jan 4 2017
Seeing this on Mac as well: https://build.chromium.org/p/chromium.gpu.fyi/builders/Mac%2010.11%20Retina%20Release%20%28AMD%29/builds/1233/steps/webgl2_conformance_tests/logs/stdio WebglConformance_conformance_context_context_lost_restored (gpu_tests.webgl_conformance_integration_test.WebGLConformanceIntegrationTest) ... [8727:1295:0104/121740.628399:INFO:CONSOLE(1)] "WebGL: INVALID_OPERATION: restoreContext: context restoration not allowed", source: (1) [8727:1295:0104/121740.652765:INFO:CONSOLE(1)] "WebGL: INVALID_OPERATION: bindTexture: object not from this context", source: (1) [8727:1295:0104/121740.653160:INFO:CONSOLE(1)] "WebGL: INVALID_OPERATION: useProgram: object not from this context", source: (1) [8727:1295:0104/121740.653497:INFO:CONSOLE(1)] "WebGL: INVALID_OPERATION: bindBuffer: object not from this context", source: (1) [8731:775:0104/121740.661810:FATAL:ScriptWrappableVisitorVerifier.h(54)] Check failed: false. 0 Chromium Framework 0x00000001066f2ae3 _ZN4base5debug10StackTraceC1Ev + 19 1 Chromium Framework 0x0000000106716ef7 _ZN7logging10LogMessageD2Ev + 71 2 Chromium Framework 0x000000010a2e42c8 _ZNK5blink30ScriptWrappableVisitorVerifier18pushToMarkingDequeEPFvPKNS_14WrapperVisitorEPKvEPFPNS_16HeapObjectHeaderES5_ES5_ + 168 3 Chromium Framework 0x000000010bbca3eb _ZNK5blink25WebGLRenderingContextBase13traceWrappersEPKNS_14WrapperVisitorE + 1147 4 Chromium Framework 0x000000010acee95b _ZN5blink10TraceTraitINS_22CanvasRenderingContextEE18traceMarkedWrapperEPKNS_14WrapperVisitorEPKv + 203 5 Chromium Framework 0x000000010a2e25b9 _ZN5blink22ScriptWrappableVisitor13TraceEpilogueEv + 393 6 Chromium Framework 0x0000000104cf3cf2 _ZN2v88internal20MarkCompactCollector15MarkLiveObjectsEv + 3474 7 Chromium Framework 0x0000000104cf2ea7 _ZN2v88internal20MarkCompactCollector14CollectGarbageEv + 23 8 Chromium Framework 0x0000000104cc7e57 _ZN2v88internal4Heap11MarkCompactEv + 439 9 Chromium Framework 0x0000000104cc6277 _ZN2v88internal4Heap24PerformGarbageCollectionENS0_16GarbageCollectorENS_15GCCallbackFlagsE + 1095 10 Chromium Framework 0x0000000104cc54d3 _ZN2v88internal4Heap14CollectGarbageENS0_16GarbageCollectorENS0_23GarbageCollectionReasonEPKcNS_15GCCallbackFlagsE + 1203 11 Chromium Framework 0x0000000104cd85ab _ZN2v88internal4Heap36FinalizeIncrementalMarkingIfCompleteENS0_23GarbageCollectionReasonE + 379 12 Chromium Framework 0x0000000104ce8332 _ZN2v88internal21IncrementalMarkingJob4Task11RunInternalEv + 178 13 Chromium Framework 0x00000001066f3211 _ZN4base5debug13TaskAnnotator7RunTaskEPKcPNS_11PendingTaskE + 225 14 Chromium Framework 0x000000010a0b1d48 _ZN5blink9scheduler16TaskQueueManager24ProcessTaskFromWorkQueueEPNS0_8internal9WorkQueueEPNS0_7LazyNowE + 1320 15 Chromium Framework 0x000000010a0b0393 _ZN5blink9scheduler16TaskQueueManager6DoWorkEN4base9TimeTicksEb + 771 16 Chromium Framework 0x000000010a0b32e4 _ZN4base8internal12InvokeHelperILb1EvE8MakeItSoIRKMN5blink9scheduler16TaskQueueManagerEFvNS_9TimeTicksEbERKNS_7WeakPtrIS6_EEJRKS7_RKbEEEvOT_OT0_DpOT1_ + 196 17 Chromium Framework 0x00000001066f3211 _ZN4base5debug13TaskAnnotator7RunTaskEPKcPNS_11PendingTaskE + 225 18 Chromium Framework 0x000000010672f5d9 _ZN4base11MessageLoop7RunTaskEPNS_11PendingTaskE + 425 19 Chromium Framework 0x000000010672f99c _ZN4base11MessageLoop21DeferOrRunPendingTaskENS_11PendingTaskE + 44 20 Chromium Framework 0x000000010672fe93 _ZN4base11MessageLoop6DoWorkEv + 467 21 Chromium Framework 0x0000000106734aa0 _ZN4base24MessagePumpCFRunLoopBase7RunWorkEv + 48 22 Chromium Framework 0x000000010671836a _ZN4base3mac15CallWithEHFrameEU13block_pointerFvvE + 10 23 Chromium Framework 0x0000000106734474 _ZN4base24MessagePumpCFRunLoopBase13RunWorkSourceEPv + 68 24 CoreFoundation 0x00007fff8c57a881 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 25 CoreFoundation 0x00007fff8c559fbc __CFRunLoopDoSources0 + 556 26 CoreFoundation 0x00007fff8c5594df __CFRunLoopRun + 927 27 CoreFoundation 0x00007fff8c558ed8 CFRunLoopRunSpecific + 296 28 Foundation 0x00007fff85cc7ed9 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 270 29 Chromium Framework 0x00000001067353de _ZN4base20MessagePumpNSRunLoop5DoRunEPNS_11MessagePump8DelegateE + 126 30 Chromium Framework 0x00000001067348f7 _ZN4base24MessagePumpCFRunLoopBase3RunEPNS_11MessagePump8DelegateE + 119 31 Chromium Framework 0x000000010672f31b _ZN4base11MessageLoop10RunHandlerEv + 363 32 Chromium Framework 0x0000000106766759 _ZN4base7RunLoop3RunEv + 137 33 Chromium Framework 0x000000010bdee503 _ZN7content12RendererMainERKNS_18MainFunctionParamsE + 739 34 Chromium Framework 0x00000001060d1040 _ZN7content21ContentMainRunnerImpl3RunEv + 528 35 Chromium Framework 0x00000001060d00d6 _ZN7content11ContentMainERKNS_17ContentMainParamsE + 54 36 Chromium Framework 0x000000010423bcab ChromeMain + 75 37 Chromium Helper 0x0000000104003daa main + 522 38 libdyld.dylib 0x00007fff88ca55ad start + 1 39 ??? 0x000000000000001a 0x0 + 26 Looks like this only happens in WebglConformance_conformance_context_context_lost_restored test in webgl2_conformance_tests suite, maybe this can give some hint?
,
Jan 4 2017
Hmm. That's an excellent point Yuly. I note that DEFINE_TRACE_WRAPPERS(WebGL2RenderingContextBase) short-circuits if isContextLost(), but DEFINE_TRACE_WRAPPERS(WebGLRenderingContextBase) doesn't. Is that the bug? Should it stop doing the short-circuit, since plausibly the wrappers should still be kept alive by the now-lost context?
,
Jan 4 2017
I am suspicious wrt. to the short-circuit in WebGL2RenderingContextBase. This has been copied from object grouping, but in general we should determine liveness by having references, and not by querying a property. Having said that, the problem here seems to be CanvasRenderingContext which is a WebGLRenderingContextBase (*not* WebGL2RenderingContextBase). I am OOO till next week and will have another look then.
,
Jan 5 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/c8f2be9535cf78f61faa9e946547eb7885f87f53 commit c8f2be9535cf78f61faa9e946547eb7885f87f53 Author: mlippautz <mlippautz@chromium.org> Date: Thu Jan 05 12:31:25 2017 [wrapper-tracing] Enhance verifier output ScriptWrappableVisitorVerifier will now put a callback containing the type that missed the write barrier on the stacktrace. BUG= 468240 , 678016 Review-Url: https://codereview.chromium.org/2615653002 Cr-Commit-Position: refs/heads/master@{#441627} [modify] https://crrev.com/c8f2be9535cf78f61faa9e946547eb7885f87f53/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitor.h [modify] https://crrev.com/c8f2be9535cf78f61faa9e946547eb7885f87f53/third_party/WebKit/Source/bindings/core/v8/ScriptWrappableVisitorVerifier.h [modify] https://crrev.com/c8f2be9535cf78f61faa9e946547eb7885f87f53/third_party/WebKit/Source/platform/heap/WrapperVisitor.h
,
Jan 6 2017
Are these the missed barriers? WebglConformance_conformance_context_context_lost_restored (gpu_tests.webgl_conformance_integration_test.WebGLConformanceIntegrationTest) ... [28270:28270:0105/175142.472109:INFO:CONSOLE(1)] "WebGL: INVALID_OPERATION: restoreContext: context restoration not allowed", source: (1) [28270:28270:0105/175142.522827:INFO:CONSOLE(1)] "WebGL: INVALID_OPERATION: bindTexture: object not from this context", source: (1) [28270:28270:0105/175142.523286:INFO:CONSOLE(1)] "WebGL: INVALID_OPERATION: useProgram: object not from this context", source: (1) [28270:28270:0105/175142.523704:INFO:CONSOLE(1)] "WebGL: INVALID_OPERATION: bindBuffer: object not from this context", source: (1) [1:1:0105/175142.532360:FATAL:WrapperVisitor.h(95)] Check failed: false. #0 0x7f083dbeec3e base::debug::StackTrace::StackTrace() #1 0x7f083dc07f7b logging::LogMessage::~LogMessage() #2 0x7f083ff22185 blink::WrapperVisitor::missedWriteBarrier<>() #3 0x7f083ff2123a blink::ScriptWrappableVisitorVerifier::pushToMarkingDeque() #4 0x7f084116142e blink::WebGLRenderingContextBase::traceWrappers() #5 0x7f083ff6fa46 blink::TraceTrait<>::traceMarkedWrapper() #6 0x7f083ff1f8d9 blink::ScriptWrappableVisitor::TraceEpilogue() #7 0x7f083c807f21 v8::internal::MarkCompactCollector::MarkLiveObjects() #8 0x7f083c8070a2 v8::internal::MarkCompactCollector::CollectGarbage() #9 0x7f083c7e3d43 v8::internal::Heap::MarkCompact() #10 0x7f083c7e2318 v8::internal::Heap::PerformGarbageCollection() #11 0x7f083c7e1611 v8::internal::Heap::CollectGarbage() #12 0x7f083c7f2878 v8::internal::Heap::FinalizeIncrementalMarkingIfComplete() #13 0x7f083c7fd26d v8::internal::IncrementalMarkingJob::Task::RunInternal() #14 0x7f083dc9ab2e base::debug::TaskAnnotator::RunTask() #15 0x7f083fe1da90 blink::scheduler::TaskQueueManager::ProcessTaskFromWorkQueue() #16 0x7f083fe1c374 blink::scheduler::TaskQueueManager::DoWork() #17 0x7f083da46a2b _ZN4base8internal12InvokeHelperILb1EvE8MakeItSoIRKMN13safe_browsing24IncidentReportingServiceEFvPNS5_13UploadContextEbERKNS_7WeakPtrIS5_EEJRKS7_bEEEvOT_OT0_DpOT1_ #18 0x7f083dc9ab2e base::debug::TaskAnnotator::RunTask() #19 0x7f083dc0f28d base::MessageLoop::RunTask() #20 0x7f083dc0f946 base::MessageLoop::DoWork() #21 0x7f083dc11359 base::MessagePumpDefault::Run() #22 0x7f083dc0efe5 base::MessageLoop::RunHandler() #23 0x7f083dc35a3c base::RunLoop::Run() #24 0x7f08412a43c8 content::RendererMain() #25 0x7f083d7bb917 content::RunZygote() #26 0x7f083d7bc048 content::RunNamedProcessTypeMain() #27 0x7f083d7bca66 content::ContentMainRunnerImpl::Run() #28 0x7f083d7bb4b0 content::ContentMain() #29 0x7f083c00d9e1 ChromeMain #30 0x7f0834ab3ec5 __libc_start_main #31 0x7f083c00d871 <unknown> https://build.chromium.org/p/chromium.gpu.fyi/builders/Linux%20Release%20%28AMD%20R5%20230%29/builds/540/steps/webgl2_conformance_tests/logs/stdio Also https://build.chromium.org/p/chromium.gpu.fyi/builders/Mac%2010.11%20Retina%20Release%20%28AMD%29/builds/1237/steps/webgl2_conformance_tests/logs/stdio
,
Jan 6 2017
Yes, thanks. The Mac stack trace provides better symbols. We somehow miss the barrier for the ExtensionTracker (which should be automatic). Will have a look on Monday.
,
Jan 9 2017
Stack trace I am investigating now: https://build.chromium.org/p/chromium.gpu.fyi/builders/Mac%2010.11%20Retina%20Release%20%28AMD%29/builds/1270/steps/webgl2_conformance_tests/logs/stdio [8195:775:0108/150150.575885:FATAL:WrapperVisitor.h(95)] Check failed: false. 0 Chromium Framework 0x000000010c9eaed3 _ZN4base5debug10StackTraceC1Ev + 19 1 Chromium Framework 0x000000010ca0f2d7 _ZN7logging10LogMessageD2Ev + 71 2 Chromium Framework 0x0000000111ef2e1c _ZN5blink14WrapperVisitor18missedWriteBarrierINS_25WebGLRenderingContextBase16ExtensionTrackerEEEvv + 76 3 Chromium Framework 0x00000001105e42af _ZNK5blink30ScriptWrappableVisitorVerifier18pushToMarkingDequeEPFvPKNS_14WrapperVisitorEPKvEPFPNS_16HeapObjectHeaderES5_EPFvvES5_ + 111 4 Chromium Framework 0x0000000111ee2820 _ZNK5blink25WebGLRenderingContextBase13traceWrappersEPKNS_14WrapperVisitorE + 1200 5 Chromium Framework 0x0000000110ff813b _ZN5blink10TraceTraitINS_22CanvasRenderingContextEE18traceMarkedWrapperEPKNS_14WrapperVisitorEPKv + 203 6 Chromium Framework 0x00000001105e25d9 _ZN5blink22ScriptWrappableVisitor13TraceEpilogueEv + 393 7 Chromium Framework 0x000000010afba672 _ZN2v88internal20MarkCompactCollector15MarkLiveObjectsEv + 3474 8 Chromium Framework 0x000000010afb9827 _ZN2v88internal20MarkCompactCollector14CollectGarbageEv + 23 9 Chromium Framework 0x000000010af8e7d7 _ZN2v88internal4Heap11MarkCompactEv + 439 10 Chromium Framework 0x000000010af8cbf7 _ZN2v88internal4Heap24PerformGarbageCollectionENS0_16GarbageCollectorENS_15GCCallbackFlagsE + 1095 11 Chromium Framework 0x000000010af8be53 _ZN2v88internal4Heap14CollectGarbageENS0_16GarbageCollectorENS0_23GarbageCollectionReasonEPKcNS_15GCCallbackFlagsE + 1203 12 Chromium Framework 0x000000010af9ef2b _ZN2v88internal4Heap36FinalizeIncrementalMarkingIfCompleteENS0_23GarbageCollectionReasonE + 379 13 Chromium Framework 0x000000010afaecb2 _ZN2v88internal21IncrementalMarkingJob4Task11RunInternalEv + 178 14 Chromium Framework 0x000000010c9eb5f1 _ZN4base5debug13TaskAnnotator7RunTaskEPKcPNS_11PendingTaskE + 225 15 Chromium Framework 0x00000001103b1df8 _ZN5blink9scheduler16TaskQueueManager24ProcessTaskFromWorkQueueEPNS0_8internal9WorkQueueEPNS0_7LazyNowE + 1320 16 Chromium Framework 0x00000001103b0443 _ZN5blink9scheduler16TaskQueueManager6DoWorkEN4base9TimeTicksEb + 771 17 Chromium Framework 0x00000001103b3394 _ZN4base8internal12InvokeHelperILb1EvE8MakeItSoIRKMN5blink9scheduler16TaskQueueManagerEFvNS_9TimeTicksEbERKNS_7WeakPtrIS6_EEJRKS7_RKbEEEvOT_OT0_DpOT1_ + 196 18 Chromium Framework 0x000000010c9eb5f1 _ZN4base5debug13TaskAnnotator7RunTaskEPKcPNS_11PendingTaskE + 225 19 Chromium Framework 0x000000010ca279b9 _ZN4base11MessageLoop7RunTaskEPNS_11PendingTaskE + 425 20 Chromium Framework 0x000000010ca27d7c _ZN4base11MessageLoop21DeferOrRunPendingTaskENS_11PendingTaskE + 44 21 Chromium Framework 0x000000010ca28273 _ZN4base11MessageLoop6DoWorkEv + 467 22 Chromium Framework 0x000000010ca2ce80 _ZN4base24MessagePumpCFRunLoopBase7RunWorkEv + 48 23 Chromium Framework 0x000000010ca1074a _ZN4base3mac15CallWithEHFrameEU13block_pointerFvvE + 10 24 Chromium Framework 0x000000010ca2c854 _ZN4base24MessagePumpCFRunLoopBase13RunWorkSourceEPv + 68 25 CoreFoundation 0x00007fff8db1b881 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 26 CoreFoundation 0x00007fff8dafafbc __CFRunLoopDoSources0 + 556 27 CoreFoundation 0x00007fff8dafa4df __CFRunLoopRun + 927 28 CoreFoundation 0x00007fff8daf9ed8 CFRunLoopRunSpecific + 296 29 Foundation 0x00007fff87268ed9 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 270 30 Chromium Framework 0x000000010ca2d7be _ZN4base20MessagePumpNSRunLoop5DoRunEPNS_11MessagePump8DelegateE + 126 31 Chromium Framework 0x000000010ca2ccd7 _ZN4base24MessagePumpCFRunLoopBase3RunEPNS_11MessagePump8DelegateE + 119 32 Chromium Framework 0x000000010ca276fb _ZN4base11MessageLoop10RunHandlerEv + 363 33 Chromium Framework 0x000000010ca5eaf9 _ZN4base7RunLoop3RunEv + 137 34 Chromium Framework 0x00000001121071a3 _ZN7content12RendererMainERKNS_18MainFunctionParamsE + 739 35 Chromium Framework 0x000000010c3c9190 _ZN7content21ContentMainRunnerImpl3RunEv + 528 36 Chromium Framework 0x000000010c3c8226 _ZN7content11ContentMainERKNS_17ContentMainParamsE + 54 37 Chromium Framework 0x000000010a4fa7ab ChromeMain + 75 38 Chromium Helper 0x000000010a2c2daa main + 522 39 libdyld.dylib 0x00007fff8a2465ad start + 1
,
Jan 9 2017
I have a theory and it is indeed related to the conditional short-circuiting in WebGL2RenderingContextBase. Since WebGL2RenderingContextBase inherits from WebGLRenderingContextBase we can get into a state where WebGL2RenderingContextBase lost its context and thus we would bail out of tracing. If later on we again we reattach to a context (*) then this behavior is wrong as we assume that we have traced all fields that require tracing. The tl;dr version is that we are not allowed to short-circuit during tracing because we don't have atomic snapshots as we had with object grouping. kbr: Can the case in (*) happen? I will prepare a CL.
,
Jan 9 2017
(As far as I understand, it can happen.)
,
Jan 9 2017
mlippautz@: yes, that can happen, and is specifically what this test exercises. The "restored" part of "context_lost_restored" is what revives the context from the lost state. Thanks for taking care of this. Yes, please put together a CL removing the short-circuiting of the tracing.
,
Jan 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/55871d7b7bf86a7e67cd5380d6fb2e1ffdc44f98 commit 55871d7b7bf86a7e67cd5380d6fb2e1ffdc44f98 Author: mlippautz <mlippautz@chromium.org> Date: Mon Jan 09 22:40:00 2017 [wrapper-tracing] Fix tracing of WebGL2RenderingContextBase We are not allowed to short-circuit tracing here (and actually nowhere) because the rendering context can regain a context and at this point tracing is off, i.e., the object is already black but members have not been traced. We don't want black to white transitions in wrapper tracing, so just trace the body of WebGL2RenderingContextBase unconditionally. The overhead should be negligible. BUG= chromium:678016 CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Review-Url: https://codereview.chromium.org/2623513003 Cr-Commit-Position: refs/heads/master@{#442379} [modify] https://crrev.com/55871d7b7bf86a7e67cd5380d6fb2e1ffdc44f98/third_party/WebKit/Source/modules/webgl/WebGL2RenderingContextBase.cpp
,
Jan 10 2017
This should be fixed now. Please reopen if you disagree. |
||||
►
Sign in to add a comment |
||||
Comment 1 by mlippautz@chromium.org
, Jan 3 2017Components: Blink>Bindings