OSDN Git Service

Make the FrameBuffer class pure abstract.
authorNicolas Capens <capn@google.com>
Mon, 29 May 2017 21:20:36 +0000 (17:20 -0400)
committerNicolas Capens <capn@google.com>
Thu, 8 Jun 2017 16:26:09 +0000 (16:26 +0000)
commit6016a1445277f75270d263b384a34ceaf654367d
tree4c03a07d72ff8a09fac72dd0aafe5966b3a3851e
parent7c0d347128e9269eb9ff4d7debaeb441d877b221
Make the FrameBuffer class pure abstract.

Sanitizer tools desire having the vtables of any class with non-pure
virtual methods, even when none of them are called in the current
linkage unit. In the case of sw::FrameBuffer, to work around this we can
make the class pure abstract by making the destructor pure virtual. Note
that the destructor still has a non-empty definition, since all non-
default destructors need a defintion, and it will get called as part of
the destructor chain.

Bug swiftshader:31

Change-Id: I7601b1a725c513ff484cd34a8965636b7f21513c
Reviewed-on: https://swiftshader-review.googlesource.com/9912
Reviewed-by: Nicolas Capens <capn@google.com>
Reviewed-by: Alexis Hétu <sugoi@google.com>
Tested-by: Nicolas Capens <capn@google.com>
src/Main/FrameBuffer.cpp
src/Main/FrameBuffer.hpp
src/Main/FrameBufferAndroid.hpp
src/Main/FrameBufferDD.hpp
src/Main/FrameBufferGDI.hpp
src/Main/FrameBufferWin.hpp
src/Main/FrameBufferX11.hpp
src/OpenGL/libEGL/TypeInfo.cpp