diff --git a/ObjQt.pro b/ObjQt.pro index fa7a4e6..069ac07 100644 --- a/ObjQt.pro +++ b/ObjQt.pro @@ -24,7 +24,7 @@ HEADERS += common/helpers.h \ SOURCES += common/OFString+QString.mm \ QtCore/QtChildEvent.mm \ - QtCore/QtCoreApplication.mm \ + QtCore/QtCoreApplication.mm \ QtCore/QtEvent.mm \ QtCore/QtObject.mm \ QtCore/QtThread.mm \ diff --git a/QtCore/QtChildEvent.mm b/QtCore/QtChildEvent.mm index e386179..39da18c 100644 --- a/QtCore/QtChildEvent.mm +++ b/QtCore/QtChildEvent.mm @@ -16,8 +16,12 @@ child: (QtObject*)child { try { - return [self initWithQChildEvent: + self = [self initWithQChildEvent: new QChildEvent(type, [child qObject])]; + + [self takeOwnership]; + + return self; } catch (const std::bad_alloc &e) { self = [super initWithQEvent: NULL]; [self release];