Accepting request 1166862 from games

Update to 5.4.0

OBS-URL: https://build.opensuse.org/request/show/1166862
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/assimp?expand=0&rev=24
This commit is contained in:
Ana Guerrero 2024-04-12 15:33:48 +00:00 committed by Git OBS Bridge
commit 4ebcabb79b
6 changed files with 106 additions and 304 deletions

View File

@ -1,295 +0,0 @@
From 4b9f46dbda5128d6d538d185eb69ad6a7b4b99ff Mon Sep 17 00:00:00 2001
From: Adam Mizerski <adam@mizerski.pl>
Date: Thu, 15 Feb 2024 13:07:00 +0100
Subject: [PATCH] ColladaParser: check values length (#5462)
* ColladaParser: check values length
fixes: #4286
* Refactor calculation of size for data
---------
Co-authored-by: Kim Kulling <kimkulling@users.noreply.github.com>
---
code/AssetLib/Collada/ColladaParser.cpp | 10 +-
.../invalid/box_nested_animation_4286.dae | 196 ++++++++++++++++++
test/models/invalid/readme.txt | 3 +
test/unit/utColladaImportExport.cpp | 8 +
4 files changed, 216 insertions(+), 1 deletion(-)
create mode 100644 test/models/invalid/box_nested_animation_4286.dae
diff --git a/code/AssetLib/Collada/ColladaParser.cpp b/code/AssetLib/Collada/ColladaParser.cpp
index ee7a395d9..c5163fe39 100644
--- a/code/AssetLib/Collada/ColladaParser.cpp
+++ b/code/AssetLib/Collada/ColladaParser.cpp
@@ -3,7 +3,7 @@
Open Asset Import Library (assimp)
---------------------------------------------------------------------------
-Copyright (c) 2006-2022, assimp team
+Copyright (c) 2006-2024, assimp team
All rights reserved.
@@ -1786,6 +1786,10 @@ size_t ColladaParser::ReadPrimitives(XmlNode &node, Mesh &pMesh, std::vector<Inp
const Accessor *acc = input.mResolved;
if (!acc->mData) {
acc->mData = &ResolveLibraryReference(mDataLibrary, acc->mSource);
+ const size_t dataSize = acc->mOffset + acc->mCount * acc->mStride;
+ if (dataSize > acc->mData->mValues.size()) {
+ throw DeadlyImportError("Not enough data for accessor");
+ }
}
}
// and the same for the per-index channels
@@ -1810,6 +1814,10 @@ size_t ColladaParser::ReadPrimitives(XmlNode &node, Mesh &pMesh, std::vector<Inp
const Accessor *acc = input.mResolved;
if (!acc->mData) {
acc->mData = &ResolveLibraryReference(mDataLibrary, acc->mSource);
+ const size_t dataSize = acc->mOffset + acc->mCount * acc->mStride;
+ if (dataSize > acc->mData->mValues.size()) {
+ throw DeadlyImportError("Not enough data for accessor");
+ }
}
}
diff --git a/test/models/invalid/box_nested_animation_4286.dae b/test/models/invalid/box_nested_animation_4286.dae
new file mode 100644
index 000000000..2def61d20
--- /dev/null
+++ b/test/models/invalid/box_nested_animation_4286.dae
@@ -0,0 +1,196 @@
+<?xml version="1.0" encoding="utf-8"?>
+<COLLADA xmlns="http://www.collada.org/2005/11/COLLADASchema" version="1.4.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <asset>
+ <contributor>
+ <author>Blender User</author>
+ <authoring_tool>Blender 2.80.40 commit date:2019-01-07, commit time:23:37, hash:91a155833e59</authoring_tool>
+ </contributor>
+ <created>2019-01-08T17:44:11</created>
+ <modified>2019-01-08T17:44:11</modified>
+ <unit name="meter" meter="1"/>
+ <up_axis>Z_UP</up_axis>
+ </asset>
+ <library_effects>
+ <effect id="Material-effect">
+ <profile_COMMON>
+ <technique sid="common">
+ <lambert>
+ <diffuse>
+ <color sid="diffuse">0.8 0.8 0.8 1</color>
+ </diffuse>
+ <specular>
+ <color sid="specular">0 0.5 0 1</color>
+ </specular>
+ </lambert>
+ </technique>
+ </profile_COMMON>
+ </effect>
+ </library_effects>
+ <library_images/>
+ <library_materials>
+ <material id="Material-material" name="Material">
+ <instance_effect url="#Material-effect"/>
+ </material>
+ </library_materials>
+ <library_geometries>
+ <geometry id="Cube-mesh" name="Cube">
+ <mesh>
+ <source id="Cube-mesh-positions">
+ <float_array id="Cube-mesh-positions-array" count="3">1 1 1 1 1 -1 1 -1 1 1 -1 -1 -1 1 1 -1 1 -1 -1 -1 1 -1 -1 -1</float_array>
+ <technique_common>
+ <accessor source="#Cube-mesh-positions-array" count="8" stride="3">
+ <param name="X" type="float"/>
+ <param name="Y" type="float"/>
+ <param name="Z" type="float"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <source id="Cube-mesh-normals">
+ <float_array id="Cube-mesh-normals-array" count="18">0 0 1 0 -1 0 -1 0 0 0 0 -1 1 0 0 0 1 0</float_array>
+ <technique_common>
+ <accessor source="#Cube-mesh-normals-array" count="6" stride="3">
+ <param name="X" type="float"/>
+ <param name="Y" type="float"/>
+ <param name="Z" type="float"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <source id="Cube-mesh-map-0">
+ <float_array id="Cube-mesh-map-0-array" count="72">0.625 0 0.375 0.25 0.375 0 0.625 0.25 0.375 0.5 0.375 0.25 0.625 0.5 0.375 0.75 0.375 0.5 0.625 0.75 0.375 1 0.375 0.75 0.375 0.5 0.125 0.75 0.125 0.5 0.875 0.5 0.625 0.75 0.625 0.5 0.625 0 0.625 0.25 0.375 0.25 0.625 0.25 0.625 0.5 0.375 0.5 0.625 0.5 0.625 0.75 0.375 0.75 0.625 0.75 0.625 1 0.375 1 0.375 0.5 0.375 0.75 0.125 0.75 0.875 0.5 0.875 0.75 0.625 0.75</float_array>
+ <technique_common>
+ <accessor source="#Cube-mesh-map-0-array" count="36" stride="2">
+ <param name="S" type="float"/>
+ <param name="T" type="float"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <vertices id="Cube-mesh-vertices">
+ <input semantic="POSITION" source="#Cube-mesh-positions"/>
+ </vertices>
+ <polylist material="Material-material" count="12">
+ <input semantic="VERTEX" source="#Cube-mesh-vertices" offset="0"/>
+ <input semantic="NORMAL" source="#Cube-mesh-normals" offset="1"/>
+ <input semantic="TEXCOORD" source="#Cube-mesh-map-0" offset="2" set="1"/>
+ <vcount>3 3 3 3 3 3 3 3 3 3 3 3 </vcount>
+ <p>4 0 0 2 0 1 0 0 2 2 1 3 7 1 4 3 1 5 6 2 6 5 2 7 7 2 8 1 3 9 7 3 10 5 3 11 0 4 12 3 4 13 1 4 14 4 5 15 1 5 16 5 5 17 4 0 18 6 0 19 2 0 20 2 1 21 6 1 22 7 1 23 6 2 24 4 2 25 5 2 26 1 3 27 3 3 28 7 3 29 0 4 30 2 4 31 3 4 32 4 5 33 0 5 34 1 5 35</p>
+ </polylist>
+ </mesh>
+ </geometry>
+ </library_geometries>
+ <library_controllers>
+ <controller id="Armature_Cube-skin" name="Armature">
+ <skin source="#Cube-mesh">
+ <bind_shape_matrix>1 0 0 -1 0 1 0 1 0 0 1 1 0 0 0 1</bind_shape_matrix>
+ <source id="Armature_Cube-skin-joints">
+ <Name_array id="Armature_Cube-skin-joints-array" count="1">Bone</Name_array>
+ <technique_common>
+ <accessor source="#Armature_Cube-skin-joints-array" count="1" stride="1">
+ <param name="JOINT" type="name"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <source id="Armature_Cube-skin-bind_poses">
+ <float_array id="Armature_Cube-skin-bind_poses-array" count="16">0.7886752 0.2113248 0.5773504 -0.5773504 -0.5773503 0.5773503 0.5773503 1.154701 -0.2113249 -0.7886752 0.5773503 -0.5773502 0 0 0 1</float_array>
+ <technique_common>
+ <accessor source="#Armature_Cube-skin-bind_poses-array" count="1" stride="16">
+ <param name="TRANSFORM" type="float4x4"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <source id="Armature_Cube-skin-weights">
+ <float_array id="Armature_Cube-skin-weights-array" count="8">1 1 1 1 1 1 1 1</float_array>
+ <technique_common>
+ <accessor source="#Armature_Cube-skin-weights-array" count="8" stride="1">
+ <param name="WEIGHT" type="float"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <joints>
+ <input semantic="JOINT" source="#Armature_Cube-skin-joints"/>
+ <input semantic="INV_BIND_MATRIX" source="#Armature_Cube-skin-bind_poses"/>
+ </joints>
+ <vertex_weights count="8">
+ <input semantic="JOINT" source="#Armature_Cube-skin-joints" offset="0"/>
+ <input semantic="WEIGHT" source="#Armature_Cube-skin-weights" offset="1"/>
+ <vcount>1 1 1 1 1 1 1 1 </vcount>
+ <v>0 0 0 1 0 2 0 3 0 4 0 5 0 6 0 7</v>
+ </vertex_weights>
+ </skin>
+ </controller>
+ </library_controllers>
+ <library_animations>
+ <animation id="action_container-Armature" name="Armature">
+ <animation id="Armature_ArmatureAction_transform" name="Armature">
+ <source id="Armature_ArmatureAction_transform-input">
+ <float_array id="Armature_ArmatureAction_transform-input-array" count="40">0.04166662 0.08333331 0.125 0.1666666 0.2083333 0.25 0.2916666 0.3333333 0.375 0.4166666 0.4583333 0.5 0.5416667 0.5833333 0.625 0.6666667 0.7083333 0.75 0.7916667 0.8333333 0.875 0.9166667 0.9583333 1 1.041667 1.083333 1.125 1.166667 1.208333 1.25 1.291667 1.333333 1.375 1.416667 1.458333 1.5 1.541667 1.583333 1.625 1.666667</float_array>
+ <technique_common>
+ <accessor source="#Armature_ArmatureAction_transform-input-array" count="40" stride="1">
+ <param name="TIME" type="float"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <source id="Armature_ArmatureAction_transform-output">
+ <float_array id="Armature_ArmatureAction_transform-output-array" count="640">1 0 0 1 0 1 0 -1 0 0 1 0 0 0 0 1 0.9999878 3.10816e-5 0.004935208 1 0 0.9999802 -0.006297799 -1 -0.004935306 0.006297722 0.999968 0 0 0 0 1 0.999819 4.61727e-4 0.01901668 1 0 0.9997054 -0.02427293 -1 -0.01902229 0.02426853 0.9995245 0 0 0 0 1 0.9991519 0.002163141 0.04111904 1 0 0.9986191 -0.05253414 -1 -0.04117589 0.05248959 0.9977722 0 0 0 0 1 0.9975264 0.006301912 0.07000974 1 0 0.9959731 -0.08965231 -1 -0.0702928 0.08943056 0.9935095 0 0 0 0 1 0.9944467 0.01411698 0.1042901 1 0 0.9909625 -0.1341392 -1 -0.1052413 0.1333943 0.9854594 0 0 0 0 1 0.9894527 0.02671701 0.1423712 1 0 0.9828442 -0.184438 -1 -0.1448563 0.1824927 0.9724778 0 0 0 0 1 0.9821799 0.04490547 0.1825 1 0 0.9710366 -0.2389307 -1 -0.1879434 0.234673 0.9537326 0 0 0 0 1 0.9724072 0.06904543 0.2228386 1 0 0.9551992 -0.2959637 -1 -0.2332902 0.2877972 0.9288425 0 0 0 0 1 0.9600915 0.09897761 0.261587 1 0 0.9352878 -0.3538882 -1 -0.2796861 0.339765 0.8979618 0 0 0 0 1 0.9453882 0.1340003 0.2971281 1 0 0.9115852 -0.4111113 -1 -0.3259466 0.3886598 0.8618018 0 0 0 0 1 0.9286572 0.1729132 0.328172 1 0 0.8847058 -0.4661497 -1 -0.3709391 0.4328933 0.8215885 0 0 0 0 1 0.9104556 0.2141147 0.3538722 1 0 0.8555763 -0.5176768 -1 -0.4136069 0.4713217 0.7789642 0 0 0 0 1 0.8915175 0.2557371 0.3738919 1 0 0.8253933 -0.5645581 -1 -0.4529863 0.5033134 0.7358525 0 0 0 0 1 0.8727233 0.2957927 0.388408 1 0 0.7955672 -0.6058654 -1 -0.4882152 0.5287529 0.6943099 0 0 0 0 1 0.8550603 0.332307 0.3980502 1 0 0.7676533 -0.6408653 -1 -0.5185286 0.5479785 0.6563899 0 0 0 0 1 0.8395769 0.3634188 0.4037789 1 0 0.7432778 -0.6689829 -1 -0.5432408 0.5616626 0.6240388 0 0 0 0 1 0.8273312 0.3874339 0.4067161 1 0 0.7240622 -0.6897347 -1 -0.5617144 0.5706391 0.5990393 0 0 0 0 1 0.8193359 0.4028329 0.4079393 1 0 0.7115462 -0.7026393 -1 -0.5733138 0.5756976 0.5829953 0 0 0 0 1 0.8164964 0.4082482 0.4082486 1 7.75722e-8 0.707107 -0.7071065 -1 -0.5773504 0.57735 0.5773503 0 0 0 0 1 0.8190646 0.4033515 0.4079717 1 7.78161e-8 0.7111219 -0.7030687 -1 -0.5737014 0.5758587 0.5824547 0 0 0 0 1 0.8263245 0.3893851 0.4068995 1 7.85059e-8 0.7224849 -0.6913868 -1 -0.5631944 0.5713098 0.5970069 0 0 0 0 1 0.8375081 0.3675125 0.4043696 1 7.95684e-8 0.7400277 -0.6725764 -1 -0.5464249 0.5632883 0.6197791 0 0 0 0 1 0.8517552 0.3390183 0.3994742 1 8.0922e-8 0.7624427 -0.6470557 -1 -0.5239399 0.5511332 0.6494145 0 0 0 0 1 0.8681612 0.3053284 0.3912425 1 8.24806e-8 0.7883466 -0.6152314 -1 -0.4962822 0.5341201 0.6844119 0 0 0 0 1 0.8858209 0.2680094 0.3788038 1 8.41584e-8 0.8163394 -0.5775725 -1 -0.4640273 0.5116258 0.7231305 0 0 0 0 1 0.9038687 0.2287352 0.3615268 1 8.58731e-8 0.8450637 -0.5346656 -1 -0.42781 0.4832675 0.7638266 0 0 0 0 1 0.9215156 0.1892192 0.339124 1 8.75496e-8 0.8732626 -0.4872499 -1 -0.3883413 0.4490085 0.8047251 0 0 0 0 1 0.9380813 0.1511175 0.3117163 1 8.91235e-8 0.899834 -0.4362323 -1 -0.3464153 0.4092214 0.8441175 0 0 0 0 1 0.9530206 0.1159168 0.2798482 1 9.05428e-8 0.9238796 -0.3826832 -1 -0.3029055 0.3647051 0.8804763 0 0 0 0 1 0.965943 0.08482374 0.2444564 1 9.17705e-8 0.9447417 -0.3278156 -1 -0.2587547 0.3166512 0.9125667 0 0 0 0 1 0.9766233 0.05867312 0.2067956 1 9.27852e-8 0.9620277 -0.2729518 -1 -0.2149581 0.2665711 0.9395387 0 0 0 0 1 0.9850019 0.03787052 0.1683363 1 9.35812e-8 0.975616 -0.2194843 -1 -0.1725436 0.2161924 0.9609836 0 0 0 0 1 0.991176 0.02237916 0.1306496 1 9.41678e-8 0.9856446 -0.1688333 -1 -0.1325524 0.1673435 0.9769473 0 0 0 0 1 0.9953793 0.01175384 0.09529842 1 9.45671e-8 0.9924796 -0.1224106 -1 -0.09602053 0.121845 0.9878936 0 0 0 0 1 0.997952 0.005218936 0.06375288 1 9.48115e-8 0.996666 -0.08159051 -1 -0.06396614 0.08142342 0.9946249 0 0 0 0 1 0.9993011 0.001782816 0.03733916 1 9.49397e-8 0.998862 -0.04769476 -1 -0.0373817 0.04766143 0.9981638 0 0 0 0 1 0.9998515 3.78837e-4 0.01722835 1 9.4992e-8 0.9997582 -0.02198936 -1 -0.01723252 0.0219861 0.9996098 0 0 0 0 1 0.99999 2.53135e-5 0.004462156 1 9.50052e-8 0.9999838 -0.00569412 -1 -0.004462227 0.005694063 0.9999738 0 0 0 0 1 1 0 0 2 0 1 0 -1 0 0 1 0 0 0 0 1</float_array>
+ <technique_common>
+ <accessor source="#Armature_ArmatureAction_transform-output-array" count="40" stride="16">
+ <param name="TRANSFORM" type="float4x4"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <source id="Armature_ArmatureAction_transform-interpolation">
+ <Name_array id="Armature_ArmatureAction_transform-interpolation-array" count="40">LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR LINEAR</Name_array>
+ <technique_common>
+ <accessor source="#Armature_ArmatureAction_transform-interpolation-array" count="40" stride="1">
+ <param name="INTERPOLATION" type="name"/>
+ </accessor>
+ </technique_common>
+ </source>
+ <sampler id="Armature_ArmatureAction_transform-sampler">
+ <input semantic="INPUT" source="#Armature_ArmatureAction_transform-input"/>
+ <input semantic="OUTPUT" source="#Armature_ArmatureAction_transform-output"/>
+ <input semantic="INTERPOLATION" source="#Armature_ArmatureAction_transform-interpolation"/>
+ </sampler>
+ <channel source="#Armature_ArmatureAction_transform-sampler" target="Armature_Bone/transform"/>
+ </animation>
+ </animation>
+ </library_animations>
+ <library_visual_scenes>
+ <visual_scene id="Scene" name="Scene">
+ <node id="Armature" name="Armature" type="NODE">
+ <matrix sid="transform">1 0 0 1 0 1 0 -1 0 0 1 0 0 0 0 1</matrix>
+ <node id="Armature_Bone" name="Bone" sid="Bone" type="JOINT">
+ <matrix sid="transform">0.7886751 -0.5773503 -0.211325 0 0.2113248 0.5773503 -0.7886751 0 0.5773503 0.5773503 0.5773502 0 0 0 0 1</matrix>
+ <extra>
+ <technique profile="blender">
+ <layer sid="layer" type="string">0</layer>
+ <roll sid="roll" type="float">-0.5235989</roll>
+ <tip_x sid="tip_x" type="float">-2</tip_x>
+ <tip_y sid="tip_y" type="float">2</tip_y>
+ <tip_z sid="tip_z" type="float">2</tip_z>
+ </technique>
+ </extra>
+ </node>
+ <node id="Cube" name="Cube" type="NODE">
+ <translate sid="location">0 0 0</translate>
+ <rotate sid="rotationZ">0 0 1 0</rotate>
+ <rotate sid="rotationY">0 1 0 0</rotate>
+ <rotate sid="rotationX">1 0 0 0</rotate>
+ <scale sid="scale">1 1 1</scale>
+ <instance_controller url="#Armature_Cube-skin">
+ <skeleton>#Armature_Bone</skeleton>
+ <bind_material>
+ <technique_common>
+ <instance_material symbol="Material-material" target="#Material-material">
+ <bind_vertex_input semantic="UVMap" input_semantic="TEXCOORD" input_set="0"/>
+ </instance_material>
+ </technique_common>
+ </bind_material>
+ </instance_controller>
+ </node>
+ </node>
+ </visual_scene>
+ </library_visual_scenes>
+ <scene>
+ <instance_visual_scene url="#Scene"/>
+ </scene>
+</COLLADA>
diff --git a/test/models/invalid/readme.txt b/test/models/invalid/readme.txt
index 6ad8b4380..ad144ca36 100644
--- a/test/models/invalid/readme.txt
+++ b/test/models/invalid/readme.txt
@@ -18,6 +18,9 @@ crash.
FILES
*********************************************************
+box_nested_animation_4286.dae - This was reported as GH#4286.
+ The "count" parameter in "Cube-mesh-positions-array" is too small.
+
OutOfMemory.off - the number of faces is invalid. There won't be
enough memory so std::vector::reserve() will most likely fail.
The exception should be caught in Importer.cpp.
diff --git a/test/unit/utColladaImportExport.cpp b/test/unit/utColladaImportExport.cpp
index e2842732e..52a927b12 100644
--- a/test/unit/utColladaImportExport.cpp
+++ b/test/unit/utColladaImportExport.cpp
@@ -357,6 +357,14 @@ TEST_F(utColladaImportExport, exporterUniqueIdsTest) {
ImportAsNames(outFileNamed, scene);
}
+// This file is invalid, we just want to ensure that the importer is not crashing
+// This was reported as GH#4286. The "count" parameter in "Cube-mesh-positions-array" is too small.
+TEST_F(utColladaImportExport, parseInvalid4286) {
+ Assimp::Importer importer;
+ const aiScene *scene = importer.ReadFile(ASSIMP_TEST_MODELS_DIR "/invalid/box_nested_animation_4286.dae", 0);
+ EXPECT_EQ(nullptr, scene);
+}
+
#endif
class utColladaZaeImportExport : public AbstractImportExportBase {
--
2.43.0

View File

@ -2,7 +2,7 @@
<service name="tar_scm" mode="disabled">
<param name="scm">git</param>
<param name="url">https://github.com/assimp/assimp</param>
<param name="revision">v5.3.1</param>
<param name="revision">v5.4.0</param>
<param name="versionformat">@PARENT_TAG@</param>
<param name="versionrewrite-pattern">v(.*)</param>
<!-- non-OSI media -->

BIN
assimp-5.3.1.tar.xz (Stored with Git LFS)

Binary file not shown.

3
assimp-5.4.0.tar.xz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:5e484a54cea71fd9e24c8d9a60ea946fc0bfd62f56b32c61fdc4a14484f79bc3
size 27535828

View File

@ -1,3 +1,103 @@
-------------------------------------------------------------------
Thu Apr 11 11:40:44 UTC 2024 - Christophe Marin <christophe@krop.fr>
- Update to 5.4.0
* Reduce memory consumption in JoinVerticesProcess::ProcessMesh()
* Fix: Add check for invalid input argument
* Replace an assert
* Extension of skinning data export to GLB/GLTF format
* Fix output floating-point values to fbx
* Update ImproveCacheLocality.cpp
* Deep arsdk bone double free
* Fix Spelling error
* use size to be compatible with float and double
* Fix: Add missing transformation for normalized normals.
* Fix: Implicit Conversion Error
* Fix add checks for indices
* Update FBXBinaryTokenizer.cpp
* link to external minizip with full path
* utf8 header not found
* Rm unnecessary deg->radian conversion in FBX exporter
* Fix empty mesh handling
* Refactoring: Some cleanups
* Fix invalid read of uint from uvwsrc
* Remove double delete
* fix the mesh-name error.
* COLLADA fixes for textures in C4D input
* Use the correct allocator for deleting objects in case of
duplicate animation Ids
* Fix container overflow in MMD parser
* Fix: PLY heap buffer overflow
* Fix: Check if index for mesh access is out of range
* Update FBXConverter.cpp
* FBX: Use correct time scaling
* Drop explicit inclusion of contrib/ headers
* Update Build.md
* Fix buffer overflow in FBX::Util::DecodeBase64()
* Readme.md: correct 2 errors in section headers
* Fix double free in Video::~Video()
* FBXMeshGeometry: solve issue #5116 using patch provided
* Fix target names not being imported on some gLTF2 models
* correct grammar/typographic errors in comments (8 files)
* KHR_materials_specular fixes
* Disable Hunter
* fixed several issues
* Fix leak
* Check the validity of the archive without parsing
* Fix integer overflow
* Add a test before generating the texture folder
* Build: Disable building zlib for non-windows
* null check.
* Bump actions/upload-artifact from 3 to 4
* fix: KHR_materials_pbrSpecularGlossiness/diffuseFactor convert
to pbrMetallicRoughness/baseColorFactor
* dynamic_cast error.
* Add missing IRR textures
* Fix handling of X3D IndexedLineSet nodes
* Improve acc file loading
* Readme.md: present hyperlinks in a more uniform style
* FBX Blendshape FullWeight: Vec<Float> -> FullWeight: Vec<Double>
* Fix for issues #5422, #3411, and #5443 -- DXF insert scaling fix
and colour fix
* Update StbCommon.h to stay up-to-date with stb_image.h.
* Introduce aiBuffer
* Add bounds checks to the parsing utilities.
* Fix crash in viewer
* Static code analysis fixes
* Kimkulling/fix behavior of remove redundant mats issue 5438
* Fix X importer breakage introduced in commit f844c33
* Fileformats.md: clarify that import of .blend files is deprecated
* feat:1.add 3mf vertex color read 2.fix 3mf read texture bug
* More GLTF loading hardening
* Bump actions/cache from 3 to 4
* Blendshape->Geometry in FBX Export
* Fix identity matrix check
* Fix PyAssimp under Python >= 3.12 and macOS library search support
* Add ISC LICENSE file
* ColladaParser: check values length
* Include defs in not cpp-section
* Add correct double zero check
* Add zlib-header to ZipArchiveIOSystem.h
* Add 2024 to copyright infos
* Append a new setting "AI_CONFIG_EXPORT_FBX_TRANSPARENCY_FACTOR_REFER_TO_OPACITY"
* Eliminate non-ascii comments in clipper
* Fix compilation for MSVC14.
* Add correction of fbx model rotation
* Delete tools/make directory
* Delete packaging/windows-mkzip directory
* Fix #5420 duplicate degrees to radians conversion in fbx importer
* Respect merge identical vertices in ObjExporter
* Fix utDefaultIOStream test under MinGW
* Fix typos
* Add initial macOS support to C4D importer
* Update hunter into CMakeLists.txt
* Fix: add a missing import for AI_CONFIG_CHECK_IDENTITY_MATRIX_EPSILON_DEFAULT
* updated json
* Cleanup: Fix review findings
* Update CMakeLists.txt
- Drop patch, merged upstream:
* 0001-ColladaParser-check-values-length-5462.patch
-------------------------------------------------------------------
Mon Feb 12 23:13:07 UTC 2024 - Adam Mizerski <adam@mizerski.pl>

View File

@ -18,16 +18,14 @@
%define sover 5
Name: assimp
Version: 5.3.1
Version: 5.4.0
Release: 0
Summary: Library to load and process 3D scenes from various data formats
License: BSD-3-Clause AND MIT
Group: Development/Libraries/C and C++
URL: https://www.assimp.org/
Source0: %{name}-%{version}.tar.xz
# PATCH-FIX-UPSTREAM
Patch0: 0001-ColladaParser-check-values-length-5462.patch
BuildRequires: cmake
BuildRequires: cmake >= 3.22
BuildRequires: dos2unix
BuildRequires: gcc-c++
BuildRequires: irrlicht-devel
@ -74,7 +72,6 @@ engine-specific format for easy and fast every-day-loading.
%build
%cmake \
-DASSIMP_IGNORE_GIT_HASH=ON \
-DASSIMP_BUILD_ZLIB=OFF \
-DASSIMP_WARNINGS_AS_ERRORS=OFF \
-DASSIMP_BUILD_ASSIMP_TOOLS=ON