commit:     027dc0a5290636d544eae044afbe4bbb6cdeac33
Author:     Matt Jolly <Matt.Jolly <AT> footclan <DOT> ninja>
AuthorDate: Sun Apr 17 13:13:44 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Apr 18 20:29:17 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=027dc0a5

sci-astronomy/stellarium: backport fix for segfault in star manager module

Signed-off-by: Matt Jolly <Matt.Jolly <AT> footclan.ninja>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 ...ellarium-0.22.1-fix-star-manager-segfault.patch | 30 ++++++++++++++++++++++
 sci-astronomy/stellarium/stellarium-0.22.1.ebuild  |  1 +
 2 files changed, 31 insertions(+)

diff --git 
a/sci-astronomy/stellarium/files/stellarium-0.22.1-fix-star-manager-segfault.patch
 
b/sci-astronomy/stellarium/files/stellarium-0.22.1-fix-star-manager-segfault.patch
new file mode 100644
index 000000000000..7f8981a006e2
--- /dev/null
+++ 
b/sci-astronomy/stellarium/files/stellarium-0.22.1-fix-star-manager-segfault.patch
@@ -0,0 +1,30 @@
+This patch is required to fix a segfault on startup in <=0.22.1 if star 
catalogue files are
+added or removed (USE=stars)
+
+Refer: https://github.com/Stellarium/stellarium/issues/2404
+
+This patch may be safely removed for 0.22.2 - it has been patched upstream.
+
+--- a/src/core/modules/StarMgr.cpp
++++ b/src/core/modules/StarMgr.cpp
+@@ -592,13 +592,13 @@ void StarMgr::setCheckFlag(const QString& catId, bool b)
+                       return;
+               m["checked"]=b;
+               catalogsDescription[idx-1]=m;
+-              starSettings["catalogs"]=catalogsDescription;
+-              QFile tmp(starConfigFileFullPath);
+-              if(tmp.open(QIODevice::WriteOnly))
+-              {
+-                      StelJsonParser::write(starSettings, &tmp);
+-                      tmp.close();
+-              }
++      }
++      starSettings["catalogs"]=catalogsDescription;
++      QFile tmp(starConfigFileFullPath);
++      if(tmp.open(QIODevice::WriteOnly))
++      {
++              StelJsonParser::write(starSettings, &tmp);
++              tmp.close();
+       }
+ }
+ 

diff --git a/sci-astronomy/stellarium/stellarium-0.22.1.ebuild 
b/sci-astronomy/stellarium/stellarium-0.22.1.ebuild
index 940b01d9d06d..1a8d4b878c4d 100644
--- a/sci-astronomy/stellarium/stellarium-0.22.1.ebuild
+++ b/sci-astronomy/stellarium/stellarium-0.22.1.ebuild
@@ -71,6 +71,7 @@ RESTRICT="!test? ( test )"
 PATCHES=(
        "${FILESDIR}/stellarium-0.20.3-unbundle-indi.patch"
        "${FILESDIR}/stellarium-0.20.3-unbundle-zlib.patch"
+       "${FILESDIR}/stellarium-0.22.1-fix-star-manager-segfault.patch"
        "${FILESDIR}/stellarium-0.22.1-unbundle-qtcompress.patch"
 )
 

Reply via email to