user32: Pass pConv to WDML_Global2DataHandle so that it can be correcly passed to DdeCreateDataHandle.

This commit is contained in:
Jeff Latimer 2009-01-20 23:04:32 +11:00 committed by Alexandre Julliard
parent ebc2c74f7c
commit be14da009a
4 changed files with 7 additions and 7 deletions

View File

@ -527,7 +527,7 @@ static WDML_QUEUE_STATE WDML_HandleRequestReply(WDML_CONV* pConv, MSG* msg, WDML
if (DdeCmpStringHandles(hsz, pXAct->hszItem) != 0) if (DdeCmpStringHandles(hsz, pXAct->hszItem) != 0)
return WDML_QS_PASS; return WDML_QS_PASS;
pXAct->hDdeData = WDML_Global2DataHandle((HGLOBAL)uiLo, &wdh); pXAct->hDdeData = WDML_Global2DataHandle(pConv, (HGLOBAL)uiLo, &wdh);
if (wdh.fRelease) if (wdh.fRelease)
{ {
GlobalFree((HGLOBAL)uiLo); GlobalFree((HGLOBAL)uiLo);
@ -850,7 +850,7 @@ static WDML_QUEUE_STATE WDML_HandleIncomingData(WDML_CONV* pConv, MSG* msg, HDDE
UnpackDDElParam(WM_DDE_DATA, msg->lParam, &uiLo, &uiHi); UnpackDDElParam(WM_DDE_DATA, msg->lParam, &uiLo, &uiHi);
hsz = WDML_MakeHszFromAtom(pConv->instance, uiHi); hsz = WDML_MakeHszFromAtom(pConv->instance, uiHi);
hDdeDataIn = WDML_Global2DataHandle((HGLOBAL)uiLo, &wdh); hDdeDataIn = WDML_Global2DataHandle(pConv, (HGLOBAL)uiLo, &wdh);
/* billx: /* billx:
* For hot link, data should be passed to its callback with * For hot link, data should be passed to its callback with

View File

@ -1479,7 +1479,7 @@ BOOL WDML_IsAppOwned(HDDEDATA hData)
* 2 16 clipboard format * 2 16 clipboard format
* 4 ? data to be used * 4 ? data to be used
*/ */
HDDEDATA WDML_Global2DataHandle(HGLOBAL hMem, WINE_DDEHEAD* p) HDDEDATA WDML_Global2DataHandle(WDML_CONV* pConv, HGLOBAL hMem, WINE_DDEHEAD* p)
{ {
DDEDATA* pDd; DDEDATA* pDd;
HDDEDATA ret = 0; HDDEDATA ret = 0;
@ -1500,7 +1500,7 @@ HDDEDATA WDML_Global2DataHandle(HGLOBAL hMem, WINE_DDEHEAD* p)
/* fall thru */ /* fall thru */
case 0: case 0:
case CF_TEXT: case CF_TEXT:
ret = DdeCreateDataHandle(0, pDd->Value, size, 0, 0, pDd->cfFormat, 0); ret = DdeCreateDataHandle(pConv->instance->instanceID, pDd->Value, size, 0, 0, pDd->cfFormat, 0);
break; break;
case CF_BITMAP: case CF_BITMAP:
if (size >= sizeof(BITMAP)) if (size >= sizeof(BITMAP))
@ -1515,7 +1515,7 @@ HDDEDATA WDML_Global2DataHandle(HGLOBAL hMem, WINE_DDEHEAD* p)
bmp->bmPlanes, bmp->bmBitsPixel, bmp->bmPlanes, bmp->bmBitsPixel,
pDd->Value + sizeof(BITMAP)))) pDd->Value + sizeof(BITMAP))))
{ {
ret = DdeCreateDataHandle(0, (LPBYTE)&hbmp, sizeof(hbmp), ret = DdeCreateDataHandle(pConv->instance->instanceID, (LPBYTE)&hbmp, sizeof(hbmp),
0, 0, CF_BITMAP, 0); 0, 0, CF_BITMAP, 0);
} }
else ERR("Can't create bmp\n"); else ERR("Can't create bmp\n");

View File

@ -232,7 +232,7 @@ extern void WDML_FreeTransaction(WDML_INSTANCE* pInstance, WDML_XACT* pXAct, BO
extern WDML_XACT* WDML_FindTransaction(WDML_CONV* pConv, DWORD tid) DECLSPEC_HIDDEN; extern WDML_XACT* WDML_FindTransaction(WDML_CONV* pConv, DWORD tid) DECLSPEC_HIDDEN;
extern HGLOBAL WDML_DataHandle2Global(HDDEDATA hDdeData, BOOL fResponse, BOOL fRelease, extern HGLOBAL WDML_DataHandle2Global(HDDEDATA hDdeData, BOOL fResponse, BOOL fRelease,
BOOL fDeferUpd, BOOL dAckReq) DECLSPEC_HIDDEN; BOOL fDeferUpd, BOOL dAckReq) DECLSPEC_HIDDEN;
extern HDDEDATA WDML_Global2DataHandle(HGLOBAL hMem, WINE_DDEHEAD* da) DECLSPEC_HIDDEN; extern HDDEDATA WDML_Global2DataHandle(WDML_CONV* pConv, HGLOBAL hMem, WINE_DDEHEAD* da) DECLSPEC_HIDDEN;
extern BOOL WDML_IsAppOwned(HDDEDATA hDdeData) DECLSPEC_HIDDEN; extern BOOL WDML_IsAppOwned(HDDEDATA hDdeData) DECLSPEC_HIDDEN;
extern WDML_INSTANCE* WDML_GetInstance(DWORD InstId) DECLSPEC_HIDDEN; extern WDML_INSTANCE* WDML_GetInstance(DWORD InstId) DECLSPEC_HIDDEN;
extern WDML_INSTANCE* WDML_GetInstanceFromWnd(HWND hWnd) DECLSPEC_HIDDEN; extern WDML_INSTANCE* WDML_GetInstanceFromWnd(HWND hWnd) DECLSPEC_HIDDEN;

View File

@ -772,7 +772,7 @@ static WDML_QUEUE_STATE WDML_ServerHandleExecute(WDML_CONV* pConv, WDML_XACT* pX
if (ptr) if (ptr)
{ {
hDdeData = DdeCreateDataHandle(0, ptr, GlobalSize(pXAct->hMem), hDdeData = DdeCreateDataHandle(pConv->instance->instanceID, ptr, GlobalSize(pXAct->hMem),
0, 0, CF_TEXT, 0); 0, 0, CF_TEXT, 0);
GlobalUnlock(pXAct->hMem); GlobalUnlock(pXAct->hMem);
} }