From 275d64c1902eb6f4eb610f6cc6faecd2f491c4c2 Mon Sep 17 00:00:00 2001 From: "mkaply%us.ibm.com" Date: Thu, 16 Feb 2006 21:32:15 +0000 Subject: [PATCH] #164667 r=rods, sr=blizzard, a=rjesup@wgate.com OS/2 only - convert native printer names to Unicode git-svn-id: svn://10.0.0.236/trunk@190283 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/widget/src/os2/nsDeviceContextSpecOS2.cpp | 14 +++++++++++--- mozilla/widget/src/os2/nsDeviceContextSpecOS2.h | 1 + 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/mozilla/widget/src/os2/nsDeviceContextSpecOS2.cpp b/mozilla/widget/src/os2/nsDeviceContextSpecOS2.cpp index 06a1fe999c8..b98d1c81b2a 100644 --- a/mozilla/widget/src/os2/nsDeviceContextSpecOS2.cpp +++ b/mozilla/widget/src/os2/nsDeviceContextSpecOS2.cpp @@ -507,10 +507,14 @@ nsresult GlobalPrinters::InitializeGlobalPrinters () for (int i = 0; i < mGlobalNumPrinters; i++) { nsXPIDLCString printer; nsDeviceContextSpecOS2::PrnDlg.GetPrinter(i, getter_Copies(printer)); + PRUnichar* printerName = new PRUnichar[strlen(printer)+1]; + MultiByteToWideChar(0, printer, strlen(printer)+1, printerName, strlen(printer)+1); + nsAutoString nativePrinterName(printerName); + delete [] printerName; if ( defaultPrinter == i ) - mGlobalPrinterList->InsertStringAt(NS_ConvertASCIItoUCS2(printer), 0); + mGlobalPrinterList->InsertStringAt(nativePrinterName, 0); else - mGlobalPrinterList->AppendString(NS_ConvertASCIItoUCS2(printer)); + mGlobalPrinterList->AppendString(nativePrinterName); } return NS_OK; } @@ -525,8 +529,12 @@ void GlobalPrinters::GetDefaultPrinterName(PRUnichar*& aDefaultPrinterName) int defaultPrinter = nsDeviceContextSpecOS2::PrnDlg.GetDefaultPrinter(); nsXPIDLCString printer; nsDeviceContextSpecOS2::PrnDlg.GetPrinter(defaultPrinter, getter_Copies(printer)); + PRUnichar* printerName = new PRUnichar[strlen(printer)+1]; + MultiByteToWideChar(0, printer, strlen(printer)+1, printerName, strlen(printer)+1); + nsAutoString nativePrinterName(printerName); + delete [] printerName; - aDefaultPrinterName = ToNewUnicode(NS_ConvertASCIItoUCS2(printer)); + aDefaultPrinterName = ToNewUnicode(nativePrinterName); } void GlobalPrinters::FreeGlobalPrinters() diff --git a/mozilla/widget/src/os2/nsDeviceContextSpecOS2.h b/mozilla/widget/src/os2/nsDeviceContextSpecOS2.h index 8ad2de1de4b..8d25c476940 100644 --- a/mozilla/widget/src/os2/nsDeviceContextSpecOS2.h +++ b/mozilla/widget/src/os2/nsDeviceContextSpecOS2.h @@ -56,6 +56,7 @@ #ifdef USE_XPRINT #include "nsIDeviceContextSpecXPrint.h" #endif /* USE_XPRINT */ +#include "nsGFXDefs.h" #include "nsPrintdOS2.h" #include #include