From kde-commits Fri Mar 31 21:56:22 2017 From: Thomas Fischer Date: Fri, 31 Mar 2017 21:56:22 +0000 To: kde-commits Subject: [kbibtex] src/io: Create subdirectory to cache text extracted from PDF files Message-Id: X-MARC-Message: https://marc.info/?l=kde-commits&m=149099748015529 Git commit 4c957b01663bd6155913d443ae4c3859297d134f by Thomas Fischer. Committed on 31/03/2017 at 21:43. Pushed by thomasfischer into branch 'master'. Create subdirectory to cache text extracted from PDF files M +6 -2 src/io/fileinfo.cpp https://commits.kde.org/kbibtex/4c957b01663bd6155913d443ae4c3859297d134f diff --git a/src/io/fileinfo.cpp b/src/io/fileinfo.cpp index 4710310d..85867467 100644 --- a/src/io/fileinfo.cpp +++ b/src/io/fileinfo.cpp @@ -284,8 +284,12 @@ QList FileInfo::entryUrls(const QSharedPointer &entry, const QString FileInfo::pdfToText(const QString &pdfFilename) { /// Build filename for text file where PDF file's plain text is cached - static const QRegExp invalidChars("[^-a-z0-9_]", Qt::CaseInsensitive); - QString textFilename =3D QString(pdfFilename).remove(invalidChars).app= end(QStringLiteral(".txt")).prepend(QStandardPaths::writableLocation(QStand= ardPaths::CacheLocation) + QLatin1Char('/') + "pdftotext/"); + static const QRegExp invalidChars(QStringLiteral("[^-a-z0-9_]"), Qt::C= aseInsensitive); + const QString cacheDirectory =3D QStandardPaths::writableLocation(QSta= ndardPaths::CacheLocation) + QStringLiteral("/pdftotext"); + if (!QDir(cacheDirectory).exists() && !QDir::home().mkdir(cacheDirecto= ry)) + /// Could not create cache directory + return QString(); + const QString textFilename =3D QString(pdfFilename).remove(invalidChar= s).append(QStringLiteral(".txt")).prepend(QStringLiteral("/")).prepend(cach= eDirectory); = /// First, check if there is a cache text file if (QFileInfo::exists(textFilename)) {