From: Robert Shearman <[EMAIL PROTECTED]>
Subject: Re: Feedback requested for Mac OSX x86 stack patch -- #2
Date: Thu, 08 Jun 2006 10:36:31 +0100
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 <[EMAIL PROTECTED]>
+
+ * 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 <[EMAIL PROTECTED]>
* 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.
Got ya no changelog dealies -- was unsure about that part...
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__?
Isnt ..
# ifdef __i386__
# ifdef __GNUC__
# ifdef __APPLE__
... the same? (should it be more clear?)
+# 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
- Nick