修复训练动画的内存泄漏 846/1
authorCaisking <3449750381@qq.com>
Sat, 31 Aug 2024 07:24:31 +0000 (15:24 +0800)
committerCaisking <3449750381@qq.com>
Sat, 31 Aug 2024 07:24:31 +0000 (15:24 +0800)
code/sdk/application/wearable/fd230app/nativeui/traing/training_card/include/TraingCardView.h
code/sdk/application/wearable/fd230app/nativeui/traing/training_card/src/TraingCardView.cpp

index a98a151..bf3e671 100644 (file)
@@ -137,6 +137,7 @@ namespace OHOS
 \r
         std::string winbasePath;\r
         const char **winimagePaths;\r
+        ImageAnimatorInfo *winimageAnimatorInfo{nullptr};\r
     };\r
 } // namespace OHOS\r
 #endif // TraingCard_PRESENTER_H\r
index aa5f4f5..c34330f 100644 (file)
@@ -181,6 +181,8 @@ namespace OHOS
         buttonnote_ = nullptr;\r
 \r
         /*动画*/\r
+        FreeImagePathsArray(winimagePaths, 94);\r
+        ReleaseImageAnimatorSource(winimageAnimatorInfo,94);\r
         imageAnimator->Stop();\r
         delete imageAnimator;\r
         imageAnimator = nullptr;\r
@@ -490,7 +492,7 @@ namespace OHOS
         // 初始化图片数组以及动画\r
         winbasePath = "/user/res/Training/training_GIF/win/";\r
         winimagePaths = CreateImagePathsArray(winbasePath.c_str(), 94);\r
-        InitImageAnimatorSource(imageAnimator, winimagePaths, 94, 173, 100, 120, 120, "imageAnimator1", 10);\r
+        InitImageAnimatorSource(imageAnimator, winimageAnimatorInfo, winimagePaths, 94, 173, 100, 120, 120, "imageAnimator1", 10);\r
         getView->Add(imageAnimator);\r
     }\r
 \r