Huw Davies : comdlg32: Use unicode APIs in pagesetup_update_papersize.

Alexandre Julliard julliard at winehq.org
Wed Jan 21 06:39:52 CST 2009


Module: wine
Branch: master
Commit: c2cd6f6efe0d14b8509d5b1cabc4db1f67eec318
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=c2cd6f6efe0d14b8509d5b1cabc4db1f67eec318

Author: Huw Davies <huw at codeweavers.com>
Date:   Tue Jan 20 12:06:46 2009 +0000

comdlg32: Use unicode APIs in pagesetup_update_papersize.

---

 dlls/comdlg32/printdlg.c |   28 ++++++++++++++--------------
 1 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/dlls/comdlg32/printdlg.c b/dlls/comdlg32/printdlg.c
index 35aa1ca..a07a723 100644
--- a/dlls/comdlg32/printdlg.c
+++ b/dlls/comdlg32/printdlg.c
@@ -2653,38 +2653,36 @@ static void pagesetup_release_devmode(const PageSetupDataA *pda, DEVMODEW *dm)
 
 static BOOL pagesetup_update_papersize(PageSetupDataA *pda)
 {
-    DEVNAMES *dn;
-    DEVMODEA *dm;
-    LPSTR devname, portname;
+    DEVMODEW *dm;
+    LPWSTR devname, portname;
     int i, num;
     WORD *words = NULL, paperword;
     POINT *points = NULL;
     BOOL retval = FALSE;
 
-    dn = GlobalLock(pda->dlga->hDevNames);
-    dm = GlobalLock(pda->dlga->hDevMode);
-    devname = ((char*)dn)+dn->wDeviceOffset;
-    portname = ((char*)dn)+dn->wOutputOffset;
+    dm       = pagesetup_get_devmode(pda);
+    devname  = pagesetup_get_devname(pda);
+    portname = pagesetup_get_portname(pda);
 
-    num = DeviceCapabilitiesA(devname, portname, DC_PAPERS, NULL, dm);
+    num = DeviceCapabilitiesW(devname, portname, DC_PAPERS, NULL, dm);
     if (num <= 0)
     {
-        FIXME("No papernames found for %s/%s\n", devname, portname);
+        FIXME("No papernames found for %s/%s\n", debugstr_w(devname), debugstr_w(portname));
         goto end;
     }
 
     words = HeapAlloc(GetProcessHeap(), 0, num * sizeof(WORD));
     points = HeapAlloc(GetProcessHeap(), 0, num * sizeof(POINT));
 
-    if (num != DeviceCapabilitiesA(devname, portname, DC_PAPERS, (LPSTR)words, dm))
+    if (num != DeviceCapabilitiesW(devname, portname, DC_PAPERS, (LPWSTR)words, dm))
     {
         FIXME("Number of returned words is not %d\n", num);
         goto end;
     }
 
-    if (num != DeviceCapabilitiesA(devname, portname, DC_PAPERSIZE, (LPSTR)points, dm))
+    if (num != DeviceCapabilitiesW(devname, portname, DC_PAPERSIZE, (LPWSTR)points, dm))
     {
-        FIXME("Number of returned sizes is not %d\n",num);
+        FIXME("Number of returned sizes is not %d\n", num);
         goto end;
     }
 
@@ -2715,8 +2713,10 @@ static BOOL pagesetup_update_papersize(PageSetupDataA *pda)
 end:
     HeapFree(GetProcessHeap(), 0, words);
     HeapFree(GetProcessHeap(), 0, points);
-    GlobalUnlock(pda->dlga->hDevNames);
-    GlobalUnlock(pda->dlga->hDevMode);
+    pagesetup_release_portname(pda, portname);
+    pagesetup_release_devname(pda, devname);
+    pagesetup_release_devmode(pda, dm);
+
     return retval;
 }
 




More information about the wine-cvs mailing list