diff --git a/ChangeLog b/ChangeLog index 7bd0e1e18..9dba9b6a3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2010-09-20 Wolfgang Lux + + * Source/ObjectiveC2/runtime.c (method_getImplementation, + method_getName): Fix unchecked pointer dereferences, which could + cause crashes when attempting to invoke a selector which is not + implemented by the target. + 2010-09-19 Quentin Mathe * Headers/Additions/GNUstepBase/preface.h.in: diff --git a/Source/ObjectiveC2/runtime.c b/Source/ObjectiveC2/runtime.c index 686502119..e800b15f6 100644 --- a/Source/ObjectiveC2/runtime.c +++ b/Source/ObjectiveC2/runtime.c @@ -675,13 +675,13 @@ method_getArgumentType(Method method, IMP method_getImplementation(Method method) { - return (IMP) method->method_imp; + return method ? (IMP) method->method_imp : (IMP) 0; } SEL method_getName(Method method) { - return method->method_name; + return method ? method->method_name : (SEL) 0; } unsigned