Setter methods in XMPPcVardTempEmail and XMPPcVardTempTel had typing mistakes. Must have been happened sometime during 3.7 to 4.0 transition.
These types do not allow adding properties, that's why the allocated size is compared to the size of NSXMLElement in initialize.
+ (void)initialize {
// .....
size_t superSize = class_getInstanceSize([NSXMLElement class]);
size_t ourSize = class_getInstanceSize([XMPPvCardTempEmail class]);
if (superSize != ourSize)
{
XMPPLogError(@"Adding instance variables to XMPPvCardTempEmail is not currently supported!");
[DDLog flushLog];
exit(15);
}
}
Every added property has to have matching get and set overwrites, otherwise ObjC will allocate memory for the property and the size check will fail.
The linked issue describe that behavior.
I also added missing implementation for TEL and few tests for XMPPvCardTemp.
Fixes #1050 and #1118.
Setter methods in
XMPPcVardTempEmail
andXMPPcVardTempTel
had typing mistakes. Must have been happened sometime during 3.7 to 4.0 transition. These types do not allow adding properties, that's why the allocated size is compared to the size ofNSXMLElement
ininitialize
.Every added property has to have matching get and set overwrites, otherwise ObjC will allocate memory for the property and the size check will fail. The linked issue describe that behavior.
I also added missing implementation for
TEL
and few tests forXMPPvCardTemp
.