---
src/frontends/qt4/GuiImage.cpp | 8 ++++----
src/frontends/qt4/GuiImage.h | 2 +-
src/graphics/GraphicsCacheItem.cpp | 2 +-
src/graphics/GraphicsImage.h | 5 +++--
src/graphics/GraphicsLoader.cpp | 2 +-
5 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/src/frontends/qt4/GuiImage.cpp b/src/frontends/qt4/GuiImage.cpp
index 503ad52..f1643db 100644
--- a/src/frontends/qt4/GuiImage.cpp
+++ b/src/frontends/qt4/GuiImage.cpp
@@ -32,9 +32,9 @@ namespace lyx {
namespace graphics {
/// Implement factory method defined in GraphicsImage.h
-Image * newImage()
+shared_ptr<Image> newImage()
{
- return new GuiImage;
+ return make_shared<GuiImage>();
}
@@ -49,9 +49,9 @@ GuiImage::GuiImage(GuiImage const & other)
{}
-Image * GuiImage::clone() const
+shared_ptr<Image> GuiImage::clone() const
{
- return new GuiImage(*this);
+ return make_shared<GuiImage>(*this);
}
diff --git a/src/frontends/qt4/GuiImage.h b/src/frontends/qt4/GuiImage.h
index 6f60644..9e97241 100644
--- a/src/frontends/qt4/GuiImage.h
+++ b/src/frontends/qt4/GuiImage.h
@@ -34,7 +34,7 @@ public:
private:
/// Create a copy
- Image * clone() const;
+ shared_ptr<Image> clone() const;
/// Get the image width
unsigned int width() const;
/// Get the image height
diff --git a/src/graphics/GraphicsCacheItem.cpp
b/src/graphics/GraphicsCacheItem.cpp
index 46b76c5..996b0b5 100644
--- a/src/graphics/GraphicsCacheItem.cpp
+++ b/src/graphics/GraphicsCacheItem.cpp
@@ -292,7 +292,7 @@ bool CacheItem::Impl::loadImage()
{
LYXERR(Debug::GRAPHICS, "Loading image.");
- image_.reset(newImage());
+ image_ = newImage();
bool success = image_->load(file_to_load_);
string const text = success ? "succeeded" : "failed";
diff --git a/src/graphics/GraphicsImage.h b/src/graphics/GraphicsImage.h
index 5488a76..b0d93b4 100644
--- a/src/graphics/GraphicsImage.h
+++ b/src/graphics/GraphicsImage.h
@@ -25,6 +25,7 @@
#define GRAPHICSIMAGE_H
#include "Dimension.h"
+#include "support/shared_ptr.h"
namespace lyx {
@@ -40,7 +41,7 @@ public:
virtual ~Image() {}
/// Create a copy
- virtual Image * clone() const = 0;
+ virtual shared_ptr<Image> clone() const = 0;
/// Get the image width
virtual unsigned int width() const = 0;
@@ -66,7 +67,7 @@ public:
/// Only way to create a new Image.
/// Implemented in the frontend.
-Image * newImage();
+shared_ptr<Image> newImage();
} // namespace graphics
} // namespace lyx
diff --git a/src/graphics/GraphicsLoader.cpp b/src/graphics/GraphicsLoader.cpp
index 5260d50..89c1440 100644
--- a/src/graphics/GraphicsLoader.cpp
+++ b/src/graphics/GraphicsLoader.cpp
@@ -429,7 +429,7 @@ void Loader::Impl::createPixmap()
return;
}
- image_.reset(cached_item_->image()->clone());
+ image_ = cached_item_->image()->clone();
bool const success = image_->setPixmap(params_);
--
1.8.0.rc3.16.g8ead1bf