user32: Resend: Move character conversion logic to dde_server.d & remove todo's
Jeff Latimer
lats at yless4u.com.au
Fri Jan 23 19:35:32 CST 2009
I have resubmitted this patch for discussion purposes.
For DDEML the conversion of data from or to UNICODE is done at the
receiving end. This patch moves the conversion code from dde_client to
dde_server. Testing of the permutations of server/client/data is or is
not UNICODE leads me to believe that either Windows guesses that the
received data is UNICODE by testing it for UNICODE attributes or there
is a back door function called. Hence this patch checks the data and
accepts the result as to whether the data is UNICODE.
I have tested this a number of ways and I can not see a mechanism that
DDE can determine whether data passed is UNICODE (pData is of type
LPBYTE). In my tests, the case of the server uses a UNICODE window it
is immaterial as to the type of window the client uses but is dependent
on the type of data passed. ---
dlls/user32/dde_client.c | 64
++++++++-------------------------------------
dlls/user32/dde_server.c | 43 ++++++++++++++++++++++++++++++-
dlls/user32/tests/dde.c | 31 +++++-----------------
3 files changed, 61 insertions(+), 77 deletions(-)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: be372f5d19fcb33f95bd13d6f59c1bc9bd24de5b.diff
Type: text/x-patch
Size: 8906 bytes
Desc: not available
Url : http://www.winehq.org/pipermail/wine-patches/attachments/20090124/6e3a91e1/attachment-0001.bin
More information about the wine-patches
mailing list