Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
angle
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Chen Yisong
angle
Commits
f45e81de
Commit
f45e81de
authored
Nov 09, 2011
by
daniel@transgaming.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed unsafe casting.
TRAC #16284 Signed-off-by: Daniel Koch Author: Nicolas Capens git-svn-id:
https://angleproject.googlecode.com/svn/trunk@837
736b8ea6-26fd-11df-bfd4-992fa37f6226
parent
1a01e830
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
56 additions
and
60 deletions
+56
-60
Framebuffer.cpp
src/libGLESv2/Framebuffer.cpp
+15
-21
Renderbuffer.cpp
src/libGLESv2/Renderbuffer.cpp
+26
-26
Renderbuffer.h
src/libGLESv2/Renderbuffer.h
+15
-13
No files found.
src/libGLESv2/Framebuffer.cpp
View file @
f45e81de
...
...
@@ -183,44 +183,38 @@ unsigned int Framebuffer::getStencilbufferSerial()
Colorbuffer
*
Framebuffer
::
getColorbuffer
()
{
Renderbuffer
*
r
b
=
mColorbufferPointer
.
get
();
Renderbuffer
*
r
enderbuffer
=
mColorbufferPointer
.
get
();
if
(
r
b
!=
NULL
&&
rb
->
isColorbuffer
()
)
if
(
r
enderbuffer
)
{
return
static_cast
<
Colorbuffer
*>
(
rb
->
getStorage
());
}
else
{
return
NULL
;
return
renderbuffer
->
getColorbuffer
();
}
return
NULL
;
}
DepthStencilbuffer
*
Framebuffer
::
getDepthbuffer
()
{
Renderbuffer
*
r
b
=
mDepthbufferPointer
.
get
();
Renderbuffer
*
r
enderbuffer
=
mDepthbufferPointer
.
get
();
if
(
rb
!=
NULL
&&
rb
->
isDepthbuffer
())
{
return
static_cast
<
DepthStencilbuffer
*>
(
rb
->
getStorage
());
}
else
if
(
renderbuffer
)
{
return
NULL
;
return
renderbuffer
->
getDepthbuffer
()
;
}
return
NULL
;
}
DepthStencilbuffer
*
Framebuffer
::
getStencilbuffer
()
{
Renderbuffer
*
r
b
=
mStencilbufferPointer
.
get
();
Renderbuffer
*
r
enderbuffer
=
mStencilbufferPointer
.
get
();
if
(
r
b
!=
NULL
&&
rb
->
isStencilbuffer
()
)
if
(
r
enderbuffer
)
{
return
static_cast
<
DepthStencilbuffer
*>
(
rb
->
getStorage
());
}
else
{
return
NULL
;
return
renderbuffer
->
getStencilbuffer
();
}
return
NULL
;
}
GLenum
Framebuffer
::
getColorbufferType
()
...
...
src/libGLESv2/Renderbuffer.cpp
View file @
f45e81de
...
...
@@ -29,19 +29,19 @@ Renderbuffer::~Renderbuffer()
delete
mStorage
;
}
bool
Renderbuffer
::
isColorbuffer
()
const
Colorbuffer
*
Renderbuffer
::
getColorbuffer
()
{
return
mStorage
->
is
Colorbuffer
();
return
mStorage
->
get
Colorbuffer
();
}
bool
Renderbuffer
::
isDepthbuffer
()
const
DepthStencilbuffer
*
Renderbuffer
::
getDepthbuffer
()
{
return
mStorage
->
is
Depthbuffer
();
return
mStorage
->
get
Depthbuffer
();
}
bool
Renderbuffer
::
isStencilbuffer
()
const
DepthStencilbuffer
*
Renderbuffer
::
getStencilbuffer
()
{
return
mStorage
->
is
Stencilbuffer
();
return
mStorage
->
get
Stencilbuffer
();
}
IDirect3DSurface9
*
Renderbuffer
::
getRenderTarget
()
...
...
@@ -130,19 +130,19 @@ RenderbufferStorage::~RenderbufferStorage()
{
}
bool
RenderbufferStorage
::
isColorbuffer
()
const
Colorbuffer
*
RenderbufferStorage
::
getColorbuffer
()
{
return
false
;
return
NULL
;
}
bool
RenderbufferStorage
::
isDepthbuffer
()
const
DepthStencilbuffer
*
RenderbufferStorage
::
getDepthbuffer
()
{
return
false
;
return
NULL
;
}
bool
RenderbufferStorage
::
isStencilbuffer
()
const
DepthStencilbuffer
*
RenderbufferStorage
::
getStencilbuffer
()
{
return
false
;
return
NULL
;
}
IDirect3DSurface9
*
RenderbufferStorage
::
getRenderTarget
()
...
...
@@ -345,9 +345,9 @@ D3DFORMAT Colorbuffer::getD3DFormat() const
return
mD3DFormat
;
}
bool
Colorbuffer
::
isColorbuffer
()
const
Colorbuffer
*
Colorbuffer
::
getColorbuffer
()
{
return
t
rue
;
return
t
his
;
}
IDirect3DSurface9
*
Colorbuffer
::
getRenderTarget
()
...
...
@@ -427,14 +427,14 @@ DepthStencilbuffer::~DepthStencilbuffer()
}
}
bool
DepthStencilbuffer
::
isDepthbuffer
()
const
DepthStencilbuffer
*
DepthStencilbuffer
::
getDepthbuffer
()
{
return
t
rue
;
return
t
his
;
}
bool
DepthStencilbuffer
::
isStencilbuffer
()
const
DepthStencilbuffer
*
DepthStencilbuffer
::
getStencilbuffer
()
{
return
t
rue
;
return
t
his
;
}
IDirect3DSurface9
*
DepthStencilbuffer
::
getDepthStencil
()
...
...
@@ -466,14 +466,14 @@ Depthbuffer::~Depthbuffer()
{
}
bool
Depthbuffer
::
isDepthbuffer
()
const
DepthStencilbuffer
*
Depthbuffer
::
getDepthbuffer
()
{
return
t
rue
;
return
t
his
;
}
bool
Depthbuffer
::
isStencilbuffer
()
const
DepthStencilbuffer
*
Depthbuffer
::
getStencilbuffer
()
{
return
false
;
return
NULL
;
}
Stencilbuffer
::
Stencilbuffer
(
IDirect3DSurface9
*
depthStencil
)
:
DepthStencilbuffer
(
depthStencil
)
...
...
@@ -500,13 +500,13 @@ Stencilbuffer::~Stencilbuffer()
{
}
bool
Stencilbuffer
::
isDepthbuffer
()
const
DepthStencilbuffer
*
Stencilbuffer
::
getDepthbuffer
()
{
return
false
;
return
NULL
;
}
bool
Stencilbuffer
::
isStencilbuffer
()
const
DepthStencilbuffer
*
Stencilbuffer
::
getStencilbuffer
()
{
return
t
rue
;
return
t
his
;
}
}
src/libGLESv2/Renderbuffer.h
View file @
f45e81de
...
...
@@ -22,6 +22,8 @@
namespace
gl
{
class
Texture
;
class
Colorbuffer
;
class
DepthStencilbuffer
;
// A class derived from RenderbufferStorage is created whenever glRenderbufferStorage
// is called. The specific concrete type depends on whether the internal format is
...
...
@@ -33,9 +35,9 @@ class RenderbufferStorage
virtual
~
RenderbufferStorage
()
=
0
;
virtual
bool
isColorbuffer
()
const
;
virtual
bool
isDepthbuffer
()
const
;
virtual
bool
isStencilbuffer
()
const
;
virtual
Colorbuffer
*
getColorbuffer
()
;
virtual
DepthStencilbuffer
*
getDepthbuffer
()
;
virtual
DepthStencilbuffer
*
getStencilbuffer
()
;
virtual
IDirect3DSurface9
*
getRenderTarget
();
virtual
IDirect3DSurface9
*
getDepthStencil
();
...
...
@@ -82,9 +84,9 @@ class Renderbuffer : public RefCountObject
~
Renderbuffer
();
bool
isColorbuffer
()
const
;
bool
isDepthbuffer
()
const
;
bool
isStencilbuffer
()
const
;
Colorbuffer
*
getColorbuffer
()
;
DepthStencilbuffer
*
getDepthbuffer
()
;
DepthStencilbuffer
*
getStencilbuffer
()
;
IDirect3DSurface9
*
getRenderTarget
();
IDirect3DSurface9
*
getDepthStencil
();
...
...
@@ -121,7 +123,7 @@ class Colorbuffer : public RenderbufferStorage
virtual
~
Colorbuffer
();
virtual
bool
isColorbuffer
()
const
;
virtual
Colorbuffer
*
getColorbuffer
()
;
virtual
IDirect3DSurface9
*
getRenderTarget
();
...
...
@@ -148,8 +150,8 @@ class DepthStencilbuffer : public RenderbufferStorage
~
DepthStencilbuffer
();
virtual
bool
isDepthbuffer
()
const
;
virtual
bool
isStencilbuffer
()
const
;
virtual
DepthStencilbuffer
*
getDepthbuffer
()
;
virtual
DepthStencilbuffer
*
getStencilbuffer
()
;
virtual
IDirect3DSurface9
*
getDepthStencil
();
...
...
@@ -166,8 +168,8 @@ class Depthbuffer : public DepthStencilbuffer
virtual
~
Depthbuffer
();
virtual
bool
isDepthbuffer
()
const
;
virtual
bool
isStencilbuffer
()
const
;
virtual
DepthStencilbuffer
*
getDepthbuffer
()
;
virtual
DepthStencilbuffer
*
getStencilbuffer
()
;
private
:
DISALLOW_COPY_AND_ASSIGN
(
Depthbuffer
);
...
...
@@ -181,8 +183,8 @@ class Stencilbuffer : public DepthStencilbuffer
virtual
~
Stencilbuffer
();
virtual
bool
isDepthbuffer
()
const
;
virtual
bool
isStencilbuffer
()
const
;
virtual
DepthStencilbuffer
*
getDepthbuffer
()
;
virtual
DepthStencilbuffer
*
getStencilbuffer
()
;
private
:
DISALLOW_COPY_AND_ASSIGN
(
Stencilbuffer
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment