Changeset 6711 for trunk/src/ole32/ifs.c


Ignore:
Timestamp:
Sep 15, 2001, 11:32:00 AM (24 years ago)
Author:
sandervl
Message:

restored old version + wine update

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/ole32/ifs.c

    r6648 r6711  
    1 /* $Id: ifs.c,v 1.2 2001-09-05 13:17:09 bird Exp $ */
    21/*
    3  *  basic interfaces
     2 *      basic interfaces
    43 *
    5  *  Copyright 1997  Marcus Meissner
     4 *      Copyright 1997  Marcus Meissner
    65 */
    76
     
    3130
    3231/******************************************************************************
    33  *      IUnknown_AddRef [VTABLE:IUNKNOWN.1]
    34  */
    35 static ULONG WINAPI IUnknown_fnAddRef(LPUNKNOWN iface) {
    36     ICOM_THIS(IUnknownImpl,iface);
    37     TRACE("(%p)->AddRef()\n",This);
    38     return ++(This->ref);
     32 *              IUnknown_AddRef [VTABLE:IUNKNOWN.1]
     33 */
     34static ULONG WINAPI IUnknown_fnAddRef(LPUNKNOWN iface) { 
     35        ICOM_THIS(IUnknownImpl,iface);
     36        TRACE("(%p)->AddRef()\n",This);
     37        return ++(This->ref);
    3938}
    4039
     
    4342 */
    4443static ULONG WINAPI IUnknown_fnRelease(LPUNKNOWN iface) {
    45     ICOM_THIS(IUnknownImpl,iface);
    46     TRACE("(%p)->Release()\n",This);
    47     if (!--(This->ref)) {
    48         HeapFree(GetProcessHeap(),0,This);
    49         return 0;
    50     }
    51     return This->ref;
     44        ICOM_THIS(IUnknownImpl,iface);
     45        TRACE("(%p)->Release()\n",This);
     46        if (!--(This->ref)) {
     47                HeapFree(GetProcessHeap(),0,This);
     48                return 0;
     49        }
     50        return This->ref;
    5251}
    5352
     
    5655 */
    5756static HRESULT WINAPI IUnknown_fnQueryInterface(LPUNKNOWN iface,REFIID refiid,LPVOID *obj) {
    58     ICOM_THIS(IUnknownImpl,iface);
    59 
    60     TRACE("(%p)->QueryInterface(%s,%p)\n",This,debugstr_guid(refiid),obj);
    61 
    62     if (!memcmp(&IID_IUnknown,refiid,sizeof(IID_IUnknown))) {
    63         *obj = This;
    64         return 0;
    65     }
    66     return OLE_E_ENUM_NOMORE;
    67 }
    68 
    69 static ICOM_VTABLE(IUnknown) uvt =
    70 {
    71     ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
    72     IUnknown_fnQueryInterface,
    73     IUnknown_fnAddRef,
    74     IUnknown_fnRelease
     57        ICOM_THIS(IUnknownImpl,iface);
     58
     59        TRACE("(%p)->QueryInterface(%s,%p)\n",This,debugstr_guid(refiid),obj);
     60
     61        if (!memcmp(&IID_IUnknown,refiid,sizeof(IID_IUnknown))) {
     62                *obj = This;
     63                return 0;
     64        }
     65        return OLE_E_ENUM_NOMORE;
     66}
     67
     68static ICOM_VTABLE(IUnknown) uvt = 
     69{
     70        ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
     71        IUnknown_fnQueryInterface,
     72        IUnknown_fnAddRef,
     73        IUnknown_fnRelease
    7574};
    7675
     
    8079LPUNKNOWN
    8180IUnknown_Constructor() {
    82     IUnknownImpl*   unk;
    83 
    84     unk = (IUnknownImpl*)HeapAlloc(GetProcessHeap(),0,sizeof(IUnknownImpl));
    85     ICOM_VTBL(unk)  = &uvt;
    86     unk->ref    = 1;
    87     return (LPUNKNOWN)unk;
     81        IUnknownImpl*   unk;
     82
     83        unk = (IUnknownImpl*)HeapAlloc(GetProcessHeap(),0,sizeof(IUnknownImpl));
     84        ICOM_VTBL(unk)  = &uvt;
     85        unk->ref        = 1;
     86        return (LPUNKNOWN)unk;
    8887}
    8988
     
    101100
    102101/******************************************************************************
    103  *      IMalloc16_QueryInterface    [COMPOBJ.500]
     102 *              IMalloc16_QueryInterface        [COMPOBJ.500]
    104103 */
    105104HRESULT WINAPI IMalloc16_fnQueryInterface(IMalloc16* iface,REFIID refiid,LPVOID *obj) {
    106105        ICOM_THIS(IMalloc16Impl,iface);
    107106
    108     TRACE("(%p)->QueryInterface(%s,%p)\n",This,debugstr_guid(refiid),obj);
    109     if (    !memcmp(&IID_IUnknown,refiid,sizeof(IID_IUnknown)) ||
    110         !memcmp(&IID_IMalloc,refiid,sizeof(IID_IMalloc))
    111     ) {
    112         *obj = This;
    113         return 0;
    114     }
    115     return OLE_E_ENUM_NOMORE;
    116 }
    117 
    118 /******************************************************************************
    119  *      IMalloc16_AddRef    [COMPOBJ.501]
     107        TRACE("(%p)->QueryInterface(%s,%p)\n",This,debugstr_guid(refiid),obj);
     108        if (    !memcmp(&IID_IUnknown,refiid,sizeof(IID_IUnknown)) ||
     109                !memcmp(&IID_IMalloc,refiid,sizeof(IID_IMalloc))
     110        ) {
     111                *obj = This;
     112                return 0;
     113        }
     114        return OLE_E_ENUM_NOMORE;
     115}
     116
     117/******************************************************************************
     118 *              IMalloc16_AddRef        [COMPOBJ.501]
    120119 */
    121120ULONG WINAPI IMalloc16_fnAddRef(IMalloc16* iface) {
    122121        ICOM_THIS(IMalloc16Impl,iface);
    123     TRACE("(%p)->AddRef()\n",This);
    124     return 1; /* cannot be freed */
    125 }
    126 
    127 /******************************************************************************
    128  *      IMalloc16_Release   [COMPOBJ.502]
     122        TRACE("(%p)->AddRef()\n",This);
     123        return 1; /* cannot be freed */
     124}
     125
     126/******************************************************************************
     127 *              IMalloc16_Release       [COMPOBJ.502]
    129128 */
    130129ULONG WINAPI IMalloc16_fnRelease(IMalloc16* iface) {
    131130        ICOM_THIS(IMalloc16Impl,iface);
    132     TRACE("(%p)->Release()\n",This);
    133     return 1; /* cannot be freed */
     131        TRACE("(%p)->Release()\n",This);
     132        return 1; /* cannot be freed */
    134133}
    135134
     
    139138SEGPTR WINAPI IMalloc16_fnAlloc(IMalloc16* iface,DWORD cb) {
    140139        ICOM_THIS(IMalloc16Impl,iface);
    141     TRACE("(%p)->Alloc(%ld)\n",This,cb);
     140        TRACE("(%p)->Alloc(%ld)\n",This,cb);
    142141        return MapLS( HeapAlloc( GetProcessHeap(), HEAP_WINE_SEGPTR, cb ) );
    143142}
     
    166165DWORD WINAPI IMalloc16_fnGetSize(const IMalloc16* iface,SEGPTR pv)
    167166{
    168     ICOM_CTHIS(IMalloc16Impl,iface);
     167        ICOM_CTHIS(IMalloc16Impl,iface);
    169168        TRACE("(%p)->GetSize(%08lx)\n",This,pv);
    170169        return HeapSize( GetProcessHeap(), HEAP_WINE_SEGPTR, MapSL(pv) );
     
    176175INT16 WINAPI IMalloc16_fnDidAlloc(const IMalloc16* iface,LPVOID pv) {
    177176        ICOM_CTHIS(IMalloc16,iface);
    178     TRACE("(%p)->DidAlloc(%p)\n",This,pv);
    179     return (INT16)-1;
     177        TRACE("(%p)->DidAlloc(%p)\n",This,pv);
     178        return (INT16)-1;
    180179}
    181180
     
    185184LPVOID WINAPI IMalloc16_fnHeapMinimize(IMalloc16* iface) {
    186185        ICOM_THIS(IMalloc16Impl,iface);
    187     TRACE("(%p)->HeapMinimize()\n",This);
    188     return NULL;
     186        TRACE("(%p)->HeapMinimize()\n",This);
     187        return NULL;
    189188}
    190189
     
    196195LPMALLOC16
    197196IMalloc16_Constructor() {
    198     IMalloc16Impl*  This;
    199         HMODULE16   hcomp = GetModuleHandle16("COMPOBJ");
    200 
    201     This = (IMalloc16Impl*)SEGPTR_NEW(IMalloc16Impl);
     197        IMalloc16Impl*  This;
     198        HMODULE16       hcomp = GetModuleHandle16("COMPOBJ");
     199
     200        This = (IMalloc16Impl*)SEGPTR_NEW(IMalloc16Impl);
    202201        if (!msegvt16) {
    203202            msegvt16 = SEGPTR_NEW(ICOM_VTABLE(IMalloc16));
     
    214213            VTENT(HeapMinimize);
    215214#undef VTENT
    216     }
     215        }
    217216        ICOM_VTBL(This) = (ICOM_VTABLE(IMalloc16)*)SEGPTR_GET(msegvt16);
    218     This->ref = 1;
    219     return (LPMALLOC16)SEGPTR_GET(This);
     217        This->ref = 1;
     218        return (LPMALLOC16)SEGPTR_GET(This);
    220219}
    221220#endif
     
    231230
    232231/******************************************************************************
    233  *      IMalloc32_QueryInterface    [VTABLE]
     232 *              IMalloc32_QueryInterface        [VTABLE]
    234233 */
    235234static HRESULT WINAPI IMalloc_fnQueryInterface(LPMALLOC iface,REFIID refiid,LPVOID *obj) {
    236     ICOM_THIS(IMalloc32Impl,iface);
    237 
    238     TRACE("(%p)->QueryInterface(%s,%p)\n",This,debugstr_guid(refiid),obj);
    239     if (    !memcmp(&IID_IUnknown,refiid,sizeof(IID_IUnknown)) ||
    240         !memcmp(&IID_IMalloc,refiid,sizeof(IID_IMalloc))
    241     ) {
    242         *obj = This;
    243         return S_OK;
    244     }
    245     return OLE_E_ENUM_NOMORE;
    246 }
    247 
    248 /******************************************************************************
    249  *      IMalloc32_AddRef    [VTABLE]
     235        ICOM_THIS(IMalloc32Impl,iface);
     236
     237        TRACE("(%p)->QueryInterface(%s,%p)\n",This,debugstr_guid(refiid),obj);
     238        if (    !memcmp(&IID_IUnknown,refiid,sizeof(IID_IUnknown)) ||
     239                !memcmp(&IID_IMalloc,refiid,sizeof(IID_IMalloc))
     240        ) {
     241                *obj = This;
     242                return S_OK;
     243        }
     244        return OLE_E_ENUM_NOMORE;
     245}
     246
     247/******************************************************************************
     248 *              IMalloc32_AddRef        [VTABLE]
    250249 */
    251250static ULONG WINAPI IMalloc_fnAddRef(LPMALLOC iface) {
    252     ICOM_THIS(IMalloc32Impl,iface);
    253     TRACE("(%p)->AddRef()\n",This);
    254     return 1; /* cannot be freed */
    255 }
    256 
    257 /******************************************************************************
    258  *      IMalloc32_Release   [VTABLE]
     251        ICOM_THIS(IMalloc32Impl,iface);
     252        TRACE("(%p)->AddRef()\n",This);
     253        return 1; /* cannot be freed */
     254}
     255
     256/******************************************************************************
     257 *              IMalloc32_Release       [VTABLE]
    259258 */
    260259static ULONG WINAPI IMalloc_fnRelease(LPMALLOC iface) {
    261     ICOM_THIS(IMalloc32Impl,iface);
    262     TRACE("(%p)->Release()\n",This);
    263     return 1; /* cannot be freed */
     260        ICOM_THIS(IMalloc32Impl,iface);
     261        TRACE("(%p)->Release()\n",This);
     262        return 1; /* cannot be freed */
    264263}
    265264
     
    268267 */
    269268static LPVOID WINAPI IMalloc_fnAlloc(LPMALLOC iface,DWORD cb) {
    270     LPVOID addr;
    271     ICOM_THIS(IMalloc32Impl,iface);
    272     addr = HeapAlloc(GetProcessHeap(),0,cb);
    273     TRACE("(%p)->Alloc(%ld) -> %p\n",This,cb,addr);
    274     return addr;
     269        LPVOID addr;
     270        ICOM_THIS(IMalloc32Impl,iface);
     271        addr = HeapAlloc(GetProcessHeap(),0,cb);
     272        TRACE("(%p)->Alloc(%ld) -> %p\n",This,cb,addr);
     273        return addr;
    275274}
    276275
     
    279278 */
    280279static LPVOID WINAPI IMalloc_fnRealloc(LPMALLOC iface,LPVOID pv,DWORD cb) {
    281     ICOM_THIS(IMalloc32Impl,iface);
    282     TRACE("(%p)->Realloc(%p,%ld)\n",This,pv,cb);
    283     return HeapReAlloc(GetProcessHeap(),0,pv,cb);
     280        ICOM_THIS(IMalloc32Impl,iface);
     281        TRACE("(%p)->Realloc(%p,%ld)\n",This,pv,cb);
     282        return HeapReAlloc(GetProcessHeap(),0,pv,cb);
    284283}
    285284
     
    288287 */
    289288static VOID WINAPI IMalloc_fnFree(LPMALLOC iface,LPVOID pv) {
    290     ICOM_THIS(IMalloc32Impl,iface);
    291     TRACE("(%p)->Free(%p)\n",This,pv);
    292     HeapFree(GetProcessHeap(),0,pv);
     289        ICOM_THIS(IMalloc32Impl,iface);
     290        TRACE("(%p)->Free(%p)\n",This,pv);
     291        HeapFree(GetProcessHeap(),0,pv);
    293292}
    294293
     
    297296 */
    298297static DWORD WINAPI IMalloc_fnGetSize(LPMALLOC iface,LPVOID pv) {
    299     ICOM_CTHIS(IMalloc,iface);
    300     TRACE("(%p)->GetSize(%p)\n",This,pv);
    301     return HeapSize(GetProcessHeap(),0,pv);
     298        ICOM_CTHIS(IMalloc,iface);
     299        TRACE("(%p)->GetSize(%p)\n",This,pv);
     300        return HeapSize(GetProcessHeap(),0,pv);
    302301}
    303302
     
    306305 */
    307306static INT WINAPI IMalloc_fnDidAlloc(LPMALLOC iface,LPVOID pv) {
    308     ICOM_CTHIS(IMalloc32Impl,iface);
    309     TRACE("(%p)->DidAlloc(%p)\n",This,pv);
    310     return -1;
     307        ICOM_CTHIS(IMalloc32Impl,iface);
     308        TRACE("(%p)->DidAlloc(%p)\n",This,pv);
     309        return -1;
    311310}
    312311
     
    315314 */
    316315static VOID WINAPI IMalloc_fnHeapMinimize(LPMALLOC iface) {
    317     ICOM_THIS(IMalloc32Impl,iface);
    318     TRACE("(%p)->HeapMinimize()\n",This);
    319 }
    320 
    321 static ICOM_VTABLE(IMalloc) VT_IMalloc32 =
     316        ICOM_THIS(IMalloc32Impl,iface);
     317        TRACE("(%p)->HeapMinimize()\n",This);
     318}
     319
     320static ICOM_VTABLE(IMalloc) VT_IMalloc32 = 
    322321{
    323322    ICOM_MSVTABLE_COMPAT_DummyRTTIVALUE
     
    338337LPMALLOC
    339338IMalloc_Constructor() {
    340     IMalloc32Impl* This;
    341 
    342     This = (IMalloc32Impl*)HeapAlloc(GetProcessHeap(),0,sizeof(IMalloc32Impl));
    343     ICOM_VTBL(This) = &VT_IMalloc32;
    344     This->ref = 1;
    345     return (LPMALLOC)This;
     339        IMalloc32Impl* This;
     340
     341        This = (IMalloc32Impl*)HeapAlloc(GetProcessHeap(),0,sizeof(IMalloc32Impl));
     342        ICOM_VTBL(This) = &VT_IMalloc32;
     343        This->ref = 1;
     344        return (LPMALLOC)This;
    346345}
    347346
     
    351350
    352351/******************************************************************************
    353  *      IsValidInterface    [OLE32.78]
     352 *              IsValidInterface        [OLE32.78]
    354353 *
    355354 * RETURNS
     
    357356 */
    358357BOOL WINAPI IsValidInterface(
    359     LPUNKNOWN punk  /* [in] interface to be tested */
     358        LPUNKNOWN punk  /* [in] interface to be tested */
    360359) {
    361     return !(
    362         IsBadReadPtr(punk,4)                    ||
    363         IsBadReadPtr(ICOM_VTBL(punk),4)             ||
     360        return !(
     361                IsBadReadPtr(punk,4)                                    ||
     362                IsBadReadPtr(ICOM_VTBL(punk),4)                         ||
    364363#ifdef __WIN32OS2__
    365         IsBadReadPtr(ICOM_VTBL(punk)->fnQueryInterface,9)   ||
    366         IsBadCodePtr((FARPROC)ICOM_VTBL(punk)->fnQueryInterface)
     364                IsBadReadPtr(ICOM_VTBL(punk)->fnQueryInterface,9)       ||
     365                IsBadCodePtr((FARPROC)ICOM_VTBL(punk)->fnQueryInterface)
    367366#else
    368         IsBadReadPtr(ICOM_VTBL(punk)->QueryInterface,9) ||
    369         IsBadCodePtr((FARPROC)ICOM_VTBL(punk)->QueryInterface)
     367                IsBadReadPtr(ICOM_VTBL(punk)->QueryInterface,9) ||
     368                IsBadCodePtr((FARPROC)ICOM_VTBL(punk)->QueryInterface)
    370369#endif
    371     );
    372 }
     370        );
     371}
Note: See TracChangeset for help on using the changeset viewer.