summaryrefslogtreecommitdiff
diff options
-rw-r--r--plugins/unity-mt-grab-handles/src/unity-mt-grab-handles.cpp2
-rw-r--r--plugins/unity-mt-grab-handles/src/unity-mt-texture.cpp12
-rw-r--r--plugins/unity-mt-grab-handles/src/unity-mt-texture.h5
3 files changed, 7 insertions, 12 deletions
diff --git a/plugins/unity-mt-grab-handles/src/unity-mt-grab-handles.cpp b/plugins/unity-mt-grab-handles/src/unity-mt-grab-handles.cpp
index 6b1432c93..ce5792da1 100644
--- a/plugins/unity-mt-grab-handles/src/unity-mt-grab-handles.cpp
+++ b/plugins/unity-mt-grab-handles/src/unity-mt-grab-handles.cpp
@@ -776,7 +776,7 @@ UnityMTGrabHandlesScreen::UnityMTGrabHandlesScreen(CompScreen* s) :
GLTexture::List t = GLTexture::readImageToTexture(fname, pname,
size);
- (static_cast <unity::MT::X11TextureFactory *> (unity::MT::Texture::Factory::Default ()))->setActiveWrap (t);
+ (boost::shared_static_cast <unity::MT::X11TextureFactory> (unity::MT::Texture::Factory::Default ()))->setActiveWrap (t);
mHandleTextures.at(i).first = unity::MT::Texture::Factory::Default ()->create ();
mHandleTextures.at (i).second.width = size.width ();
diff --git a/plugins/unity-mt-grab-handles/src/unity-mt-texture.cpp b/plugins/unity-mt-grab-handles/src/unity-mt-texture.cpp
index d4435c8de..c87076652 100644
--- a/plugins/unity-mt-grab-handles/src/unity-mt-texture.cpp
+++ b/plugins/unity-mt-grab-handles/src/unity-mt-texture.cpp
@@ -18,7 +18,7 @@
#include "unity-mt-texture.h"
-unity::MT::Texture::Factory * unity::MT::Texture::Factory::mDefault = NULL;
+boost::shared_ptr <unity::MT::Texture::Factory> unity::MT::Texture::Factory::mDefault;
unity::MT::Texture::Factory::Factory ()
{
@@ -31,16 +31,10 @@ unity::MT::Texture::Factory::~Factory ()
void
unity::MT::Texture::Factory::SetDefault (Factory *f)
{
- if (mDefault)
- {
- delete mDefault;
- mDefault = NULL;
- }
-
- mDefault = f;
+ mDefault.reset (f);
}
-unity::MT::Texture::Factory *
+boost::shared_ptr <unity::MT::Texture::Factory>
unity::MT::Texture::Factory::Default ()
{
return mDefault;
diff --git a/plugins/unity-mt-grab-handles/src/unity-mt-texture.h b/plugins/unity-mt-grab-handles/src/unity-mt-texture.h
index a72d883ea..2d9a26531 100644
--- a/plugins/unity-mt-grab-handles/src/unity-mt-texture.h
+++ b/plugins/unity-mt-grab-handles/src/unity-mt-texture.h
@@ -21,6 +21,7 @@
#include <Nux/Nux.h>
#include <boost/noncopyable.hpp>
+#include <boost/shared_ptr.hpp>
namespace unity
{
@@ -47,7 +48,7 @@ class Texture
static void
SetDefault (Factory *);
- static Factory *
+ static boost::shared_ptr <Factory>
Default ();
protected:
@@ -56,7 +57,7 @@ class Texture
private:
- static Factory *mDefault;
+ static boost::shared_ptr <unity::MT::Texture::Factory> mDefault;
};
protected: