From 2eab2531568497e8fb1b3a98057831d4e7ebe7c3 Mon Sep 17 00:00:00 2001 From: fedor Date: Wed, 29 Jun 2005 14:40:11 +0000 Subject: [PATCH] * Source/NSInvocation.m (-getReturnValue:, -setReturnValue:): Only muck with size of buffer if we're using (deprecated) mframe. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@21377 72102866-910b-0410-8b05-ffd578937521 --- ChangeLog | 5 +++++ Source/NSInvocation.m | 10 ++++++++++ 2 files changed, 15 insertions(+) diff --git a/ChangeLog b/ChangeLog index 08c4e9f3d..6100a35f9 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2005-06-28 Adam Fedor + + * Source/NSInvocation.m (-getReturnValue:, -setReturnValue:): Only + muck with size of buffer if we're using (deprecated) mframe. + 2005-06-27 Richard Frith-Macdonald * Source/NSKeyedArchiver.m: Fix typo ... superClass should be diff --git a/Source/NSInvocation.m b/Source/NSInvocation.m index 25ae067c8..82263289f 100644 --- a/Source/NSInvocation.m +++ b/Source/NSInvocation.m @@ -294,9 +294,14 @@ _arg_addr(NSInvocation *inv, int index) if (*_info[0].type != _C_VOID) { int length = _info[0].size; +#if !defined(USE_LIBFFI) && !defined(USE_FFCALL) +/* NOTE: This won't work unless -[NSMethodSignature methodReturnLength] + is also changed, but since mframe is depreciated, this should all + be removed in the near future anyway... */ #if WORDS_BIGENDIAN if (length < sizeof(void*)) length = sizeof(void*); +#endif #endif memcpy(buffer, _retval, length); } @@ -402,9 +407,14 @@ _arg_addr(NSInvocation *inv, int index) { int length = _info[0].size; +#if !defined(USE_LIBFFI) && !defined(USE_FFCALL) +/* NOTE: This won't work unless -[NSMethodSignature methodReturnLength] + is also changed, but since mframe is depreciated, this should all + be removed in the near future anyway... */ #if WORDS_BIGENDIAN if (length < sizeof(void*)) length = sizeof(void*); +#endif #endif memcpy(_retval, buffer, length); }