Use class_addMethod() rather than class_replaceMethod() because of problems

with new gcc runtime altering superclass implementation.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/sqlclient/trunk@40466 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Richard Frith-MacDonald 2017-04-11 11:50:44 +00:00
parent caebc38b3d
commit 552d190f31

View file

@ -1010,22 +1010,22 @@ static int poolConnections = 0;
*/ */
sel = @selector(retain); sel = @selector(retain);
class_replaceMethod(SQLStringClass, sel, class_addMethod(SQLStringClass, sel,
class_getMethodImplementation(root, sel), class_getMethodImplementation(root, sel),
method_getTypeEncoding(class_getInstanceMethod(root, sel))); method_getTypeEncoding(class_getInstanceMethod(root, sel)));
sel = @selector(release); sel = @selector(release);
class_replaceMethod(SQLStringClass, sel, class_addMethod(SQLStringClass, sel,
class_getMethodImplementation(root, sel), class_getMethodImplementation(root, sel),
method_getTypeEncoding(class_getInstanceMethod(root, sel))); method_getTypeEncoding(class_getInstanceMethod(root, sel)));
sel = @selector(autorelease); sel = @selector(autorelease);
class_replaceMethod(SQLStringClass, sel, class_addMethod(SQLStringClass, sel,
class_getMethodImplementation(root, sel), class_getMethodImplementation(root, sel),
method_getTypeEncoding(class_getInstanceMethod(root, sel))); method_getTypeEncoding(class_getInstanceMethod(root, sel)));
sel = @selector(dealloc); sel = @selector(dealloc);
class_replaceMethod(SQLStringClass, sel, class_addMethod(SQLStringClass, sel,
class_getMethodImplementation(root, sel), class_getMethodImplementation(root, sel),
method_getTypeEncoding(class_getInstanceMethod(root, sel))); method_getTypeEncoding(class_getInstanceMethod(root, sel)));
@ -1033,12 +1033,12 @@ static int poolConnections = 0;
* the receiver. * the receiver.
*/ */
sel = @selector(copy); sel = @selector(copy);
class_replaceMethod(SQLStringClass, sel, class_addMethod(SQLStringClass, sel,
class_getMethodImplementation(root, @selector(retain)), class_getMethodImplementation(root, @selector(retain)),
method_getTypeEncoding(class_getInstanceMethod(root, sel))); method_getTypeEncoding(class_getInstanceMethod(root, sel)));
sel = @selector(copyWithZone:); sel = @selector(copyWithZone:);
class_replaceMethod(SQLStringClass, sel, class_addMethod(SQLStringClass, sel,
class_getMethodImplementation(root, @selector(retain)), class_getMethodImplementation(root, @selector(retain)),
method_getTypeEncoding(class_getInstanceMethod(root, sel))); method_getTypeEncoding(class_getInstanceMethod(root, sel)));