summaryrefslogtreecommitdiffstats
path: root/src/printsupport
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2022-03-25 18:03:19 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2022-03-29 13:56:14 +0100
commit0cdb44f01f0e7cc5405b1358149e7719db77bf03 (patch)
tree3913cfdf3c032ca408ada05599b4f7e955cf7f20 /src/printsupport
parentd85c6527b514e36ab06bdf4228113d458e16cae0 (diff)
Windows: Fix potential crash when retrieving default printer
GetDefaultPrinter() has been observed to return size == 0. Pick-to: 6.3 6.2 5.15 Fixes: QTBUG-53290 Change-Id: Id4c7a06d14d368c792e15e55cacf2366b6aedc7b Reviewed-by: Andy Shaw <andy.shaw@qt.io>
Diffstat (limited to 'src/printsupport')
-rw-r--r--src/printsupport/platform/windows/qwindowsprintdevice.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/printsupport/platform/windows/qwindowsprintdevice.cpp b/src/printsupport/platform/windows/qwindowsprintdevice.cpp
index a6aa9c6504..faf491d9a9 100644
--- a/src/printsupport/platform/windows/qwindowsprintdevice.cpp
+++ b/src/printsupport/platform/windows/qwindowsprintdevice.cpp
@@ -499,7 +499,7 @@ QStringList QWindowsPrintDevice::availablePrintDeviceIds()
QString QWindowsPrintDevice::defaultPrintDeviceId()
{
DWORD size = 0;
- if (GetDefaultPrinter(nullptr, &size) == ERROR_FILE_NOT_FOUND)
+ if (GetDefaultPrinter(nullptr, &size) == ERROR_FILE_NOT_FOUND || size < 2)
return QString();
QScopedArrayPointer<wchar_t> name(new wchar_t[size]);