From: Hwankyu Jhun Date: Tue, 16 Feb 2021 02:00:12 +0000 (+0900) Subject: Fix memory leak X-Git-Tag: accepted/tizen/unified/20210217.030926~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f21b8227c7285ab4235dc0c0df35104d2fe21103;p=platform%2Fcore%2Fappfw%2Ftidl.git Fix memory leak Change-Id: I930fdef4d8f3734c84e61f0c968d74ffa0dbdeb9 Signed-off-by: Hwankyu Jhun --- diff --git a/idlc/gen/cpp_gen_base_cb.h b/idlc/gen/cpp_gen_base_cb.h index b8ac596..46f58b2 100644 --- a/idlc/gen/cpp_gen_base_cb.h +++ b/idlc/gen/cpp_gen_base_cb.h @@ -37,15 +37,25 @@ const char CB_BUNDLE[] = R"__cls_bundle(class Bundle final { } Bundle& operator = (Bundle&& b) { - raw_ = b.raw_; - b.raw_ = nullptr; + if (this != &b) { + if (raw_) + bundle_free(raw_); + + raw_ = b.raw_; + b.raw_ = nullptr; + } return *this; } Bundle(const Bundle& b) : raw_(bundle_dup(b.GetHandle())) {} Bundle& operator = (const Bundle& b) { - raw_ = bundle_dup(b.GetHandle()); + if (this != &b) { + if (raw_) + bundle_free(raw_); + + raw_ = bundle_dup(b.GetHandle()); + } return *this; }