Store the last error code at the TEB offset used by NT instead of the
Win9x one.
diff --git a/include/winbase.h b/include/winbase.h
index 47315ca..25d8224 100644
--- a/include/winbase.h
+++ b/include/winbase.h
@@ -1903,7 +1903,7 @@
extern inline DWORD WINAPI GetLastError(void)
{
DWORD ret;
- __asm__ __volatile__( ".byte 0x64\n\tmovl 0x60,%0" : "=r" (ret) );
+ __asm__ __volatile__( ".byte 0x64\n\tmovl 0x34,%0" : "=r" (ret) );
return ret;
}
@@ -1926,7 +1926,7 @@
extern inline void WINAPI SetLastError( DWORD err );
extern inline void WINAPI SetLastError( DWORD err )
{
- __asm__ __volatile__( ".byte 0x64\n\tmovl %0,0x60" : : "r" (err) : "memory" );
+ __asm__ __volatile__( ".byte 0x64\n\tmovl %0,0x34" : : "r" (err) : "memory" );
}
extern inline HANDLE WINAPI GetProcessHeap(void);