mirror of
https://github.com/gnustep/libs-base.git
synced 2025-05-13 01:20:57 +00:00
remove bogus consistency check
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@29784 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
fab825f3bb
commit
a0a018b4c5
2 changed files with 10 additions and 9 deletions
10
ChangeLog
10
ChangeLog
|
@ -1,3 +1,13 @@
|
||||||
|
2010-02-27 Richard Frith-Macdonald <rfm@gnu.org>
|
||||||
|
|
||||||
|
* Source/NSObject.m: ([methodSignatureForSelector:]) remote the check
|
||||||
|
(and exception) to see if the sel types are the same as the signature
|
||||||
|
types, since this method is used precisesly when we think we may have
|
||||||
|
a selector with the wrong type information (eg we are using KVC and
|
||||||
|
generated the selector name to access an ivar and the runtime gave us
|
||||||
|
a selector with the type infor for accessing an ivar of another class).
|
||||||
|
Should fix bug #29015
|
||||||
|
|
||||||
2010-02-26 Richard Frith-Macdonald <rfm@gnu.org>
|
2010-02-26 Richard Frith-Macdonald <rfm@gnu.org>
|
||||||
|
|
||||||
* Source/NSBundle.m: Apply suggested fix for bug #29012
|
* Source/NSBundle.m: Apply suggested fix for bug #29012
|
||||||
|
|
|
@ -1450,7 +1450,6 @@ objc_create_block_classes_as_subclasses_of(Class super) __attribute__((weak));
|
||||||
*/
|
*/
|
||||||
- (NSMethodSignature*) methodSignatureForSelector: (SEL)aSelector
|
- (NSMethodSignature*) methodSignatureForSelector: (SEL)aSelector
|
||||||
{
|
{
|
||||||
const char *selTypes;
|
|
||||||
const char *types;
|
const char *types;
|
||||||
struct objc_method *mth;
|
struct objc_method *mth;
|
||||||
Class c;
|
Class c;
|
||||||
|
@ -1459,7 +1458,6 @@ objc_create_block_classes_as_subclasses_of(Class super) __attribute__((weak));
|
||||||
[NSException raise: NSInvalidArgumentException
|
[NSException raise: NSInvalidArgumentException
|
||||||
format: @"%@ null selector given", NSStringFromSelector(_cmd)];
|
format: @"%@ null selector given", NSStringFromSelector(_cmd)];
|
||||||
|
|
||||||
selTypes = sel_get_type(aSelector);
|
|
||||||
c = (GSObjCIsInstance(self) ? object_getClass(self) : (Class)self);
|
c = (GSObjCIsInstance(self) ? object_getClass(self) : (Class)self);
|
||||||
mth = GSGetMethod(c, aSelector, GSObjCIsInstance(self), YES);
|
mth = GSGetMethod(c, aSelector, GSObjCIsInstance(self), YES);
|
||||||
|
|
||||||
|
@ -1516,13 +1514,6 @@ objc_create_block_classes_as_subclasses_of(Class super) __attribute__((weak));
|
||||||
{
|
{
|
||||||
return nil;
|
return nil;
|
||||||
}
|
}
|
||||||
else if (selTypes != 0 && GSSelectorTypesMatch(selTypes, types) == NO)
|
|
||||||
{
|
|
||||||
[NSException raise: NSInternalInconsistencyException
|
|
||||||
format: @"[%@%c%@] selector types (%s) don't match method types (%s)",
|
|
||||||
NSStringFromClass(c), (GSObjCIsInstance(self) ? '-' : '+'),
|
|
||||||
NSStringFromSelector(aSelector), selTypes, types];
|
|
||||||
}
|
|
||||||
return [NSMethodSignature signatureWithObjCTypes: types];
|
return [NSMethodSignature signatureWithObjCTypes: types];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue