source: trunk/src/win32k/test/dos.c@ 4787

Last change on this file since 4787 was 4787, checked in by bird, 25 years ago

Changed email address... (may some dll fixes changes too.)

File size: 1.7 KB
Line 
1/* $Id: dos.c,v 1.3 2000-12-11 06:53:57 bird Exp $
2 *
3 * Thunkers for OS/2 APIs.
4 *
5 * Some APIs requires Linear Stack, some have to overridden to
6 * emulate different things.
7 *
8 * Copyright (c) 2000 knut st. osmundsen (knut.stange.osmundsen@mynd.no)
9 *
10 * Project Odin Software License can be found in LICENSE.TXT
11 *
12 */
13
14/*******************************************************************************
15* Defined Constants And Macros *
16*******************************************************************************/
17#define INCL_BASE
18#define INCL_NO_FAKE
19
20/*******************************************************************************
21* Header Files *
22*******************************************************************************/
23#include <os2.h>
24
25#include "devSegDf.h" /* Win32k segment definitions. */
26
27#include "test.h"
28
29
30/*******************************************************************************
31* External Functions *
32* (These are prototypes for functions in the IMPORTS section of the def-file.) *
33*******************************************************************************/
34APIRET APIENTRY _DosWrite(HFILE hFile, PVOID pBuffer, ULONG cbWrite, PULONG pcbActual);
35
36
37/**
38 * DosWrite overload. Ensures that the stack is 32-bit!
39 */
40APIRET APIENTRY DosWrite(HFILE hFile, PVOID pBuffer, ULONG cbWrite, PULONG pcbActual)
41{
42 BOOL f32Stack = ((int)&hFile > 0x10000);
43 APIRET rc;
44 if (!f32Stack)
45 ThunkStack16To32();
46
47 rc = _DosWrite(hFile, pBuffer, cbWrite, pcbActual);
48
49 if (!f32Stack)
50 ThunkStack32To16();
51
52 return rc;
53}
54
Note: See TracBrowser for help on using the repository browser.