mirror of
https://github.com/OpenMW/openmw.git
synced 2025-04-12 08:06:44 +00:00
Avoid calling getMultiview from ~StereoFrustumManager
Otherwise coverity complains about a function throwing exceptions called from a destructor.
This commit is contained in:
parent
cec7f1e7bc
commit
782d3d9680
2 changed files with 4 additions and 2 deletions
|
@ -96,8 +96,9 @@ namespace Stereo
|
||||||
: mCamera(camera)
|
: mCamera(camera)
|
||||||
, mShadowTechnique(nullptr)
|
, mShadowTechnique(nullptr)
|
||||||
, mShadowFrustumCallback(nullptr)
|
, mShadowFrustumCallback(nullptr)
|
||||||
|
, mMultiview(Stereo::getMultiview())
|
||||||
{
|
{
|
||||||
if (Stereo::getMultiview())
|
if (mMultiview)
|
||||||
{
|
{
|
||||||
#ifdef OSG_HAS_MULTIVIEW
|
#ifdef OSG_HAS_MULTIVIEW
|
||||||
mMultiviewFrustumCallback = new MultiviewFrustumCallback(this);
|
mMultiviewFrustumCallback = new MultiviewFrustumCallback(this);
|
||||||
|
@ -118,7 +119,7 @@ namespace Stereo
|
||||||
|
|
||||||
StereoFrustumManager::~StereoFrustumManager()
|
StereoFrustumManager::~StereoFrustumManager()
|
||||||
{
|
{
|
||||||
if (Stereo::getMultiview())
|
if (mMultiview)
|
||||||
{
|
{
|
||||||
#ifdef OSG_HAS_MULTIVIEW
|
#ifdef OSG_HAS_MULTIVIEW
|
||||||
mCamera->setInitialFrustumCallback(nullptr);
|
mCamera->setInitialFrustumCallback(nullptr);
|
||||||
|
|
|
@ -64,6 +64,7 @@ namespace Stereo
|
||||||
osg::ref_ptr<osg::Camera> mCamera;
|
osg::ref_ptr<osg::Camera> mCamera;
|
||||||
osg::ref_ptr<SceneUtil::MWShadowTechnique> mShadowTechnique;
|
osg::ref_ptr<SceneUtil::MWShadowTechnique> mShadowTechnique;
|
||||||
osg::ref_ptr<ShadowFrustumCallback> mShadowFrustumCallback;
|
osg::ref_ptr<ShadowFrustumCallback> mShadowFrustumCallback;
|
||||||
|
bool mMultiview;
|
||||||
std::map< osgUtil::CullVisitor*, osgUtil::CullVisitor*> mSharedFrustums;
|
std::map< osgUtil::CullVisitor*, osgUtil::CullVisitor*> mSharedFrustums;
|
||||||
osg::BoundingBoxd mBoundingBox;
|
osg::BoundingBoxd mBoundingBox;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue