From 4b2cce9e0fa195fb708f62bc22de50db5fe35238 Mon Sep 17 00:00:00 2001 From: Juergen Spitzmueller Date: Thu, 21 Mar 2019 14:39:33 +0100 Subject: [PATCH] Consider files only in lang subtrees --- src/frontends/qt4/GuiLyXFiles.cpp | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/frontends/qt4/GuiLyXFiles.cpp b/src/frontends/qt4/GuiLyXFiles.cpp index 2ce147e397..7e99515e72 100644 --- a/src/frontends/qt4/GuiLyXFiles.cpp +++ b/src/frontends/qt4/GuiLyXFiles.cpp @@ -79,9 +79,6 @@ void GuiLyXFiles::getFiles(QMap & in, QString const type) if (s != -1) { // // cat = relpath.left(s); - int sc = relpath.indexOf('/', s + 1); - QString const subcat = (sc == -1) ? - QString() : relpath.mid(s + 1, sc - s - 1); if (all_languages_.contains(cat) && !all_languages_.contains(dir.right(dir.lastIndexOf('/')))) { QMap::const_iterator li = all_languages_.find(cat); @@ -89,17 +86,25 @@ void GuiLyXFiles::getFiles(QMap & in, QString const type) if (!available_languages_.contains(li.key())) available_languages_.insert(li.key(), li.value()); localization = cat; + int sc = relpath.indexOf('/', s + 1); + cat = (sc == -1) ? QString() : relpath.mid(s + 1, sc - s - 1); + s = sc; + } + if (s != -1) { + int sc = relpath.indexOf('/', s + 1); + QString const subcat = (sc == -1) ? + QString() : relpath.mid(s + 1, sc - s - 1); + if (!subcat.isEmpty()) + cat += '/' + subcat; } - if (!subcat.isEmpty()) - cat += '/' + subcat; } if (!relpaths.contains(relpath)) { relpaths.append(relpath); - if (localization == "en") - in.insert(relpath, cat); - else + if (localization != "en") // strip off lang/ relpath = relpath.mid(relpath.indexOf('/') + 1); + in.insert(relpath, cat); + QMap lm; if (localizations_.contains(relpath)) lm = localizations_.find(relpath).value(); -- 2.39.5