| OLD | NEW | 
|---|
| 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 13 matching lines...) Expand all  Loading... | 
| 24  */ | 24  */ | 
| 25 | 25 | 
| 26 #include "config.h" | 26 #include "config.h" | 
| 27 | 27 | 
| 28 #include "core/html/canvas/WebGLRenderbuffer.h" | 28 #include "core/html/canvas/WebGLRenderbuffer.h" | 
| 29 | 29 | 
| 30 #include "core/html/canvas/WebGLRenderingContextBase.h" | 30 #include "core/html/canvas/WebGLRenderingContextBase.h" | 
| 31 | 31 | 
| 32 namespace WebCore { | 32 namespace WebCore { | 
| 33 | 33 | 
| 34 PassRefPtr<WebGLRenderbuffer> WebGLRenderbuffer::create(WebGLRenderingContextBas
    e* ctx) | 34 PassRefPtrWillBeRawPtr<WebGLRenderbuffer> WebGLRenderbuffer::create(WebGLRenderi
    ngContextBase* ctx) | 
| 35 { | 35 { | 
| 36     return adoptRef(new WebGLRenderbuffer(ctx)); | 36     return adoptRefWillBeNoop(new WebGLRenderbuffer(ctx)); | 
| 37 } | 37 } | 
| 38 | 38 | 
| 39 WebGLRenderbuffer::~WebGLRenderbuffer() | 39 WebGLRenderbuffer::~WebGLRenderbuffer() | 
| 40 { | 40 { | 
|  | 41 #if ENABLE(OILPAN) | 
|  | 42     m_emulatedStencilBuffer.clear(); | 
|  | 43 #endif | 
|  | 44     detach(); | 
| 41     deleteObject(0); | 45     deleteObject(0); | 
| 42 } | 46 } | 
| 43 | 47 | 
| 44 WebGLRenderbuffer::WebGLRenderbuffer(WebGLRenderingContextBase* ctx) | 48 WebGLRenderbuffer::WebGLRenderbuffer(WebGLRenderingContextBase* ctx) | 
| 45     : WebGLSharedObject(ctx) | 49     : WebGLSharedObject(ctx) | 
| 46     , m_internalFormat(GL_RGBA4) | 50     , m_internalFormat(GL_RGBA4) | 
| 47     , m_width(0) | 51     , m_width(0) | 
| 48     , m_height(0) | 52     , m_height(0) | 
| 49     , m_hasEverBeenBound(false) | 53     , m_hasEverBeenBound(false) | 
| 50 { | 54 { | 
| 51     ScriptWrappable::init(this); | 55     ScriptWrappable::init(this); | 
| 52     setObject(ctx->webContext()->createRenderbuffer()); | 56     setObject(ctx->webContext()->createRenderbuffer()); | 
| 53 } | 57 } | 
| 54 | 58 | 
| 55 void WebGLRenderbuffer::deleteObjectImpl(blink::WebGraphicsContext3D* context3d,
     Platform3DObject object) | 59 void WebGLRenderbuffer::deleteObjectImpl(blink::WebGraphicsContext3D* context3d,
     Platform3DObject object) | 
| 56 { | 60 { | 
| 57     context3d->deleteRenderbuffer(object); | 61     context3d->deleteRenderbuffer(object); | 
| 58     deleteEmulatedStencilBuffer(context3d); | 62     deleteEmulatedStencilBuffer(context3d); | 
| 59 } | 63 } | 
| 60 | 64 | 
| 61 void WebGLRenderbuffer::deleteEmulatedStencilBuffer(blink::WebGraphicsContext3D*
     context3d) | 65 void WebGLRenderbuffer::deleteEmulatedStencilBuffer(blink::WebGraphicsContext3D*
     context3d) | 
| 62 { | 66 { | 
| 63     if (!m_emulatedStencilBuffer) | 67     if (!m_emulatedStencilBuffer) | 
| 64         return; | 68         return; | 
| 65     m_emulatedStencilBuffer->deleteObject(context3d); | 69     m_emulatedStencilBuffer->deleteObject(context3d); | 
| 66     m_emulatedStencilBuffer.clear(); | 70     m_emulatedStencilBuffer.clear(); | 
| 67 } | 71 } | 
| 68 | 72 | 
|  | 73 void WebGLRenderbuffer::trace(Visitor* visitor) | 
|  | 74 { | 
|  | 75     visitor->trace(m_emulatedStencilBuffer); | 
|  | 76     WebGLSharedObject::trace(visitor); | 
| 69 } | 77 } | 
|  | 78 | 
|  | 79 } | 
| OLD | NEW | 
|---|