From 2de6bb53018ba78ecf929b7d516a7e5de7ed3a15 Mon Sep 17 00:00:00 2001 From: wwmayer Date: Tue, 26 Aug 2025 09:35:01 +0200 Subject: [PATCH 1/2] Gui: Fix crash in FileDialog::getSaveFileName --- src/Gui/FileDialog.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/Gui/FileDialog.cpp b/src/Gui/FileDialog.cpp index faa41ba82e..5ada39db60 100644 --- a/src/Gui/FileDialog.cpp +++ b/src/Gui/FileDialog.cpp @@ -202,11 +202,14 @@ QString FileDialog::getSaveFileName (QWidget * parent, const QString & caption, QStringList filterSuffixes; getSuffixesDescription(filterSuffixes, filterToSearch); - QString fiSuffix = QLatin1String("*.") + fi.suffix(); // To match with filterSuffixes - if (fi.suffix().isEmpty() || !filterSuffixes.contains(fiSuffix)) { + const QString fiSuffix = fi.suffix(); + const QString dotSuffix = QLatin1String("*.") + fiSuffix; // To match with filterSuffixes + if (fiSuffix.isEmpty() || !filterSuffixes.contains(dotSuffix)) { // there is no suffix or not a suffix that matches the filter, so // default to the first suffix of the filter - dirName += filterSuffixes[0].mid(1); + if (!filterSuffixes.isEmpty()) { + dirName += filterSuffixes[0].mid(1); + } } } From e055ce777d3ecce0baa1c7447261b8aeb2362e53 Mon Sep 17 00:00:00 2001 From: wwmayer Date: Tue, 26 Aug 2025 09:42:16 +0200 Subject: [PATCH 2/2] Fem: Fix file suffixes *i1.txt or *o2.txt are not valid suffixes for a file dialog. In the past (until 2018) the suffixes were set to *.txt but this has been changed with 65b1484b7. To avoid creating invalid filenames the original suffixes are restored. --- src/Mod/Fem/Init.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/Mod/Fem/Init.py b/src/Mod/Fem/Init.py index 7aca64a3b7..7da674c38d 100644 --- a/src/Mod/Fem/Init.py +++ b/src/Mod/Fem/Init.py @@ -84,12 +84,10 @@ FreeCAD.addExportType( "feminout.importYamlJsonMesh", ) -FreeCAD.addImportType("FEM mesh Z88 (*i1.txt *I1.TXT)", "feminout.importZ88Mesh") -FreeCAD.addExportType("FEM mesh Z88 (*i1.txt)", "feminout.importZ88Mesh") +FreeCAD.addImportType("FEM mesh Z88 (*.txt *.TXT)", "feminout.importZ88Mesh") +FreeCAD.addExportType("FEM mesh Z88 (*.txt)", "feminout.importZ88Mesh") -FreeCAD.addImportType( - "FEM result Z88 displacements (*o2.txt *O2.TXT)", "feminout.importZ88O2Results" -) +FreeCAD.addImportType("FEM result Z88 displacements (*.txt *.TXT)", "feminout.importZ88O2Results") if "BUILD_FEM_VTK" in FreeCAD.__cmake__: FreeCAD.addImportType(