Changeset 9913 for trunk/src/kernel32
- Timestamp:
- Mar 6, 2003, 1:49:08 PM (23 years ago)
- Location:
- trunk/src/kernel32
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kernel32/exceptutil.asm
r9822 r9913 1 ; $Id: exceptutil.asm,v 1.2 4 2003-02-18 11:38:30sandervl Exp $1 ; $Id: exceptutil.asm,v 1.25 2003-03-06 12:49:08 sandervl Exp $ 2 2 3 3 ;/* … … 155 155 156 156 157 ;;ULONG CDECL AsmCallThreadHandler(BOOL fAlignStack, ULONG handler, LPVOID parameter); 157 158 PUBLIC _AsmCallThreadHandler 158 159 _AsmCallThreadHandler proc near 159 160 push ebp 160 161 mov ebp, esp 162 163 ;first check if we have 128kb stack or more; if not, then skip the stack alignment code 164 mov eax, [ebp+8] 165 cmp eax, 0 166 je @goodthreadstack 161 167 162 168 ;We're asking for problems if our stack start near a 64kb boundary … … 192 198 @goodthreadstack: 193 199 194 push dword ptr [ebp+1 2]195 mov eax, dword ptr [ebp+ 8]200 push dword ptr [ebp+16] 201 mov eax, dword ptr [ebp+12] 196 202 call eax 197 203 -
trunk/src/kernel32/exceptutil.h
r8548 r9913 1 /* $Id: exceptutil.h,v 1.1 4 2002-06-02 12:42:09sandervl Exp $ */1 /* $Id: exceptutil.h,v 1.15 2003-03-06 12:49:08 sandervl Exp $ */ 2 2 3 3 /* … … 32 32 #endif 33 33 34 ULONG CDECL AsmCallThreadHandler( ULONG handler, LPVOID parameter);34 ULONG CDECL AsmCallThreadHandler(BOOL fAlignStack, ULONG handler, LPVOID parameter); 35 35 36 36 DWORD CDECL CallEntryPoint(DWORD entryPoint, DWORD parameter); -
trunk/src/kernel32/thread.cpp
r9910 r9913 1 /* $Id: thread.cpp,v 1.5 1 2003-03-06 10:22:27sandervl Exp $ */1 /* $Id: thread.cpp,v 1.52 2003-03-06 12:49:08 sandervl Exp $ */ 2 2 3 3 /* … … 348 348 Win32DllBase::attachThreadToAllDlls(); //send DLL_THREAD_ATTACH message to all dlls 349 349 350 BOOL fAlignStack = ((ULONG)winteb->stack_top - (ULONG)winteb->stack_low) >= 128*1024; 351 350 352 //Set FPU control word to 0x27F (same as in NT) 351 353 CONTROL87(0x27F, 0xFFF); 352 rc = AsmCallThreadHandler( threadCallback, userdata);354 rc = AsmCallThreadHandler(fAlignStack, threadCallback, userdata); 353 355 354 356 if(fExitProcess) {
Note:
See TracChangeset
for help on using the changeset viewer.