Get -methodSignatureForSelector: right again in case the method is

called on a class object and the old runtime is used.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@32689 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Wolfgang Lux 2011-03-22 20:59:06 +00:00
parent 2ddc940445
commit 2a50497248
2 changed files with 19 additions and 6 deletions

View file

@ -1,8 +1,14 @@
2011-03-32 Riccardo Mottola <rm@gnu.org>
2011-03-22 Wolfgang Lux <wolfgang.lux@gmail.com>
* Source/NSObject.m (-methodSignatureForSelector:): Get method
right again in case the method is called on a class object and the
old runtime is used.
2011-03-21 Riccardo Mottola <rm@gnu.org>
* Tests/base/NSNumberFormatter/basic.m:
Added new test.
2011-03-18 Nicola Pero <nicola.pero@meta-innovation.com>
* Documentation/GNUmakefile (CODING-STANDARDS_TEXI_FILES,
@ -10,12 +16,12 @@
Removed.
(DOCUMENT_TEXT_NAME, TOP_DOC_FILES): Fixed names of files to
generate; for example, INSTALL instead of install.
2011-03-18 Riccardo Mottola <rm@gnu.org>
* Source/NSSortDescriptor.m:
Use Cocoa values for the coding keys.
2011-03-18 Richard Frith-Macdonald <rfm@gnu.org>
* Source/Additions/GSObjCRuntime.m: Use old API to work around bug in

View file

@ -1508,8 +1508,15 @@ objc_create_block_classes_as_subclasses_of(Class super);
struct objc_slot *slot = objc_get_slot(object_getClass(self), aSelector);
types = slot->types;
#else
struct objc_method *mth =
GSGetMethod(c, aSelector, GSObjCIsInstance(self), YES);
struct objc_method *mth;
if (GSObjCIsInstance(self))
{
mth = GSGetMethod(object_getClass(self), aSelector, YES, YES);
}
else
{
mth = GSGetMethod((Class)self, aSelector, NO, YES);
}
types = method_getTypeEncoding (mth);
#endif
}