Feedback requested for Mac OSX x86 stack patch -- #2

Robert Shearman rob at codeweavers.com
Thu Jun 8 04:36:31 CDT 2006


Nick Burns wrote:

> diff -u -p -r1.114 ChangeLog
> --- ChangeLog   24 May 2006 18:09:06 -0000      1.114
> +++ ChangeLog   8 Jun 2006 07:06:10 -0000
> @@ -1,3 +1,8 @@
> +2006-06-08  Nick Burns <adger44 at hotmail.com>
> +
> +       * include/windef.h:
> +       If on Mac OSX (x86) use force_align_arg_pointer to fix the 
> stack on entry to Wine.
> +
>  2006-05-24  Alexandre Julliard <julliard at winehq.org>
>  
>         * dlls/usp10/tests/usp10.c:


You don't need to patch ChangeLog; it is update each release from GIT 
history. Just include the text you want in the change log in the email 
you send the patch with.

> Index: include/windef.h
> ===================================================================
> RCS file: /home/wine/wine/include/windef.h,v
> retrieving revision 1.103
> diff -u -p -r1.103 windef.h
> --- include/windef.h    5 Jun 2006 12:29:21 -0000    1.103
> +++ include/windef.h    8 Jun 2006 05:14:30 -0000
> @@ -52,7 +52,12 @@ extern "C" {
>  #ifndef __stdcall
>  # ifdef __i386__
>  #  ifdef __GNUC__
> -#   define __stdcall __attribute__((__stdcall__))
> +#   ifdef __APPLE__
> +     /* Mac OSX uses 16-byte aligned stack and not a 4-byte one -- so 
> we must realign on entry */


Shouldn't this be #if defined __APPLE__ && defined __i386__?

> +#    define __stdcall __attribute__((__stdcall__)) 
> __attribute((force_align_arg_pointer))
> +#   else
> +#    define __stdcall __attribute__((__stdcall__))
> +#   endif
>  #  elif defined(_MSC_VER)
>      /* Nothing needs to be done. __stdcall already exists */
>  #  else


-- 
Rob Shearman




More information about the wine-devel mailing list