Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1233)

Side by Side Diff: third_party/WebKit/Source/modules/webgl/WebGLRenderingContextBase.cpp

Issue 2539113002: [wrapper-tracing] Fix WebGL extension and attachment handling (Closed)
Patch Set: Fix wrapper tracing methods Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2009 Apple Inc. All rights reserved. 2 * Copyright (C) 2009 Apple Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions 5 * modification, are permitted provided that the following conditions
6 * are met: 6 * are met:
7 * 1. Redistributions of source code must retain the above copyright 7 * 1. Redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer. 8 * notice, this list of conditions and the following disclaimer.
9 * 2. Redistributions in binary form must reproduce the above copyright 9 * 2. Redistributions in binary form must reproduce the above copyright
10 * notice, this list of conditions and the following disclaimer in the 10 * notice, this list of conditions and the following disclaimer in the
(...skipping 7693 matching lines...) Expand 10 before | Expand all | Expand 10 after
7704 visitor->traceWrappers(m_boundVertexArrayObject); 7704 visitor->traceWrappers(m_boundVertexArrayObject);
7705 // Trace wrappers explicitly here since TextureUnitState is not a heap 7705 // Trace wrappers explicitly here since TextureUnitState is not a heap
7706 // object, i.e., we cannot set its mark bits. 7706 // object, i.e., we cannot set its mark bits.
7707 for (auto& unit : m_textureUnits) { 7707 for (auto& unit : m_textureUnits) {
7708 visitor->traceWrappers(unit.m_texture2DBinding); 7708 visitor->traceWrappers(unit.m_texture2DBinding);
7709 visitor->traceWrappers(unit.m_textureCubeMapBinding); 7709 visitor->traceWrappers(unit.m_textureCubeMapBinding);
7710 visitor->traceWrappers(unit.m_texture3DBinding); 7710 visitor->traceWrappers(unit.m_texture3DBinding);
7711 visitor->traceWrappers(unit.m_texture2DArrayBinding); 7711 visitor->traceWrappers(unit.m_texture2DArrayBinding);
7712 } 7712 }
7713 for (ExtensionTracker* tracker : m_extensions) { 7713 for (ExtensionTracker* tracker : m_extensions) {
7714 WebGLExtension* extension = tracker->getExtensionObjectIfAlreadyEnabled(); 7714 visitor->traceWrappers(tracker);
7715 visitor->traceWrappers(extension);
7716 } 7715 }
7717 CanvasRenderingContext::traceWrappers(visitor); 7716 CanvasRenderingContext::traceWrappers(visitor);
7718 } 7717 }
7719 7718
7720 int WebGLRenderingContextBase::externallyAllocatedBytesPerPixel() { 7719 int WebGLRenderingContextBase::externallyAllocatedBytesPerPixel() {
7721 if (isContextLost()) 7720 if (isContextLost())
7722 return 0; 7721 return 0;
7723 7722
7724 int bytesPerPixel = 4; 7723 int bytesPerPixel = 4;
7725 int totalBytesPerPixel = 7724 int totalBytesPerPixel =
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
7762 7761
7763 void WebGLRenderingContextBase::getHTMLOrOffscreenCanvas( 7762 void WebGLRenderingContextBase::getHTMLOrOffscreenCanvas(
7764 HTMLCanvasElementOrOffscreenCanvas& result) const { 7763 HTMLCanvasElementOrOffscreenCanvas& result) const {
7765 if (canvas()) 7764 if (canvas())
7766 result.setHTMLCanvasElement(canvas()); 7765 result.setHTMLCanvasElement(canvas());
7767 else 7766 else
7768 result.setOffscreenCanvas(getOffscreenCanvas()); 7767 result.setOffscreenCanvas(getOffscreenCanvas());
7769 } 7768 }
7770 7769
7771 } // namespace blink 7770 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698