The order_by_primitive_mode comparer was not providing a strict weak
ordering, which was causing a crash in the sort() call in
VertexAccessOrderVisitor::optimizeOrder (gcc 4.9, Fedora 21).
From 05f29345cc39b4c2111bc80c8df8583aeaf9bf3f Mon Sep 17 00:00:00 2001
From: Tim Moore <[email protected]>
Date: Sat, 18 Apr 2015 13:22:39 +0200
Subject: Fix for crash in order_by_primitive_mode

The order_by_primitive_mode comparer was not providing a strict weak
ordering, which was causing a crash in the sort() call in
VertexAccessOrderVisitor::optimizeOrder (gcc 4.9, Fedora 21).
---
 include/osgUtil/MeshOptimizers | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/osgUtil/MeshOptimizers b/include/osgUtil/MeshOptimizers
index c140266..e0ddd1e 100644
--- a/include/osgUtil/MeshOptimizers
+++ b/include/osgUtil/MeshOptimizers
@@ -94,7 +94,7 @@ class OSGUTIL_EXPORT VertexAccessOrderVisitor : public 
GeometryCollector
         inline bool operator() (const osg::ref_ptr<osg::PrimitiveSet>& prim1, 
const osg::ref_ptr<osg::PrimitiveSet>& prim2)
         {
             if(prim1 && prim2) {
-                return prim1->getMode() >= prim2->getMode();
+                return prim1->getMode() > prim2->getMode();
             }
             else if(prim1) {
                 return true;
-- 
2.1.0

Attachment: MeshOptimizers
Description: Binary data

_______________________________________________
osg-submissions mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org

Reply via email to