系统:修复密码锁内存泄漏
authorCaisking <3449750381@qq.com>
Thu, 10 Oct 2024 11:03:51 +0000 (19:03 +0800)
committerCaisking <3449750381@qq.com>
Thu, 10 Oct 2024 11:03:51 +0000 (19:03 +0800)
code/sdk/application/wearable/fd230app/nativeui/codedlock/include/CodedLockView.h
code/sdk/application/wearable/fd230app/nativeui/codedlock/src/CodedLockView.cpp

index be68eb6..0e64613 100644 (file)
@@ -76,7 +76,7 @@ namespace OHOS
         UILabelButton *button_eight{nullptr};
         UILabelButton *button_nine{nullptr};
         UILabelButton *button_zero{nullptr};
-        UILabelButton *button_delete{nullptr};
+        // UILabelButton *button_delete{nullptr};
 
         UIImageView *point_one{nullptr};
         UIImageView *point_two{nullptr};
index 84f23c0..aa3ce14 100644 (file)
@@ -31,8 +31,76 @@ static const uint32_t defaultColor = 0xff191919;
 CodedLockView::CodedLockView() { g_pCodedLockView = this; }
 
 CodedLockView::~CodedLockView() {
-  UIViewGroup *tmpGroup = dynamic_cast<UIViewGroup *>(container_);
-  UIViewGroup::RemoveAndDeleteAllRecursively(tmpGroup);
+  // UIViewGroup *tmpGroup = dynamic_cast<UIViewGroup *>(container_);
+  // UIViewGroup::RemoveAndDeleteAllRecursively(tmpGroup);
+
+  if (button_one) {
+    delete button_one;
+    button_one = nullptr;
+  }
+  if (button_two) {
+    delete button_two;
+    button_two = nullptr;
+  }
+  if (button_three) {
+    delete button_three;
+    button_three = nullptr;
+  }
+  if (button_four) {
+    delete button_four;
+    button_four = nullptr;
+  }
+  if (button_five) {
+    delete button_five;
+    button_five = nullptr;
+  }
+  if (button_six) {
+    delete button_six;
+    button_six = nullptr;
+  }
+  if (button_seven) {
+    delete button_seven;
+    button_seven = nullptr;
+  }
+  if (button_eight) {
+    delete button_eight;
+    button_eight = nullptr;
+  }
+  if (button_nine) {
+    delete button_nine;
+    button_nine = nullptr;
+  }
+  if (button_zero) {
+    delete button_zero;
+    button_zero = nullptr;
+  }
+
+
+  if (point_one) {
+    delete point_one;
+    point_one = nullptr;
+  }
+  if (point_two) {
+    delete point_two;
+    point_two = nullptr;
+  }
+  if (point_three) {
+    delete point_three;
+    point_three = nullptr;
+  }
+  if (point_four) {
+    delete point_four;
+    point_four = nullptr;
+  }
+  if (point_five) {
+    delete point_five;
+    point_five = nullptr;
+  }
+  if (point_six) {
+    delete point_six;
+    point_six = nullptr;
+  }
+
   g_pCodedLockView = nullptr;
 }