Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package SimGear for openSUSE:Factory checked 
in at 2022-02-05 23:23:15
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/SimGear (Old)
 and      /work/SRC/openSUSE:Factory/.SimGear.new.1898 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "SimGear"

Sat Feb  5 23:23:15 2022 rev:25 rq:951745 version:2020.3.12

Changes:
--------
--- /work/SRC/openSUSE:Factory/SimGear/SimGear.changes  2021-08-27 
21:43:51.077966821 +0200
+++ /work/SRC/openSUSE:Factory/.SimGear.new.1898/SimGear.changes        
2022-02-05 23:23:51.055650670 +0100
@@ -1,0 +2,6 @@
+Fri Feb  4 20:05:17 UTC 2022 - Stefan Br??ns <[email protected]>
+
+- Update to 2020.3.12
+  * https://wiki.flightgear.org/Changelog_2020.3#2020.3.12
+
+-------------------------------------------------------------------

Old:
----
  simgear-2020.3.11.tar.bz2

New:
----
  simgear-2020.3.12.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ SimGear.spec ++++++
--- /var/tmp/diff_new_pack.s58yzJ/_old  2022-02-05 23:23:51.635646704 +0100
+++ /var/tmp/diff_new_pack.s58yzJ/_new  2022-02-05 23:23:51.639646676 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package SimGear
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -20,10 +20,10 @@
 # in our requirements, i.e. the same version we have built against
 %define openscenegraph_version %(rpm -qa --nosignature --nodigest 
libOpenSceneGraph\*-devel | sed 's/.*-devel-\\(.*\\)-.*/\\1/')
 
-%define libname libSimGearCore-2020_3_11
+%define libname libSimGearCore-2020_3_12
 %define main_version 2020.3
 Name:           SimGear
-Version:        %{main_version}.11
+Version:        %{main_version}.12
 Release:        0
 Summary:        Simulator Construction Gear
 # https://sourceforge.net/p/flightgear/codetickets/1940/

++++++ simgear-2020.3.11.tar.bz2 -> simgear-2020.3.12.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/simgear-2020.3.11/simgear/canvas/ODGauge.cxx 
new/simgear-2020.3.12/simgear/canvas/ODGauge.cxx
--- old/simgear-2020.3.11/simgear/canvas/ODGauge.cxx    2021-07-29 
11:34:34.000000000 +0200
+++ new/simgear-2020.3.12/simgear/canvas/ODGauge.cxx    2022-01-31 
16:31:54.000000000 +0100
@@ -298,8 +298,8 @@
   {
     if( camera.valid() && Canvas::getSystemAdapter() )
       Canvas::getSystemAdapter()->removeCamera(camera.get());
-    camera.release();
-    texture.release();
+    camera = nullptr;
+    texture = nullptr;
 
     _flags &= ~AVAILABLE;
   }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/simgear-2020.3.11/simgear/scene/material/matlib.cxx 
new/simgear-2020.3.12/simgear/scene/material/matlib.cxx
--- old/simgear-2020.3.11/simgear/scene/material/matlib.cxx     2021-07-29 
11:34:34.000000000 +0200
+++ new/simgear-2020.3.12/simgear/scene/material/matlib.cxx     2022-01-31 
16:31:55.000000000 +0100
@@ -83,6 +83,8 @@
     options->setObjectCacheHint(osgDB::Options::CACHE_ALL);
     options->setDatabasePath(fg_root.utf8Str());
 
+    std::lock_guard<std::mutex> g(d->mutex);
+
     simgear::PropertyList blocks = materialblocks.getChildren("region");
     simgear::PropertyList::const_iterator block_iter = blocks.begin();
 
