Chromium Code Reviews| Index: printing/backend/print_backend_win.cc |
| =================================================================== |
| --- printing/backend/print_backend_win.cc (revision 87114) |
| +++ printing/backend/print_backend_win.cc (working copy) |
| @@ -42,6 +42,8 @@ |
| virtual bool EnumeratePrinters(PrinterList* printer_list); |
| + virtual std::string GetDefaultPrinterName(); |
| + |
| virtual bool GetPrinterCapsAndDefaults(const std::string& printer_name, |
| PrinterCapsAndDefaults* printer_info); |
| @@ -64,19 +66,13 @@ |
| if (!ret) |
| return false; |
| - // Getting the name of the default printer. |
| - DWORD size = MAX_PATH; |
| - TCHAR default_printer_name[MAX_PATH]; |
| - BOOL default_printer_exists = ::GetDefaultPrinter( |
| - default_printer_name, &size); |
| - |
| + std::string default_printer = GetDefaultPrinterName(); |
| PRINTER_INFO_2* printer_info = |
| reinterpret_cast<PRINTER_INFO_2*>(printer_info_buffer.get()); |
| for (DWORD index = 0; index < count_returned; index++) { |
| PrinterBasicInfo info; |
| info.printer_name = WideToUTF8(printer_info[index].pPrinterName); |
| - if (default_printer_exists) |
| - info.is_default = (info.printer_name == WideToUTF8(default_printer_name)); |
| + info.is_default = (info.printer_name == default_printer); |
| if (printer_info[index].pComment) |
| info.printer_description = WideToUTF8(printer_info[index].pComment); |
| info.printer_status = printer_info[index].Status; |
| @@ -91,6 +87,17 @@ |
| return true; |
| } |
| +std::string PrintBackendWin::GetDefaultPrinterName() { |
| + // Getting the name of the default printer. |
|
vandebo (ex-Chrome)
2011/05/28 18:22:01
nit: comment is unnecessary in this context.
Lei Zhang
2011/05/28 20:50:19
Done.
|
| + DWORD size = MAX_PATH; |
| + TCHAR default_printer_name[MAX_PATH]; |
| + BOOL default_printer_exists = ::GetDefaultPrinter( |
|
vandebo (ex-Chrome)
2011/05/28 18:22:01
nit: you can ditch the bool variable and just put
Lei Zhang
2011/05/28 20:50:19
Done.
|
| + default_printer_name, &size); |
| + if (!default_printer_exists) |
| + return std::string(); |
| + return WideToUTF8(default_printer_name); |
| +} |
| + |
| bool PrintBackendWin::GetPrinterCapsAndDefaults( |
| const std::string& printer_name, |
| PrinterCapsAndDefaults* printer_info) { |