From 1e775d2a677e849432baef1386d3987a94728b95 Mon Sep 17 00:00:00 2001 From: Jian Liang <jianliang79@gmail.com> Date: Sun, 2 Nov 2014 19:01:23 +0800 Subject: [PATCH] Fix memory leak caused by QV4::ErrorObject We should destruct QV4::ErrorObject::Data instead of QV4::ErrorObject in QV4::ErrorObject::destroy() since all the members is stored in QV4::ErrorObject::Data. Task-number: QTBUG-42340 Change-Id: Ifff6413c0726591c335a421a5f289c1886f80980 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com> --- src/qml/jsruntime/qv4errorobject_p.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/qml/jsruntime/qv4errorobject_p.h b/src/qml/jsruntime/qv4errorobject_p.h index 6070fe6210..47442ad985 100644 --- a/src/qml/jsruntime/qv4errorobject_p.h +++ b/src/qml/jsruntime/qv4errorobject_p.h @@ -71,7 +71,7 @@ struct ErrorObject: Object { static ReturnedValue method_get_stack(CallContext *ctx); static void markObjects(Managed *that, ExecutionEngine *e); - static void destroy(Managed *that) { static_cast<ErrorObject *>(that)->~ErrorObject(); } + static void destroy(Managed *that) { static_cast<ErrorObject *>(that)->d()->~Data(); } }; template<> -- GitLab