Fix mGestureRecognizer leak 82/239682/1
authorHeeyong Song <heeyong.song@samsung.com>
Wed, 29 Jul 2020 02:26:06 +0000 (11:26 +0900)
committerHeeyong Song <heeyong.song@samsung.com>
Wed, 29 Jul 2020 02:26:10 +0000 (11:26 +0900)
IntrusivePtr::Detach doesn't decrease the reference count. So mGestureRecognizer isn't deleted.

Change-Id: Id923e1be0e2646a74c70ec998b2fcab95641035d

dali/internal/event/events/long-press-gesture/long-press-gesture-processor.cpp
dali/internal/event/events/pan-gesture/pan-gesture-processor.cpp
dali/internal/event/events/pinch-gesture/pinch-gesture-processor.cpp
dali/internal/event/events/rotation-gesture/rotation-gesture-processor.cpp
dali/internal/event/events/tap-gesture/tap-gesture-processor.cpp

index d9a2914..961b1ba 100644 (file)
@@ -252,7 +252,7 @@ void LongPressGestureProcessor::RemoveGestureDetector( LongPressGestureDetector*
 
   if ( mLongPressGestureDetectors.empty() )
   {
-    mGestureRecognizer.Detach();
+    mGestureRecognizer = nullptr;
   }
   else
   {
index 3d0c908..db17fb8 100644 (file)
@@ -322,7 +322,7 @@ void PanGestureProcessor::RemoveGestureDetector( PanGestureDetector* gestureDete
 
   if (mPanGestureDetectors.empty())
   {
-    mGestureRecognizer.Detach();
+    mGestureRecognizer = nullptr;
   }
   else
   {
index 6d2f6a1..66b890b 100644 (file)
@@ -288,7 +288,7 @@ void PinchGestureProcessor::RemoveGestureDetector( PinchGestureDetector* gesture
 
   if (mPinchGestureDetectors.empty())
   {
-    mGestureRecognizer.Detach();
+    mGestureRecognizer = nullptr;
   }
 }
 
index 474f0e7..3566d33 100644 (file)
@@ -228,7 +228,7 @@ void RotationGestureProcessor::RemoveGestureDetector( RotationGestureDetector* g
 
   if (mRotationGestureDetectors.empty())
   {
-    mGestureRecognizer.Detach();
+    mGestureRecognizer = nullptr;
   }
 }
 
index f003812..cf74b6f 100644 (file)
@@ -223,7 +223,7 @@ void TapGestureProcessor::RemoveGestureDetector( TapGestureDetector* gestureDete
 
   if ( mTapGestureDetectors.empty() )
   {
-    mGestureRecognizer.Detach();
+    mGestureRecognizer = nullptr;
 
     ResetActor();
   }