@@ -154,13 +156,19 @@
 // find a material record by material name and tile center
 SGMaterial *SGMaterialLib::find( const string& material, const SGVec2f center 
) const
 {
+    std::lock_guard<std::mutex> g(d->mutex);
+    return internalFind(material, center);
+}
+
+SGMaterial* SGMaterialLib::internalFind(const string& material, const SGVec2f 
center) const
+{
     SGMaterial *result = NULL;
     const_material_map_iterator it = matlib.find( material );
-    if ( it != end() ) {            
+    if (it != end()) {
         // We now have a list of materials that match this
         // name. Find the first one that matches.
-       // We start at the end of the list, as the materials
-       // list is ordered with the smallest regions at the end.
+        // We start at the end of the list, as the materials
+        // list is ordered with the smallest regions at the end.
         material_list::const_reverse_iterator iter = it->second.rbegin();
         while (iter != it->second.rend()) {
             result = *iter;
@@ -184,11 +192,12 @@
 SGMaterialCache *SGMaterialLib::generateMatCache(SGVec2f center)
 {
        SGMaterialCache* newCache = new SGMaterialCache();
+    std::lock_guard<std::mutex> g(d->mutex);
+
     material_map::const_reverse_iterator it = matlib.rbegin();
     for (; it != matlib.rend(); ++it) {
-        newCache->insert(it->first, find(it->first, center));
+        newCache->insert(it->first, internalFind(it->first, center));
     }
-    
     return newCache;
 }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/simgear-2020.3.11/simgear/scene/material/matlib.hxx 
new/simgear-2020.3.12/simgear/scene/material/matlib.hxx
--- old/simgear-2020.3.11/simgear/scene/material/matlib.hxx     2021-07-29 
11:34:34.000000000 +0200
+++ new/simgear-2020.3.12/simgear/scene/material/matlib.hxx     2022-01-31 
16:31:55.000000000 +0100
@@ -81,7 +81,10 @@
     typedef material_map::const_iterator const_material_map_iterator;
 
     material_map matlib;
-    
+
+
+    SGMaterial* internalFind(const std::string& material, const SGVec2f 
center) const;
+
 public:
 
     // Constructor
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/simgear-2020.3.11/simgear/scene/model/SGText.cxx 
new/simgear-2020.3.12/simgear/scene/model/SGText.cxx
--- old/simgear-2020.3.11/simgear/scene/model/SGText.cxx        2021-07-29 
11:34:34.000000000 +0200
+++ new/simgear-2020.3.12/simgear/scene/model/SGText.cxx        2022-01-31 
16:31:55.000000000 +0100
@@ -16,23 +16,27 @@
 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, 
USA.
 //
 
-#ifdef HAVE_CONFIG_H
-#  include <simgear_config.h>
-#endif
+#include <simgear_config.h>
 
 #include <cstdio>
 
 #include "SGText.hxx"
 
-#include <simgear/math/SGMath.hxx>
-#include <simgear/misc/sg_path.hxx>
-#include <simgear/misc/strutils.hxx>
 
 #include <osg/Geode>
 #include <osg/MatrixTransform>
 #include <osgText/Text>
 #include <osgText/Font>
 
+#include <simgear/misc/ResourceManager.hxx>
+#include <simgear/math/SGMath.hxx>
+#include <simgear/misc/sg_path.hxx>
+#include <simgear/misc/strutils.hxx>
+#include <simgear/scene/material/Effect.hxx>
+#include <simgear/scene/material/EffectGeode.hxx>
+#include <simgear/scene/util/SGReaderWriterOptions.hxx>
+#include <simgear/debug/ErrorReportingCallback.hxx>
+
 using std::string;
 
 class SGText::UpdateCallback : public osg::NodeCallback {
@@ -95,9 +99,15 @@
   osg::Geode * g = new osg::Geode;
   g->addDrawable( text );
 
-  SGPath path("Fonts" );
-  path.append( configNode->getStringValue( "font", "Helvetica" ));
-  text->setFont( path.utf8Str() );
+  const std::string requestedFont = 
configNode->getStringValue("font","Helvetica");
+  const SGPath fontPath = 
simgear::ResourceManager::instance()->findPath("Fonts/" + requestedFont);
+  if ( !fontPath.isNull() ) {
+    text->setFont( fontPath.utf8Str() );
+  } else {
+    simgear::reportFailure(simgear::LoadFailure::NotFound,
+                          simgear::ErrorCode::LoadingTexture,
+                                   "SGText: couldn;t find font:" + 
requestedFont);
+  }
 
   text->setCharacterSize(configNode->getDoubleValue("character-size", 1.0 ), 
                          configNode->getDoubleValue("character-aspect-ratio", 
1.0 ));
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/simgear-2020.3.11/simgear/scene/model/particles.cxx 
new/simgear-2020.3.12/simgear/scene/model/particles.cxx
--- old/simgear-2020.3.11/simgear/scene/model/particles.cxx     2021-07-29 
11:34:34.000000000 +0200
+++ new/simgear-2020.3.12/simgear/scene/model/particles.cxx     2022-01-31 
16:31:55.000000000 +0100
@@ -512,6 +512,14 @@
     staticColorComponents[7] = a2;
 }
 
+ParticlesGlobalManager::~ParticlesGlobalManager()
+{
+    // break a ref-counting cycle
+    if (d->_commonRoot) {
+        d->_commonRoot->removeUpdateCallback(d.get());
+    }
+}
+
 void ParticlesGlobalManager::setWindVector(const osg::Vec3& wind)
 {
     std::lock_guard<std::mutex> g(d->_lock);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/simgear-2020.3.11/simgear/scene/model/particles.hxx 
new/simgear-2020.3.12/simgear/scene/model/particles.hxx
--- old/simgear-2020.3.11/simgear/scene/model/particles.hxx     2021-07-29 
11:34:34.000000000 +0200
+++ new/simgear-2020.3.12/simgear/scene/model/particles.hxx     2022-01-31 
16:31:55.000000000 +0100
@@ -150,7 +150,7 @@
 class ParticlesGlobalManager
 {
 public:
-    ~ParticlesGlobalManager() = default;
+    ~ParticlesGlobalManager();
 
     static ParticlesGlobalManager* instance();
     static void clear();
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/simgear-2020.3.11/simgear/sound/sample.hxx 
new/simgear-2020.3.12/simgear/sound/sample.hxx
--- old/simgear-2020.3.11/simgear/sound/sample.hxx      2021-07-29 
11:34:34.000000000 +0200
+++ new/simgear-2020.3.12/simgear/sound/sample.hxx      2022-01-31 
16:31:55.000000000 +0100
@@ -343,7 +343,7 @@
      * Schedule this audio sample to stop (or start) playing.
      */
     inline void set_out_of_range(bool oor = true) {
-        _out_of_range = oor; _playing = (!oor && _loop); _changed = true;
+        _out_of_range = oor; _changed = true;
     }
 
     /**
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/simgear-2020.3.11/simgear/sound/xmlsound.cxx 
new/simgear-2020.3.12/simgear/sound/xmlsound.cxx
--- old/simgear-2020.3.11/simgear/sound/xmlsound.cxx    2021-07-29 
11:34:34.000000000 +0200
+++ new/simgear-2020.3.12/simgear/sound/xmlsound.cxx    2022-01-31 
16:31:55.000000000 +0100
@@ -347,7 +347,9 @@
    // else
    //   if a property is defined then test if it's value is FALSE
    //      or if the mode is IN_TRANSIT then
-   //            test whether the current value matches the previous value.
+   //            test whether the current value matches the previous value,
+   // else
+   //   check if out of range.
    if (                                                        // Lisp, anyone?
        (_condition && !_condition->test()) ||
        (!_condition && _property &&
@@ -355,7 +357,8 @@
          !curr_value ||
          ( (_mode == SGXmlSound::IN_TRANSIT) && (curr_value == _prev_value) )
          )
-        )
+        ) ||
+        _sample->test_out_of_range()
        )
    {
        if ((_mode != SGXmlSound::IN_TRANSIT) || (_stopping > MAX_TRANSIT_TIME))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/simgear-2020.3.11/simgear-version 
new/simgear-2020.3.12/simgear-version
--- old/simgear-2020.3.11/simgear-version       2021-07-29 11:34:34.000000000 
+0200
+++ new/simgear-2020.3.12/simgear-version       2022-01-31 16:31:54.000000000 
+0100
@@ -1 +1 @@
-2020.3.11
+2020.3.12

Reply via email to