commit cc6d25d2895a595164fd40b7a6fc3ada627defe2
Author: Juergen Spitzmueller <[email protected]>
Date:   Mon Jul 20 15:05:13 2026 +0200

    Fix memory leak
---
 src/frontends/qt/GuiDocument.cpp | 24 +++++++++++++++---------
 1 file changed, 15 insertions(+), 9 deletions(-)

diff --git a/src/frontends/qt/GuiDocument.cpp b/src/frontends/qt/GuiDocument.cpp
index 0da2865514..9a291f2c5a 100644
--- a/src/frontends/qt/GuiDocument.cpp
+++ b/src/frontends/qt/GuiDocument.cpp
@@ -5281,16 +5281,18 @@ void GuiDocument::paramsToDialog()
        QList<QTreeWidgetItem *> specialLangFontItems;
        QList<QTreeWidgetItem *> specialScriptFontItems;
        for (auto const & itt : bp_.special_fonts_roman) {
-               QTreeWidgetItem * item = new QTreeWidgetItem;
                QString const scname = toqstr(itt.first);
+               QString scname_gui;
                bool const is_language = scname == scname.toLower();
                if (is_language) {
                        Language const * l = languages.getLanguage(itt.first);
                        if (l == nullptr)
                                continue;
-                       item->setText(0, qt_(l->display()));
+                       scname_gui = qt_(l->display());
                } else
-                       item->setText(0, qt_(itt.first));
+                       scname_gui = qt_(itt.first);
+               QTreeWidgetItem * item = new QTreeWidgetItem;
+               item->setText(0, scname_gui);
                item->setData(0, Qt::UserRole, scname);
                item->setText(1, qt_("Roman"));
                item->setData(1, Qt::UserRole, "rm");
@@ -5308,16 +5310,18 @@ void GuiDocument::paramsToDialog()
                        specialScriptFontItems.append(item);
        }
        for (auto const & itt : bp_.special_fonts_sans) {
-               QTreeWidgetItem * item = new QTreeWidgetItem;
                QString const scname = toqstr(itt.first);
+               QString scname_gui;
                bool const is_language = scname == scname.toLower();
                if (is_language) {
                        Language const * l = languages.getLanguage(itt.first);
                        if (l == nullptr)
                                continue;
-                       item->setText(0, qt_(l->display()));
+                       scname_gui = qt_(l->display());
                } else
-                       item->setText(0, qt_(itt.first));
+                       scname_gui = qt_(itt.first);
+               QTreeWidgetItem * item = new QTreeWidgetItem;
+               item->setText(0, scname_gui);
                item->setData(0, Qt::UserRole, scname);
                item->setText(1, qt_("Sans Serif"));
                item->setData(1, Qt::UserRole, "sf");
@@ -5337,16 +5341,18 @@ void GuiDocument::paramsToDialog()
                        specialScriptFontItems.append(item);
        }
        for (auto const & itt : bp_.special_fonts_typewriter) {
-               QTreeWidgetItem * item = new QTreeWidgetItem;
                QString const scname = toqstr(itt.first);
+               QString scname_gui;
                bool const is_language = scname == scname.toLower();
                if (is_language) {
                        Language const * l = languages.getLanguage(itt.first);
                        if (l == nullptr)
                                continue;
-                       item->setText(0, qt_(l->display()));
+                       scname_gui = qt_(l->display());
                } else
-                       item->setText(0, qt_(itt.first));
+                       scname_gui = qt_(itt.first);
+               QTreeWidgetItem * item = new QTreeWidgetItem;
+               item->setText(0, scname_gui);
                item->setData(0, Qt::UserRole, scname);
                item->setText(1, qt_("Typewriter"));
                item->setData(1, Qt::UserRole, "sf");
-- 
lyx-cvs mailing list
[email protected]
https://lists.lyx.org/mailman/listinfo/lyx-cvs

Reply via email to