[0.4.14][RICHED20] Decorate thiscall functions as such. ROSTESTS-375 CORE-17021
authorJoachim Henze <Joachim.Henze@reactos.org>
Mon, 15 Nov 2021 21:30:53 +0000 (22:30 +0100)
committerJoachim Henze <Joachim.Henze@reactos.org>
Mon, 15 Nov 2021 21:30:53 +0000 (22:30 +0100)
This fixes CORE-17021 'Mail.ru agent crashes on master'
(just threw first-chance exception in 0.4.14RC without actually causing the crash there)
which regressed by 0.4.14-dev-418-g 661b8a2a05f70f5d2eddc0fdf089f003e84c79bc

and it fixes ROSTESTS-375 'riched20:txtsrv crashes on Test WHS x86'
which regressed by 0.4.14-dev-419-g 76cf09cfea15911082245a65547fb67512b710ce

fix picked from 0.4.15-dev-3370-g c8b6abab80db2d2856dcedaa907f5b22eab3280e

dll/win32/riched20/txthost.c
dll/win32/riched20/txtsrv.c
modules/rostests/winetests/riched20/txtsrv.c
sdk/include/psdk/textserv.h

index 5cdb8c0..35e0163 100644 (file)
@@ -103,63 +103,63 @@ static ULONG WINAPI ITextHostImpl_Release(ITextHost *iface)
     return ref;
 }
 
-DECLSPEC_HIDDEN HDC WINAPI ITextHostImpl_TxGetDC(ITextHost *iface)
+DECLSPEC_HIDDEN HDC __thiscall ITextHostImpl_TxGetDC(ITextHost *iface)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return GetDC(This->hWnd);
 }
 
-DECLSPEC_HIDDEN INT WINAPI ITextHostImpl_TxReleaseDC(ITextHost *iface, HDC hdc)
+DECLSPEC_HIDDEN INT __thiscall ITextHostImpl_TxReleaseDC(ITextHost *iface, HDC hdc)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return ReleaseDC(This->hWnd, hdc);
 }
 
-DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxShowScrollBar(ITextHost *iface, INT fnBar, BOOL fShow)
+DECLSPEC_HIDDEN BOOL __thiscall ITextHostImpl_TxShowScrollBar(ITextHost *iface, INT fnBar, BOOL fShow)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return ShowScrollBar(This->hWnd, fnBar, fShow);
 }
 
-DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxEnableScrollBar(ITextHost *iface, INT fuSBFlags, INT fuArrowflags)
+DECLSPEC_HIDDEN BOOL __thiscall ITextHostImpl_TxEnableScrollBar(ITextHost *iface, INT fuSBFlags, INT fuArrowflags)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return EnableScrollBar(This->hWnd, fuSBFlags, fuArrowflags);
 }
 
-DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxSetScrollRange(ITextHost *iface, INT fnBar, LONG nMinPos, INT nMaxPos,
-                                           BOOL fRedraw)
+DECLSPEC_HIDDEN BOOL __thiscall ITextHostImpl_TxSetScrollRange(ITextHost *iface, INT fnBar, LONG nMinPos, INT nMaxPos,
+                                                               BOOL fRedraw)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return SetScrollRange(This->hWnd, fnBar, nMinPos, nMaxPos, fRedraw);
 }
 
-DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxSetScrollPos(ITextHost *iface, INT fnBar, INT nPos, BOOL fRedraw)
+DECLSPEC_HIDDEN BOOL __thiscall ITextHostImpl_TxSetScrollPos(ITextHost *iface, INT fnBar, INT nPos, BOOL fRedraw)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return SetScrollPos(This->hWnd, fnBar, nPos, fRedraw) != 0;
 }
 
-DECLSPEC_HIDDEN void WINAPI ITextHostImpl_TxInvalidateRect(ITextHost *iface, LPCRECT prc, BOOL fMode)
+DECLSPEC_HIDDEN void __thiscall ITextHostImpl_TxInvalidateRect(ITextHost *iface, LPCRECT prc, BOOL fMode)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     InvalidateRect(This->hWnd, prc, fMode);
 }
 
-DECLSPEC_HIDDEN void WINAPI ITextHostImpl_TxViewChange(ITextHost *iface, BOOL fUpdate)
+DECLSPEC_HIDDEN void __thiscall ITextHostImpl_TxViewChange(ITextHost *iface, BOOL fUpdate)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     if (fUpdate)
         UpdateWindow(This->hWnd);
 }
 
-DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxCreateCaret(ITextHost *iface, HBITMAP hbmp, INT xWidth, INT yHeight)
+DECLSPEC_HIDDEN BOOL __thiscall ITextHostImpl_TxCreateCaret(ITextHost *iface, HBITMAP hbmp, INT xWidth, INT yHeight)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return CreateCaret(This->hWnd, hbmp, xWidth, yHeight);
 }
 
-DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxShowCaret(ITextHost *iface, BOOL fShow)
+DECLSPEC_HIDDEN BOOL __thiscall ITextHostImpl_TxShowCaret(ITextHost *iface, BOOL fShow)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     if (fShow)
@@ -168,34 +168,34 @@ DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxShowCaret(ITextHost *iface, BOOL fSh
         return HideCaret(This->hWnd);
 }
 
-DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxSetCaretPos(ITextHost *iface,
-                                        INT x, INT y)
+DECLSPEC_HIDDEN BOOL __thiscall ITextHostImpl_TxSetCaretPos(ITextHost *iface,
+                                                            INT x, INT y)
 {
     return SetCaretPos(x, y);
 }
 
-DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxSetTimer(ITextHost *iface, UINT idTimer, UINT uTimeout)
+DECLSPEC_HIDDEN BOOL __thiscall ITextHostImpl_TxSetTimer(ITextHost *iface, UINT idTimer, UINT uTimeout)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return SetTimer(This->hWnd, idTimer, uTimeout, NULL) != 0;
 }
 
-DECLSPEC_HIDDEN void WINAPI ITextHostImpl_TxKillTimer(ITextHost *iface, UINT idTimer)
+DECLSPEC_HIDDEN void __thiscall ITextHostImpl_TxKillTimer(ITextHost *iface, UINT idTimer)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     KillTimer(This->hWnd, idTimer);
 }
 
-DECLSPEC_HIDDEN void WINAPI ITextHostImpl_TxScrollWindowEx(ITextHost *iface, INT dx, INT dy, LPCRECT lprcScroll,
-                                           LPCRECT lprcClip, HRGN hRgnUpdate, LPRECT lprcUpdate,
-                                           UINT fuScroll)
+DECLSPEC_HIDDEN void __thiscall ITextHostImpl_TxScrollWindowEx(ITextHost *iface, INT dx, INT dy, LPCRECT lprcScroll,
+                                                               LPCRECT lprcClip, HRGN hRgnUpdate, LPRECT lprcUpdate,
+                                                               UINT fuScroll)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     ScrollWindowEx(This->hWnd, dx, dy, lprcScroll, lprcClip,
                    hRgnUpdate, lprcUpdate, fuScroll);
 }
 
-DECLSPEC_HIDDEN void WINAPI ITextHostImpl_TxSetCapture(ITextHost *iface, BOOL fCapture)
+DECLSPEC_HIDDEN void __thiscall ITextHostImpl_TxSetCapture(ITextHost *iface, BOOL fCapture)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     if (fCapture)
@@ -204,54 +204,50 @@ DECLSPEC_HIDDEN void WINAPI ITextHostImpl_TxSetCapture(ITextHost *iface, BOOL fC
         ReleaseCapture();
 }
 
-DECLSPEC_HIDDEN void WINAPI ITextHostImpl_TxSetFocus(ITextHost *iface)
+DECLSPEC_HIDDEN void __thiscall ITextHostImpl_TxSetFocus(ITextHost *iface)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     SetFocus(This->hWnd);
 }
 
-DECLSPEC_HIDDEN void WINAPI ITextHostImpl_TxSetCursor(ITextHost *iface,
-                                      HCURSOR hcur,
-                                      BOOL fText)
+DECLSPEC_HIDDEN void __thiscall ITextHostImpl_TxSetCursor(ITextHost *iface, HCURSOR hcur, BOOL fText)
 {
     SetCursor(hcur);
 }
 
-DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxScreenToClient(ITextHost *iface, LPPOINT lppt)
+DECLSPEC_HIDDEN BOOL __thiscall ITextHostImpl_TxScreenToClient(ITextHost *iface, LPPOINT lppt)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return ScreenToClient(This->hWnd, lppt);
 }
 
