4 * Copyright 2010 Marcus Meissner
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 2.1 of the License, or (at your option) any later version.
12 * This library is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15 * Lesser General Public License for more details.
17 * You should have received a copy of the GNU Lesser General Public
18 * License along with this library; if not, write to the Free Software
19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
22 #define WIN32_NO_STATUS
24 #define COM_NO_WINDOWS_H
31 #include <wine/test.h>
33 //#include <winbase.h>
34 //#include <winuser.h>
37 //#include <winerror.h>
44 struct _ATL_OBJMAP_ENTRYW
;
45 struct _AtlCreateWndData
;
46 struct _ATL_TERMFUNC_ELEM
;
52 HINSTANCE m_hInstResource
;
53 HINSTANCE m_hInstTypeLib
;
54 struct _ATL_OBJMAP_ENTRYW
* m_pObjMap
;
59 CRITICAL_SECTION m_csTypeInfoHolder
;
60 CRITICAL_SECTION m_csStaticDataInit
;
62 CRITICAL_SECTION m_csWindowCreate
;
63 CRITICAL_SECTION m_csObjMap
;
66 struct _AtlCreateWndData
* m_pCreateWndList
;
72 struct _ATL_TERMFUNC_ELEM
* m_pTermFuncs
;
75 HRESULT WINAPI
AtlModuleInit(struct _ATL_MODULEW
* pM
, struct _ATL_OBJMAP_ENTRYW
* p
, HINSTANCE h
);
78 static void test_StructSize(void)
80 struct _ATL_MODULEW
*tst
;
84 tst
= HeapAlloc (GetProcessHeap(),HEAP_ZERO_MEMORY
,MAXSIZE
);
86 for (i
=0;i
<MAXSIZE
;i
++) {
88 hres
= AtlModuleInit(tst
, NULL
, NULL
);
91 case FIELD_OFFSET( struct _ATL_MODULEW
, dwAtlBuildVer
):
92 case sizeof(struct _ATL_MODULEW
):
94 case sizeof(struct _ATL_MODULEW
) + sizeof(void *):
96 ok (hres
== S_OK
, "AtlModuleInit with %d failed (0x%x).\n", i
, (int)hres
);
100 broken((i
> FIELD_OFFSET( struct _ATL_MODULEW
, dwAtlBuildVer
)) && (hres
== S_OK
)), /* Win95 */
101 "AtlModuleInit with %d succeeded? (0x%x).\n", i
, (int)hres
);
106 HeapFree (GetProcessHeap(), 0, tst
);