From 109cdeda3008fe57aabf2385f95cf8e55b8c7da2 Mon Sep 17 00:00:00 2001
From: David Faure <david.faure@kdab.com>
Date: Fri, 31 Jul 2015 14:15:56 +0200
Subject: [PATCH] qprintdialog_unix.cpp: fix out-of-bounds when cwd is empty.

This happens when the cwd got deleted meanwhile; this warning is printed out:
QFileSystemEngine::currentPath: getcwd() failed
and currentPath() is empty. Not a problem in itself, but qprintdialog
should not assume it's not empty, then.

Change-Id: I5c89992b36ca58b6325ced399cff33aca9efb7ec
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
---
 src/printsupport/dialogs/qprintdialog_unix.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/printsupport/dialogs/qprintdialog_unix.cpp b/src/printsupport/dialogs/qprintdialog_unix.cpp
index f3be45262bf..502ff7d98a2 100644
--- a/src/printsupport/dialogs/qprintdialog_unix.cpp
+++ b/src/printsupport/dialogs/qprintdialog_unix.cpp
@@ -803,7 +803,7 @@ void QUnixPrintWidgetPrivate::applyPrinterProperties()
         QString cur = QDir::currentPath();
         if (home.at(home.length()-1) != QLatin1Char('/'))
             home += QLatin1Char('/');
-        if (cur.at(cur.length()-1) != QLatin1Char('/'))
+        if (!cur.isEmpty() && cur.at(cur.length()-1) != QLatin1Char('/'))
             cur += QLatin1Char('/');
         if (cur.left(home.length()) != home)
             cur = home;
-- 
GitLab