-DECLSPEC_HIDDEN BOOL WINAPI ITextHostImpl_TxClientToScreen(ITextHost *iface, LPPOINT lppt)
+DECLSPEC_HIDDEN BOOL __thiscall ITextHostImpl_TxClientToScreen(ITextHost *iface, LPPOINT lppt)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return ClientToScreen(This->hWnd, lppt);
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxActivate(ITextHost *iface, LONG *plOldState)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxActivate(ITextHost *iface, LONG *plOldState)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     *plOldState = HandleToLong(SetActiveWindow(This->hWnd));
     return (*plOldState ? S_OK : E_FAIL);
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxDeactivate(ITextHost *iface,
-                                          LONG lNewState)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxDeactivate(ITextHost *iface, LONG lNewState)
 {
     HWND ret = SetActiveWindow(LongToHandle(lNewState));
     return (ret ? S_OK : E_FAIL);
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetClientRect(ITextHost *iface, LPRECT prc)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetClientRect(ITextHost *iface, LPRECT prc)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     int ret = GetClientRect(This->hWnd, prc);
     return (ret ? S_OK : E_FAIL);
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetViewInset(ITextHost *iface,
-                                            LPRECT prc)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetViewInset(ITextHost *iface, LPRECT prc)
 {
     prc->top = 0;
     prc->left = 0;
@@ -260,41 +256,36 @@ DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetViewInset(ITextHost *iface,
     return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetCharFormat(ITextHost *iface,
-                                             const CHARFORMATW **ppCF)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetCharFormat(ITextHost *iface, const CHARFORMATW **ppCF)
 {
     return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetParaFormat(ITextHost *iface,
-                                                             const PARAFORMAT **fmt)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetParaFormat(ITextHost *iface, const PARAFORMAT **fmt)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     *fmt = (const PARAFORMAT *)&This->para_fmt;
     return S_OK;
 }
 
-DECLSPEC_HIDDEN COLORREF WINAPI ITextHostImpl_TxGetSysColor(ITextHost *iface,
-                                            int nIndex)
+DECLSPEC_HIDDEN COLORREF __thiscall ITextHostImpl_TxGetSysColor(ITextHost *iface, int nIndex)
 {
     return GetSysColor(nIndex);
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetBackStyle(ITextHost *iface,
-                                            TXTBACKSTYLE *pStyle)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetBackStyle(ITextHost *iface, TXTBACKSTYLE *pStyle)
 {
     *pStyle = TXTBACK_OPAQUE;
     return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetMaxLength(ITextHost *iface,
-                                            DWORD *pLength)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetMaxLength(ITextHost *iface, DWORD *pLength)
 {
     *pLength = INFINITE;
     return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetScrollBars(ITextHost *iface, DWORD *pdwScrollBar)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetScrollBars(ITextHost *iface, DWORD *pdwScrollBar)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     ME_TextEditor *editor = (ME_TextEditor*)GetWindowLongPtrW(This->hWnd, 0);
@@ -317,39 +308,34 @@ DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetScrollBars(ITextHost *iface, D
     return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetPasswordChar(ITextHost *iface,
-                                               WCHAR *pch)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetPasswordChar(ITextHost *iface, WCHAR *pch)
 {
     *pch = '*';
     return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetAcceleratorPos(ITextHost *iface,
-                                                 LONG *pch)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetAcceleratorPos(ITextHost *iface, LONG *pch)
 {
     *pch = -1;
     return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetExtent(ITextHost *iface,
-                                         LPSIZEL lpExtent)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetExtent(ITextHost *iface, LPSIZEL lpExtent)
 {
     return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_OnTxCharFormatChange(ITextHost *iface,
-                                                  const CHARFORMATW *pcf)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_OnTxCharFormatChange(ITextHost *iface, const CHARFORMATW *pcf)
 {
     return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_OnTxParaFormatChange(ITextHost *iface,
-                                                  const PARAFORMAT *ppf)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_OnTxParaFormatChange(ITextHost *iface, const PARAFORMAT *ppf)
 {
     return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetPropertyBits(ITextHost *iface, DWORD dwMask, DWORD *pdwBits)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetPropertyBits(ITextHost *iface, DWORD dwMask, DWORD *pdwBits)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     ME_TextEditor *editor = (ME_TextEditor *)GetWindowLongPtrW(This->hWnd, 0);
@@ -415,7 +401,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetPropertyBits(ITextHost *iface,
     return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxNotify(ITextHost *iface, DWORD iNotify, void *pv)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxNotify(ITextHost *iface, DWORD iNotify, void *pv)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     ME_TextEditor *editor = (ME_TextEditor*)GetWindowLongPtrW(This->hWnd, 0);
@@ -473,19 +459,19 @@ DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxNotify(ITextHost *iface, DWORD iN
     return S_OK;
 }
 
-DECLSPEC_HIDDEN HIMC WINAPI ITextHostImpl_TxImmGetContext(ITextHost *iface)
+DECLSPEC_HIDDEN HIMC __thiscall ITextHostImpl_TxImmGetContext(ITextHost *iface)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     return ImmGetContext(This->hWnd);
 }
 
-DECLSPEC_HIDDEN void WINAPI ITextHostImpl_TxImmReleaseContext(ITextHost *iface, HIMC himc)
+DECLSPEC_HIDDEN void __thiscall ITextHostImpl_TxImmReleaseContext(ITextHost *iface, HIMC himc)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     ImmReleaseContext(This->hWnd, himc);
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI ITextHostImpl_TxGetSelectionBarWidth(ITextHost *iface, LONG *lSelBarWidth)
+DECLSPEC_HIDDEN HRESULT __thiscall ITextHostImpl_TxGetSelectionBarWidth(ITextHost *iface, LONG *lSelBarWidth)
 {
     ITextHostImpl *This = impl_from_ITextHost(iface);
     ME_TextEditor *editor = (ME_TextEditor *)GetWindowLongPtrW(This->hWnd, 0);
index ca38f5c..725dd47 100644 (file)
@@ -132,8 +132,8 @@ static ULONG WINAPI fnTextSrv_Release(ITextServices *iface)
    return IUnknown_Release(This->outer_unk);
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxSendMessage(ITextServices *iface, UINT msg, WPARAM wparam,
-                                       LPARAM lparam, LRESULT *plresult)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxSendMessage(ITextServices *iface, UINT msg, WPARAM wparam,
+                                                           LPARAM lparam, LRESULT *plresult)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
    HRESULT hresult;
@@ -144,11 +144,11 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxSendMessage(ITextServices *iface, UIN
    return hresult;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxDraw(ITextServices *iface, DWORD dwDrawAspect, LONG lindex,
-                                void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcDraw, HDC hdcTargetDev,
-                                LPCRECTL lprcBounds, LPCRECTL lprcWBounds, LPRECT lprcUpdate,
-                                BOOL (CALLBACK * pfnContinue)(DWORD), DWORD dwContinue,
-                                LONG lViewId)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxDraw(ITextServices *iface, DWORD dwDrawAspect, LONG lindex,
+                                                    void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcDraw, HDC hdcTargetDev,
+                                                    LPCRECTL lprcBounds, LPCRECTL lprcWBounds, LPRECT lprcUpdate,
+                                                    BOOL (CALLBACK * pfnContinue)(DWORD), DWORD dwContinue,
+                                                    LONG lViewId)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -156,8 +156,8 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxDraw(ITextServices *iface, DWORD dwDr
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetHScroll(ITextServices *iface, LONG *plMin, LONG *plMax, LONG *plPos,
-                                      LONG *plPage, BOOL *pfEnabled)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxGetHScroll(ITextServices *iface, LONG *plMin, LONG *plMax, LONG *plPos,
+                                                          LONG *plPage, BOOL *pfEnabled)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -174,8 +174,8 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetHScroll(ITextServices *iface, LONG
    return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetVScroll(ITextServices *iface, LONG *plMin, LONG *plMax, LONG *plPos,
-                                      LONG *plPage, BOOL *pfEnabled)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxGetVScroll(ITextServices *iface, LONG *plMin, LONG *plMax, LONG *plPos,
+                                                          LONG *plPage, BOOL *pfEnabled)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -192,9 +192,9 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetVScroll(ITextServices *iface, LONG
    return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxSetCursor(ITextServices *iface, DWORD dwDrawAspect, LONG lindex,
-                                       void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcDraw,
-                                       HDC hicTargetDev, LPCRECT lprcClient, INT x, INT y)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_OnTxSetCursor(ITextServices *iface, DWORD dwDrawAspect, LONG lindex,
+                                                           void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcDraw,
+                                                           HDC hicTargetDev, LPCRECT lprcClient, INT x, INT y)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -202,10 +202,10 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxSetCursor(ITextServices *iface, DWO
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxQueryHitPoint(ITextServices *iface, DWORD dwDrawAspect, LONG lindex,
-                                         void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcDraw,
-                                         HDC hicTargetDev, LPCRECT lprcClient, INT x, INT y,
-                                         DWORD *pHitResult)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxQueryHitPoint(ITextServices *iface, DWORD dwDrawAspect, LONG lindex,
+                                                             void *pvAspect, DVTARGETDEVICE *ptd, HDC hdcDraw,
+                                                             HDC hicTargetDev, LPCRECT lprcClient, INT x, INT y,
+                                                             DWORD *pHitResult)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -213,7 +213,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxQueryHitPoint(ITextServices *iface, D
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxInplaceActivate(ITextServices *iface, LPCRECT prcClient)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_OnTxInplaceActivate(ITextServices *iface, LPCRECT prcClient)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -221,7 +221,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxInplaceActivate(ITextServices *ifac
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxInplaceDeactivate(ITextServices *iface)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_OnTxInplaceDeactivate(ITextServices *iface)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -229,7 +229,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxInplaceDeactivate(ITextServices *if
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxUIActivate(ITextServices *iface)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_OnTxUIActivate(ITextServices *iface)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -237,7 +237,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxUIActivate(ITextServices *iface)
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxUIDeactivate(ITextServices *iface)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_OnTxUIDeactivate(ITextServices *iface)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -245,7 +245,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxUIDeactivate(ITextServices *iface)
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetText(ITextServices *iface, BSTR *pbstrText)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxGetText(ITextServices *iface, BSTR *pbstrText)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
    int length;
@@ -269,7 +269,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetText(ITextServices *iface, BSTR *p
    return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxSetText(ITextServices *iface, LPCWSTR pszText)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxSetText(ITextServices *iface, LPCWSTR pszText)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
    ME_Cursor cursor;
@@ -287,7 +287,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxSetText(ITextServices *iface, LPCWSTR
    return S_OK;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetCurTargetX(ITextServices *iface, LONG *x)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxGetCurTargetX(ITextServices *iface, LONG *x)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -295,7 +295,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetCurTargetX(ITextServices *iface, L
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetBaseLinePos(ITextServices *iface, LONG *x)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxGetBaseLinePos(ITextServices *iface, LONG *x)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -303,9 +303,9 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetBaseLinePos(ITextServices *iface,
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetNaturalSize(ITextServices *iface, DWORD dwAspect, HDC hdcDraw,
-                                          HDC hicTargetDev, DVTARGETDEVICE *ptd, DWORD dwMode,
-                                          const SIZEL *psizelExtent, LONG *pwidth, LONG *pheight)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxGetNaturalSize(ITextServices *iface, DWORD dwAspect, HDC hdcDraw,
+                                                              HDC hicTargetDev, DVTARGETDEVICE *ptd, DWORD dwMode,
+                                                              const SIZEL *psizelExtent, LONG *pwidth, LONG *pheight)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -313,7 +313,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetNaturalSize(ITextServices *iface,
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetDropTarget(ITextServices *iface, IDropTarget **ppDropTarget)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxGetDropTarget(ITextServices *iface, IDropTarget **ppDropTarget)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -321,7 +321,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetDropTarget(ITextServices *iface, I
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxPropertyBitsChange(ITextServices *iface, DWORD dwMask, DWORD dwBits)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_OnTxPropertyBitsChange(ITextServices *iface, DWORD dwMask, DWORD dwBits)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
@@ -329,7 +329,7 @@ DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_OnTxPropertyBitsChange(ITextServices *i
    return E_NOTIMPL;
 }
 
-DECLSPEC_HIDDEN HRESULT WINAPI fnTextSrv_TxGetCachedSize(ITextServices *iface, DWORD *pdwWidth, DWORD *pdwHeight)
+DECLSPEC_HIDDEN HRESULT __thiscall fnTextSrv_TxGetCachedSize(ITextServices *iface, DWORD *pdwWidth, DWORD *pdwHeight)
 {
    ITextServicesImpl *This = impl_from_ITextServices(iface);
 
index 1c17227..dd290e3 100644 (file)
@@ -129,11 +129,6 @@ static ULONG WINAPI ITextHostImpl_Release(ITextHost *iface)
     }
 }
 
-#ifdef __REACTOS__
-#undef __thiscall
-#define __thiscall WINAPI
-#endif /* __REACTOS__ */
-
 static HDC __thiscall ITextHostImpl_TxGetDC(ITextHost *iface)
 {
     ITextHostTestImpl *This = impl_from_ITextHost(iface);
@@ -424,10 +419,6 @@ static HRESULT __thiscall ITextHostImpl_TxGetSelectionBarWidth(ITextHost *iface,
     return E_NOTIMPL;
 }
 
-#ifdef __REACTOS__
-#undef __thiscall
-#endif /* __REACTOS__ */
-
 static ITextHostVtbl itextHostVtbl = {
     ITextHostImpl_QueryInterface,
     ITextHostImpl_AddRef,
index 7a0cfbf..455e88c 100644 (file)
 extern "C" {
 #endif
 
+#ifdef __REACTOS__
+#include <wine/asm.h>
+#endif
+
+#ifdef __cplusplus
+#define THISCALLMETHOD_(type,method)  virtual type __thiscall method
+#else
+#define THISCALLMETHOD_(type,method)  type (__thiscall *method)
+#endif
+
 DEFINE_GUID(IID_ITextServices,0x8d33f740,0xcf58,0x11ce,0xa8,0x9d,0x00,0xaa,0x00,0x6c,0xad,0xc5);
 DEFINE_GUID(IID_ITextHost,    0xc5bdd8d0,0xd26e,0x11ce,0xa8,0x9e,0x00,0xaa,0x00,0x6c,0xad,0xc5);
 DEFINE_GUID(IID_ITextHost2,   0xc5bdd8d0,0xd26e,0x11ce,0xa8,0x9e,0x00,0xaa,0x00,0x6c,0xad,0xc5);
@@ -44,10 +54,10 @@ DECLARE_INTERFACE_(ITextServices,IUnknown)
 
     /*** ITextServices methods ***/
 
-    STDMETHOD(TxSendMessage)( THIS_
+    THISCALLMETHOD_(HRESULT,TxSendMessage)( THIS_
         UINT msg, WPARAM wparam, LPARAM lparam, LRESULT* plresult) PURE;
 
-    STDMETHOD(TxDraw)( THIS_
+    THISCALLMETHOD_(HRESULT,TxDraw)( THIS_
         DWORD dwDrawAspect,
         LONG lindex,
         void* pvAspect,
@@ -61,21 +71,21 @@ DECLARE_INTERFACE_(ITextServices,IUnknown)
         DWORD dwContinue,
         LONG lViewId) PURE;
 
-    STDMETHOD(TxGetHScroll)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetHScroll)( THIS_
         LONG* plMin,
         LONG* plMax,
         LONG* plPos,
         LONG* plPage,
         BOOL* pfEnabled) PURE;
 
-    STDMETHOD(TxGetVScroll)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetVScroll)( THIS_
         LONG* plMin,
         LONG* plMax,
         LONG* plPos,
         LONG* plPage,
         BOOL* pfEnabled) PURE;
 
-    STDMETHOD(OnTxSetCursor)( THIS_
+    THISCALLMETHOD_(HRESULT,OnTxSetCursor)( THIS_
         DWORD dwDrawAspect,
         LONG lindex,
         void* pvAspect,
@@ -86,7 +96,7 @@ DECLARE_INTERFACE_(ITextServices,IUnknown)
         INT x,
         INT y) PURE;
 
-    STDMETHOD(TxQueryHitPoint)( THIS_
+    THISCALLMETHOD_(HRESULT,TxQueryHitPoint)( THIS_
         DWORD dwDrawAspect,
         LONG lindex,
         void* pvAspect,
@@ -98,28 +108,28 @@ DECLARE_INTERFACE_(ITextServices,IUnknown)
         INT y,
         DWORD* pHitResult) PURE;
 
-    STDMETHOD(OnTxInplaceActivate)( THIS_
+    THISCALLMETHOD_(HRESULT,OnTxInplaceActivate)( THIS_
         LPCRECT prcClient) PURE;
 
-    STDMETHOD(OnTxInplaceDeactivate)( THIS ) PURE;
+    THISCALLMETHOD_(HRESULT,OnTxInplaceDeactivate)( THIS ) PURE;
 
-    STDMETHOD(OnTxUIActivate)( THIS ) PURE;
+    THISCALLMETHOD_(HRESULT,OnTxUIActivate)( THIS ) PURE;
 
-    STDMETHOD(OnTxUIDeactivate)( THIS ) PURE;
+    THISCALLMETHOD_(HRESULT,OnTxUIDeactivate)( THIS ) PURE;
 
-    STDMETHOD(TxGetText)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetText)( THIS_
         BSTR* pbstrText) PURE;
 
-    STDMETHOD(TxSetText)( THIS_
+    THISCALLMETHOD_(HRESULT,TxSetText)( THIS_
         LPCWSTR pszText) PURE;
 
-    STDMETHOD(TxGetCurrentTargetX)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetCurTargetX)( THIS_
         LONG* x) PURE;
 
-    STDMETHOD(TxGetBaseLinePos)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetBaseLinePos)( THIS_
         LONG* x) PURE;
 
-    STDMETHOD(TxGetNaturalSize)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetNaturalSize)( THIS_
         DWORD dwAspect,
         HDC hdcDraw,
         HDC hicTargetDev,
@@ -129,14 +139,14 @@ DECLARE_INTERFACE_(ITextServices,IUnknown)
         LONG* pwidth,
         LONG* pheight) PURE;
 
-    STDMETHOD(TxGetDropTarget)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetDropTarget)( THIS_
         IDropTarget** ppDropTarget) PURE;
 
-    STDMETHOD(OnTxPropertyBitsChange)( THIS_
+    THISCALLMETHOD_(HRESULT,OnTxPropertyBitsChange)( THIS_
         DWORD dwMask,
         DWORD dwBits) PURE;
 
-    STDMETHOD(TxGetCachedSize)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetCachedSize)( THIS_
         DWORD* pdwWidth,
         DWORD* pdwHeight) PURE;
 
@@ -212,58 +222,58 @@ DECLARE_INTERFACE_(ITextHost,IUnknown)
     STDMETHOD_(ULONG,Release)(THIS) PURE;
 
     /*** ITextHost methods ***/
-    STDMETHOD_(HDC,TxGetDC)( THIS
+    THISCALLMETHOD_(HDC,TxGetDC)( THIS
         ) PURE;
 
-    STDMETHOD_(INT,TxReleaseDC)( THIS_
+    THISCALLMETHOD_(INT,TxReleaseDC)( THIS_
         HDC hdc) PURE;
 
-    STDMETHOD_(BOOL,TxShowScrollBar)( THIS_
+    THISCALLMETHOD_(BOOL,TxShowScrollBar)( THIS_
         INT fnBar,
         BOOL fShow) PURE;
 
-    STDMETHOD_(BOOL,TxEnableScrollBar)( THIS_
+    THISCALLMETHOD_(BOOL,TxEnableScrollBar)( THIS_
         INT fuSBFlags,
         INT fuArrowflags) PURE;
 
-    STDMETHOD_(BOOL,TxSetScrollRange)( THIS_
+    THISCALLMETHOD_(BOOL,TxSetScrollRange)( THIS_
         INT fnBar,
         LONG nMinPos,
         INT nMaxPos,
         BOOL fRedraw) PURE;
 
-    STDMETHOD_(BOOL,TxSetScrollPos)( THIS_
+    THISCALLMETHOD_(BOOL,TxSetScrollPos)( THIS_
         INT fnBar,
         INT nPos,
         BOOL fRedraw) PURE;
 
-    STDMETHOD_(void,TxInvalidateRect)( THIS_
+    THISCALLMETHOD_(void,TxInvalidateRect)( THIS_
         LPCRECT prc,
         BOOL fMode) PURE;
 
-    STDMETHOD_(void,TxViewChange)( THIS_
+    THISCALLMETHOD_(void,TxViewChange)( THIS_
         BOOL fUpdate) PURE;
 
-    STDMETHOD_(BOOL,TxCreateCaret)( THIS_
+    THISCALLMETHOD_(BOOL,TxCreateCaret)( THIS_
         HBITMAP hbmp,
         INT xWidth,
         INT yHeight) PURE;
 
-    STDMETHOD_(BOOL,TxShowCaret)( THIS_
+    THISCALLMETHOD_(BOOL,TxShowCaret)( THIS_
         BOOL fShow) PURE;
 
-    STDMETHOD_(BOOL,TxSetCaretPos)( THIS_
+    THISCALLMETHOD_(BOOL,TxSetCaretPos)( THIS_
         INT x,
         INT y) PURE;
 
-    STDMETHOD_(BOOL,TxSetTimer)( THIS_
+    THISCALLMETHOD_(BOOL,TxSetTimer)( THIS_
         UINT idTimer,
         UINT uTimeout) PURE;
 
-    STDMETHOD_(void,TxKillTimer)( THIS_
+    THISCALLMETHOD_(void,TxKillTimer)( THIS_
         UINT idTimer) PURE;
 
-    STDMETHOD_(void,TxScrollWindowEx)( THIS_
+    THISCALLMETHOD_(void,TxScrollWindowEx)( THIS_
         INT dx,
         INT dy,
         LPCRECT lprcScroll,
@@ -272,82 +282,82 @@ DECLARE_INTERFACE_(ITextHost,IUnknown)
         LPRECT lprcUpdate,
         UINT fuScroll) PURE;
 
-    STDMETHOD_(void,TxSetCapture)( THIS_
+    THISCALLMETHOD_(void,TxSetCapture)( THIS_
         BOOL fCapture) PURE;
 
-    STDMETHOD_(void,TxSetFocus)( THIS
+    THISCALLMETHOD_(void,TxSetFocus)( THIS
         ) PURE;
 
-    STDMETHOD_(void,TxSetCursor)( THIS_
+    THISCALLMETHOD_(void,TxSetCursor)( THIS_
         HCURSOR hcur,
         BOOL fText) PURE;
 
-    STDMETHOD_(BOOL,TxScreenToClient)( THIS_
+    THISCALLMETHOD_(BOOL,TxScreenToClient)( THIS_
         LPPOINT lppt) PURE;
 
-    STDMETHOD_(BOOL,TxClientToScreen)( THIS_
+    THISCALLMETHOD_(BOOL,TxClientToScreen)( THIS_
         LPPOINT lppt) PURE;
 
-    STDMETHOD(TxActivate)( THIS_
+    THISCALLMETHOD_(HRESULT,TxActivate)( THIS_
         LONG* plOldState) PURE;
 
-    STDMETHOD(TxDeactivate)( THIS_
+    THISCALLMETHOD_(HRESULT,TxDeactivate)( THIS_
         LONG lNewState) PURE;
 
-    STDMETHOD(TxGetClientRect)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetClientRect)( THIS_
         LPRECT prc) PURE;
 
-    STDMETHOD(TxGetViewInset)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetViewInset)( THIS_
         LPRECT prc) PURE;
 
-    STDMETHOD(TxGetCharFormat)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetCharFormat)( THIS_
         const CHARFORMATW** ppCF) PURE;
 
-    STDMETHOD(TxGetParaFormat)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetParaFormat)( THIS_
         const PARAFORMAT** ppPF) PURE;
 
-    STDMETHOD_(COLORREF,TxGetSysColor)( THIS_
+    THISCALLMETHOD_(COLORREF,TxGetSysColor)( THIS_
         int nIndex) PURE;
 
-    STDMETHOD(TxGetBackStyle)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetBackStyle)( THIS_
         TXTBACKSTYLE* pStyle) PURE;
 
-    STDMETHOD(TxGetMaxLength)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetMaxLength)( THIS_
         DWORD* plength) PURE;
 
-    STDMETHOD(TxGetScrollBars)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetScrollBars)( THIS_
         DWORD* pdwScrollBar) PURE;
 
-    STDMETHOD(TxGetPasswordChar)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetPasswordChar)( THIS_
         WCHAR* pch) PURE;
 
-    STDMETHOD(TxGetAcceleratorPos)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetAcceleratorPos)( THIS_
         LONG* pch) PURE;
 
-    STDMETHOD(TxGetExtent)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetExtent)( THIS_
         LPSIZEL lpExtent) PURE;
 
-    STDMETHOD(OnTxCharFormatChange)( THIS_
+    THISCALLMETHOD_(HRESULT,OnTxCharFormatChange)( THIS_
         const CHARFORMATW* pcf) PURE;
 
-    STDMETHOD(OnTxParaFormatChange)( THIS_
+    THISCALLMETHOD_(HRESULT,OnTxParaFormatChange)( THIS_
         const PARAFORMAT* ppf) PURE;
 
-    STDMETHOD(TxGetPropertyBits)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetPropertyBits)( THIS_
         DWORD dwMask,
         DWORD* pdwBits) PURE;
 
-    STDMETHOD(TxNotify)( THIS_
+    THISCALLMETHOD_(HRESULT,TxNotify)( THIS_
         DWORD iNotify,
         void* pv) PURE;
 
-    STDMETHOD_(HIMC,TxImmGetContext)( THIS
+    THISCALLMETHOD_(HIMC,TxImmGetContext)( THIS
         ) PURE;
 
-    STDMETHOD_(void,TxImmReleaseContext)( THIS_
+    THISCALLMETHOD_(void,TxImmReleaseContext)( THIS_
         HIMC himc) PURE;
 
-    STDMETHOD(TxGetSelectionBarWidth)( THIS_
+    THISCALLMETHOD_(HRESULT,TxGetSelectionBarWidth)( THIS_
         LONG* lSelBarWidth) PURE;
 
 };