libreofficekit/source/gtk/lokdocview.cxx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)
New commits: commit 1673606de9a520e615e1a32da94f28d55ebaea20 Author: Pranav Kant <pran...@libreoffice.org> Date: Sun Jan 10 22:50:46 2016 +0530 lokdocview: Use shared_ptr to fix a possible memory leak Possible because boost::property_tree can throw an exception. Change-Id: I68394ce3b30d448d40d8e22555bafdff1ffa6092 Reviewed-on: https://gerrit.libreoffice.org/21309 Reviewed-by: David Tardon <dtar...@redhat.com> Tested-by: David Tardon <dtar...@redhat.com> (cherry picked from commit 02b49890d51ec463d32846f1108344159664a9eb) Reviewed-on: https://gerrit.libreoffice.org/21345 Tested-by: Jenkins <c...@libreoffice.org> Reviewed-by: Michael Stahl <mst...@redhat.com> diff --git a/libreofficekit/source/gtk/lokdocview.cxx b/libreofficekit/source/gtk/lokdocview.cxx index d091bb9..58747a5 100644 --- a/libreofficekit/source/gtk/lokdocview.cxx +++ b/libreofficekit/source/gtk/lokdocview.cxx @@ -10,6 +10,7 @@ #include <sal/types.h> #include <math.h> #include <string.h> +#include <memory> #include <vector> #include <string> #include <iostream> @@ -344,13 +345,12 @@ doSearch(LOKDocView* pDocView, const char* pText, bool bBackwards, bool highligh boost::property_tree::ptree aTree; GtkWidget* drawingWidget = GTK_WIDGET(pDocView); GdkWindow* drawingWindow = gtk_widget_get_window(drawingWidget); - cairo_region_t* cairoVisRegion = gdk_window_get_visible_region(drawingWindow); + std::shared_ptr<cairo_region_t> cairoVisRegion( gdk_window_get_visible_region(drawingWindow), + cairo_region_destroy); cairo_rectangle_int_t cairoVisRect; - int x, y; - - cairo_region_get_rectangle(cairoVisRegion, 0, &cairoVisRect); - x = pixelToTwip (cairoVisRect.x, priv->m_fZoom); - y = pixelToTwip (cairoVisRect.y, priv->m_fZoom); + cairo_region_get_rectangle(cairoVisRegion.get(), 0, &cairoVisRect); + int x = pixelToTwip (cairoVisRect.x, priv->m_fZoom); + int y = pixelToTwip (cairoVisRect.y, priv->m_fZoom); aTree.put(boost::property_tree::ptree::path_type("SearchItem.SearchString/type", '/'), "string"); aTree.put(boost::property_tree::ptree::path_type("SearchItem.SearchString/value", '/'), pText); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits