Commit Graph

5917 Commits (24880740aa79a75199ed146d93c17334bd11c859)

Author SHA1 Message Date
Kim Kulling 840416831d
Merge pull request #1676 from terziman/master
Bug fixes for IFC
2018-01-04 00:27:17 +01:00
Kim Kulling c66c7d7ae6 remove ctest to make workspace more readable. 2018-01-03 17:22:07 +01:00
Leo Terziman d0bee866c0 Merge remote-tracking branch 'github/master' into contrib 2018-01-03 16:15:07 +01:00
Leo Terziman 712a7ee779 Fixed bug in IFC where SweptDiskSolid tessellation would fail for polylines with only 2 points.
Indeed, the EstimateSampleCount is not always accurate in this case, as the number of generated curvature pointer is greater by one. Moreover, it is redundant to call EstimateSampleCount, as the SampleDiscrete method will provide the (correct) number of points anyway. This commit fix the described bug, but also increase the efficiency of the ProcessSweptDiskSolid method, as EstimateSampleCount is only called once now, instead of two times.
2018-01-03 16:14:20 +01:00
Leo Terziman 32dfd423db Fixed bug in IFC when dimensional exponent parameters in IfcSIUnits is not defined.
Usually, the value of this parameter is derived from parents, but it is not always the case for some files.
2018-01-03 16:08:18 +01:00
Kim Kulling fd91acdfc4
Merge pull request #1673 from assimp/kimkulling-patch-2
Update o3dgcTimer.h
2018-01-03 01:24:21 +01:00
Kim Kulling cf59c7d153
Update o3dgcTimer.h
closes https://github.com/assimp/assimp/issues/1642: fix build on Hurd
2018-01-03 00:56:32 +01:00
Kim Kulling 837baabd36
Merge pull request #1671 from assimp/aiVector3_Reviewfindings
Fix some minor findings.
2018-01-02 23:16:10 +01:00
Kim Kulling 0be6c9efcd
Merge branch 'master' into aiVector3_Reviewfindings 2018-01-02 21:56:34 +01:00
Kim Kulling d2a6bb15c2
Merge pull request #1672 from turol/memfixes
Memory management fixes
2018-01-02 21:56:07 +01:00
Turo Lamminen 8a505398a3 MMD: Fix memory leak 2018-01-02 20:35:06 +02:00
Turo Lamminen aac41cf2c3 MMD: Fix delete / delete[] mismatch
Also this was a horrible abuse of std::vector and shouldn't have worked
2018-01-02 20:28:08 +02:00
Turo Lamminen 7ebd8e7543 glTFAsset: Use std:unique_ptr for Image data 2018-01-02 20:09:22 +02:00
Turo Lamminen d308cfcb43 glTF: Fix delete / delete[] mismatch 2018-01-02 19:23:21 +02:00
Kim Kulling bb8527a671
Merge branch 'master' into aiVector3_Reviewfindings 2018-01-01 22:16:52 +01:00
Kim Kulling 085a85569e
Merge pull request #1670 from assimp/update_gtest_to_1_8_0
new gtest version: 1.8.0
2018-01-01 20:58:33 +01:00
Kim Kulling bd81869794 Fix some minor findings. 2018-01-01 20:57:59 +01:00
Kim Kulling fb660823fc new gtest version: 1.8.0 2018-01-01 19:42:01 +01:00
Kim Kulling fe5277e117
Merge pull request #1668 from rspencer01/master
Version bump pyassimp
2017-12-31 16:06:59 +01:00
Kim Kulling 02c0cba0dc
Merge branch 'master' into master 2017-12-31 14:04:07 +01:00
Kim Kulling 5920526b7a
Merge pull request #1666 from aavenel/fix_obj_crash
Fix some crashes when parsing ill-formed OBJ file
2017-12-31 14:03:56 +01:00
Kim Kulling da120b03b4
Merge branch 'master' into fix_obj_crash 2017-12-31 12:09:19 +01:00
Kim Kulling 3407889ec9
Merge pull request #1663 from assimp/issue_1655
closes https://github.com/assimp/assimp/issues/1655: add typedef for …
2017-12-31 12:08:57 +01:00
Alexandre Avenel ced6e8ce43 Use std::unique_ptr in ObjFileParser 2017-12-30 13:23:44 +01:00
Robert Spencer d3150eedfb Version bump pyassimp 2017-12-29 19:46:16 +02:00
Alexandre Avenel 606fd6b1a1 Replace assertion by an exception in Obj parsing
This crash could happen when the user try to parse an ill-formed obj file.
2017-12-29 18:07:41 +01:00
Alexandre Avenel 7de7c548fb Add unit test to OBj importer for homogeneous coord
This test triggers an assertion when we divide by zero in homogeneous
coordinates.
2017-12-29 18:06:20 +01:00
Alexandre Avenel 20ef807982 Remove assertion in ObjFileImporter
This assertion is already handled by an exception, and could lead to a
crash when parsing an ill-formed OBJ file.
2017-12-29 17:56:30 +01:00
Kim Kulling 58c38022ab
Merge branch 'master' into issue_1655 2017-12-29 17:09:38 +01:00
Kim Kulling dc5726bd0f
Merge pull request #1664 from JLouis-B/QtViewer-fixes
Qt viewer : fixes for failed imports
2017-12-28 21:33:57 +01:00
Jean-Louis Boudrand 04d5f49f6d Use QString::number
easier to read + typos
2017-12-28 15:10:55 +01:00
Kim Kulling 6a9df80f68 closes https://github.com/assimp/assimp/issues/1655: add typedef for android NDK. 2017-12-28 14:52:41 +01:00
Jean-Louis Boudrand e030d374b9 Qt Viewer : Fixes for failed imports
Fix the UI when an import fail
2017-12-28 13:55:41 +01:00
Kim Kulling f8eeaf176a
Merge pull request #1661 from JLouis-B/master
Qt viewer : Improve exports
2017-12-28 09:35:55 +01:00
Jean-Louis Boudrand e5891e5a09 Qt viewer : Improve exports
- Add a dialog to select the exporter
- Export based on exporter id instead of extensions (fix issues like for Collada)
- Message box if there is an error
2017-12-27 19:08:20 +01:00
turol bc541e56af
Merge pull request #1656 from turol/misc
Miscellaneous memory management fixes
2017-12-25 10:16:56 +02:00
Turo Lamminen 096056b899 Q3BSP: Fix build with clang libc++ 2017-12-24 22:17:59 +02:00
Turo Lamminen dc94e5921e MDLImporter: Use unique_ptr
Fixes a double free
2017-12-24 22:17:11 +02:00
Turo Lamminen 55e69272bd MMD: Remove bogus assert
It can be triggered by input file, it's undocumented and it looks like nothing breaks
2017-12-24 22:15:19 +02:00
Turo Lamminen 90cdd0f20c RemoveComments: Fix out-of-bounds read when file ends with a comment 2017-12-24 22:14:39 +02:00
Turo Lamminen 0cc25491a4 irrXML: Remove horrible hack 2017-12-24 15:38:42 +02:00
Turo Lamminen 4078543827 OpenGEX: Throw exception on malformed color4 instead of crashing 2017-12-24 14:57:14 +02:00
Turo Lamminen 7932a85ca1 Raw: Fix unitialized values in scene 2017-12-24 14:38:26 +02:00
Turo Lamminen 1ad789bae9 Raw: Reformat code, no functional change 2017-12-24 14:26:53 +02:00
Kim Kulling 885c32e8cc
Merge pull request #1654 from faulesocke/master
Fix buffer overflow in obj loader
2017-12-23 19:05:54 +01:00
Faule Socke 4a65e76ca7 Fix buffer overflow in obj loader
The overflow-checking code in ObjFileImporter::createVertexArray is at
the wrong position, allowing buffer overflows in preceding code.

This fix moves the code to the right spot.

An actual overflow can be caused by usign some more bugs and weird
behaviours and injecting a malformed line statement into the object
file, containing only one index. Such a malformed file could for
example look like:

o 1

v 0 0 0
v 1 1 1
v 2 2 2

l 1
f 1 2 3

Because the code in ObjFileImporter::createTopology incorrectly handles
line-type faces containing only one index (in line 364), it
underestimates the number of required indices and therefore causes the
buffer allocated in line 421 to be too small.

I believe, the correct fix for this would be in the parser and
rejecting such faces early. However the overflow check was misplaced
anyway.

If you can't reproduce a crash, just insert some more "l 1" lines
before the "f 1 2 3" line until it crashes. The behaviour of heap buffer
overflows strongly depends on memory layout and allocation history.
2017-12-23 17:57:48 +01:00
Kim Kulling dd3cb74b21
Merge pull request #1652 from assimp/loebl-iosystem-patch
Loebl iosystem patch
2017-12-22 19:31:51 +01:00
Kim Kulling 5a30bccdae closes https://github.com/assimp/assimp/issues/1612: make wstaring handling depend from encoding of the filename. 2017-12-22 16:45:07 +01:00
Kim Kulling 2294390917
Merge branch 'master' into iosystem-patch 2017-12-20 09:57:54 +01:00
Kim Kulling 95661e8662
Merge pull request #1648 from elect86/patch-17
Update FBXDocument.cpp, typo
2017-12-20 09:56:29 +01:00