Title: [171960] trunk/Source/WebCore
Revision
171960
Author
[email protected]
Date
2014-08-01 17:00:19 -0700 (Fri, 01 Aug 2014)

Log Message

Fix resource leak in FillLayersPropertyWrapper object member
https://bugs.webkit.org/show_bug.cgi?id=135462

Reviewed by Andreas Kling.

Fix leak of m_fillLayerPropertyWrapper by using unique_ptr<>.
Based on patch by Przemyslaw Kuczynski.

* page/animation/CSSPropertyAnimation.cpp:
(WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (171959 => 171960)


--- trunk/Source/WebCore/ChangeLog	2014-08-01 23:57:12 UTC (rev 171959)
+++ trunk/Source/WebCore/ChangeLog	2014-08-02 00:00:19 UTC (rev 171960)
@@ -1,5 +1,18 @@
 2014-08-01  Simon Fraser  <[email protected]>
 
+        Fix resource leak in FillLayersPropertyWrapper object member
+        https://bugs.webkit.org/show_bug.cgi?id=135462
+
+        Reviewed by Andreas Kling.
+
+        Fix leak of m_fillLayerPropertyWrapper by using unique_ptr<>.
+        Based on patch by Przemyslaw Kuczynski.
+
+        * page/animation/CSSPropertyAnimation.cpp:
+        (WebCore::FillLayersPropertyWrapper::FillLayersPropertyWrapper):
+
+2014-08-01  Simon Fraser  <[email protected]>
+
         Clean up image subsampling code, make it less iOS-specific
         https://bugs.webkit.org/show_bug.cgi?id=134916
 

Modified: trunk/Source/WebCore/page/animation/CSSPropertyAnimation.cpp (171959 => 171960)


--- trunk/Source/WebCore/page/animation/CSSPropertyAnimation.cpp	2014-08-01 23:57:12 UTC (rev 171959)
+++ trunk/Source/WebCore/page/animation/CSSPropertyAnimation.cpp	2014-08-02 00:00:19 UTC (rev 171960)
@@ -900,19 +900,19 @@
         switch (prop) {
         case CSSPropertyBackgroundPositionX:
         case CSSPropertyWebkitMaskPositionX:
-            m_fillLayerPropertyWrapper = new FillLayerPropertyWrapper<Length>(&FillLayer::xPosition, &FillLayer::setXPosition);
+            m_fillLayerPropertyWrapper = std::make_unique<FillLayerPropertyWrapper<Length>>(&FillLayer::xPosition, &FillLayer::setXPosition);
             break;
         case CSSPropertyBackgroundPositionY:
         case CSSPropertyWebkitMaskPositionY:
-            m_fillLayerPropertyWrapper = new FillLayerPropertyWrapper<Length>(&FillLayer::yPosition, &FillLayer::setYPosition);
+            m_fillLayerPropertyWrapper = std::make_unique<FillLayerPropertyWrapper<Length>>(&FillLayer::yPosition, &FillLayer::setYPosition);
             break;
         case CSSPropertyBackgroundSize:
         case CSSPropertyWebkitBackgroundSize:
         case CSSPropertyWebkitMaskSize:
-            m_fillLayerPropertyWrapper = new FillLayerPropertyWrapper<LengthSize>(&FillLayer::sizeLength, &FillLayer::setSizeLength);
+            m_fillLayerPropertyWrapper = std::make_unique<FillLayerPropertyWrapper<LengthSize>>(&FillLayer::sizeLength, &FillLayer::setSizeLength);
             break;
         case CSSPropertyBackgroundImage:
-            m_fillLayerPropertyWrapper = new FillLayerStyleImagePropertyWrapper(&FillLayer::image, &FillLayer::setImage);
+            m_fillLayerPropertyWrapper = std::make_unique<FillLayerStyleImagePropertyWrapper>(&FillLayer::image, &FillLayer::setImage);
             break;
         default:
             break;
@@ -950,7 +950,7 @@
     }
 
 private:
-    FillLayerAnimationPropertyWrapperBase* m_fillLayerPropertyWrapper;
+    std::unique_ptr<FillLayerAnimationPropertyWrapperBase> m_fillLayerPropertyWrapper;
 
     LayersGetter m_layersGetter;
     LayersAccessor m_layersAccessor;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to