Krishty
5cbc00a595
Fix Build With M3D Import Only
...
`M3DWrapper.h` is designed to omit the definition of `class M3DWrapper` if neither M3D import nor M3D export are compiled.
608bccd9cf
touched the corresponding preprocessor checks and introduced a bug:
```
#ifndef ASSIMP_BUILD_NO_M3D_IMPORTER
#if !(ASSIMP_BUILD_NO_EXPORT || ASSIMP_BUILD_NO_M3D_EXPORTER)
class M3DWrapper {
```
When compiling
- with M3D import enabled,
- but with either export generally disabled or M3D export disabled specifically,
These checks evaluate to the wrong result and skip the definition, leading to a build failure in dependent code.
```
#if 1 // import enabled
#if !(1 || 1) // export disabled and M3D export disabled
```
This commit fixes the check to compile the definition if neither import is disabled.
2023-01-16 08:29:49 +01:00
Krishty
bad76fd0f1
Replace Variables With Literals
2023-01-16 08:18:36 +01:00
Krishty
e5c02e8d45
Remove Useless “virtual”
...
These functions are already marked “override”, and their neighbors had “virtual” removed as well.
2023-01-16 08:12:24 +01:00
Martin Mory
43c0f8bb3d
Remove whitespace between a <v> tag and the first number, otherwise first call to strtoul10() returns 0 and the indices are broken, leading to possible out-of-bound access and memory corruption/crash
2023-01-15 23:03:41 +01:00
Kim Kulling
2d37f49f51
Remove deprecated comment
...
- closes https://github.com/assimp/assimp/issues/4869
2023-01-15 19:12:24 +01:00
Daniel Rösner
74af523b3e
Generalize JoinVerticesProcess for multiple UV and color channels
2023-01-12 13:13:46 +01:00
Kim Kulling
b393132b58
Merge branch 'master' into spelling
2023-01-08 17:43:55 +01:00
Kim Kulling
96b071bdb1
Fix: Fix possible division by zero
...
- closes https://github.com/assimp/assimp/issues/4860
2023-01-04 09:19:37 +01:00
Andy Maloney
e893248e7c
Fix several spelling mistakes & a comment
2023-01-01 13:31:48 -05:00
Kim Kulling
a8e50be781
Refactoring: Move asserthandler header to include
2022-12-23 16:19:39 +01:00
Kim Kulling
376f66a06d
Merge branch 'master' into master
2022-12-16 10:11:56 +01:00
Kim Kulling
c3d15a3f51
Fix minor review findings.
2022-12-16 09:03:40 +01:00
Kim Kulling
c92b84e38d
Merge branch 'master' into patch-10
2022-12-16 09:00:41 +01:00
Kim Kulling
db8ff41679
Update MD5Parser.cpp
2022-12-15 14:06:57 +01:00
Kim Kulling
2612950b7b
Merge branch 'master' into patch-9
2022-12-15 14:05:35 +01:00
sashashura
917352dd8b
Fixes Heap-buffer-overflow READ 1 in Assimp::ObjFileParser::getFace
...
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=49274
2022-12-11 01:54:57 +01:00
Alex
90769ef3e6
Fixes Heap-buffer-overflow READ 1 in Assimp::MD5::MD5Parser::ParseHeader
...
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=49422
When it reaches the `SkipSpacesAndLineEnd`, `in` already points past `bufferEnd` and it leads to out of bounds memory read.
2022-12-11 00:02:09 +00:00
Alex
d5294be00b
Fixes Heap-buffer-overflow READ 4 in Assimp::ScenePreprocessor::ProcessMesh
...
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=49797
2022-12-10 01:22:00 +00:00
Umesh Rajesh Ramchandani
2d372b302f
Fixed bug when exporting binary FBX
...
Fixed vector subscript out of range bug when NULL_RECORD is passed to PutString and is actually null
2022-12-08 14:59:25 +01:00
Kim Kulling
fec39154ed
Merge branch 'master' into floatwarnings
2022-12-08 14:18:35 +01:00
Kim Kulling
769b47ed0e
Ensure face pointer is not nullptr
...
- closes https://github.com/assimp/assimp/issues/4831
2022-12-08 09:35:11 +01:00
Kim Kulling
9d57ac9cc5
Fix:Add missing semicolon.
2022-12-05 13:15:42 +01:00
Kim Kulling
81f85a6f93
Avoid undefined-shift in Assimp::ASE::Parser::ParseLV4MeshFace.
2022-12-05 13:07:52 +01:00
Gargaj
9c839f2d9a
more fixes
2022-12-03 20:44:57 +01:00
Gargaj
07d4e83f43
fix warnings-as-errors for msvc x64
2022-12-03 20:27:00 +01:00
Kim Kulling
62486c6e7c
FIX: Fix possible division by zero
...
- closes https://github.com/assimp/assimp/issues/4819
2022-12-02 09:24:51 +01:00
Kim Kulling
f578b15759
Merge branch 'master' into explspec
2022-11-30 14:03:09 +01:00
Thomas Köppe
7d06d798af
[BlenderDNA.h] Declare explicit specializations
...
It is an ODR violation to use a template specialization for which an
explicit specialization is defined somewhere whose declaration is not
visible at the point of use.
Found via clang's -Wundefined-func-template warning.
2022-11-29 18:38:33 +00:00
Kim Kulling
8fb7ba3444
Merge branch 'master' into modernize-smartptrs-literals
2022-11-29 09:58:17 +01:00
Kim Kulling
5689ac7869
Add overfolow check for invalid data.
...
- closes https://github.com/assimp/assimp/issues/3422
2022-11-22 10:50:52 +01:00
Kim Kulling
1d1cd93371
Merge branch 'master' into KHR_materials_emissive_strength
2022-11-21 20:55:13 +01:00
Jan Krassnigg
08f2f0f82f
Don't hide out-of-memory during FBX import
2022-11-18 13:50:33 +01:00
Adam Beili
95d98ec98b
fixed indentation error
2022-11-08 20:55:20 +02:00
Adam Beili
49bc22ddb5
Merge branch 'master' into KHR_materials_emissive_strength
2022-11-08 20:51:20 +02:00
Aaron Gokaslan
3730b7414f
Use make_shared in IFCBoolean
2022-11-08 11:30:53 -05:00
Aaron Gokaslan
d635bc6914
Fix some indentation
2022-11-08 11:19:12 -05:00
Aaron Gokaslan
ccfb175460
Apply various clang-tidy checks for smartprs and modern C++ types
2022-11-08 11:03:55 -05:00
Aaron Gokaslan
97cb1c6b15
Fix perfect fowards
2022-11-07 11:01:16 -05:00
Aaron Gokaslan
5a0df03d2b
Fix another missing move in glTFCommon.h
2022-11-07 09:34:00 -05:00
Adam Beili
945d93b46a
fixed indentation
2022-11-04 09:37:28 -07:00
Adam
852ea8325c
Added support for KHR_materials_emissive_strength
...
according to spec https://github.com/KhronosGroup/glTF/tree/main/extensions/2.0/Khronos/KHR_materials_emissive_strength
2022-11-03 23:11:21 +02:00
Aaron Gokaslan
899f8e1d17
Remove redundant ctor
2022-11-03 12:46:40 -04:00
Aaron Gokaslan
02378b5e70
Add one more missing move
2022-11-03 12:36:58 -04:00
Aaron Gokaslan
8da3d277c7
add missing std moves
2022-11-03 12:35:10 -04:00
Kim Kulling
99e515fbfd
Fix:Fix possible nullptr dereferencing + refactorings.
2022-10-29 17:08:26 +02:00
Sergey
ac87b9ce7e
fixed error with trailing zero symbol as placeholder character
2022-10-19 09:30:32 +03:00
Kim Kulling
35136bc90c
Merge branch 'master' into master
2022-10-18 19:25:14 +02:00
Kim Kulling
07aef23d24
Fix: Add missing ahndling for double export in json
2022-10-18 19:05:04 +02:00
François Lozes
e17976e6e2
* fix bug reading ply file in case of presence of "end_header\n<BINARY_DATA>..." with <BINARY_DATA> starting by "\n"
2022-10-14 13:16:18 +02:00
slinky55
e0fb1674d1
Merge branch 'clang-fix' of github.com:slinky55/assimp into clang-fix
2022-09-30 22:04:11 -04:00
slinky55
38ccb7e6c9
Used sizeof for buffer sizes instead of hardcoding values
2022-09-30 22:03:59 -04:00
slinky55
5f28370f7f
Merge branch 'master' into clang-fix
2022-09-30 21:57:32 -04:00
slinky55
e2e45f7a14
Fixed issue with clang complaining about sprintf being depreciated
2022-09-30 00:34:33 -04:00
Kim Kulling
981677d4b9
Merge branch 'master' into MakeFBXParserResilientToMissingStreams
2022-09-30 00:13:45 +02:00
Povilas Kanapickas
f6a590065c
Prefix symbols from stb_image.h
...
This makes it possible to link assimp statically into an executable with
another static library that includes stb_image.h without hiding its
symbols.
2022-09-23 04:08:21 +03:00
Povilas Kanapickas
22494bde17
Don't include stm_image implementation if using stb library from Hunter
...
Hunter compiles its own stb library binaries. Currently a second copy is
compiled by defining STB_IMAGE_IMPLEMENTATION in Assimp.cpp. This may
cause hard to understand bugs if this compiled copy ever becomes
different from what Hunter supplies.
2022-09-23 04:08:20 +03:00
Florian Born
7eb9edf0b9
Make FBX parser resilient to missing data streams
2022-09-21 11:45:54 +02:00
Kim Kulling
6415c0bfc9
FIX: Use attribute to fix warning.
2022-09-20 21:39:09 +02:00
Kim Kulling
1f61f0c3de
FIX: Caculate buffer end pointer after initing all attributes
2022-09-20 21:35:44 +02:00
Kim Kulling
f1766c4bd5
FIX: Fix head overflow in MD5-parser.
2022-09-20 21:03:58 +02:00
Kim Kulling
b3c7bdbdd6
Add check for wall switch from cmake
2022-09-17 18:16:42 +02:00
Kim Kulling
e4c77aa4fa
Fix: Use ASCII treeview in assimp-cmd.
2022-09-16 21:55:14 +02:00
Aaron Gokaslan
20755f4200
Perfect forward val to utMaybe
2022-09-09 10:55:45 -04:00
Kim Kulling
ad1d0fcb45
Merge branch 'master' into kimkulling/cleanup_after_review
2022-09-08 19:09:49 +02:00
Kim Kulling
3af53a42aa
Fix typo
2022-09-08 19:06:05 +02:00
Kim Kulling
fff977c0b5
Fix review findings.
2022-09-08 18:54:08 +02:00
HiMemX
4c9d270a5e
-Vertex export fix
2022-09-07 23:10:31 +02:00
Kim Kulling
8895ecf243
Merge branch 'master' into kimkulling/cleanup_after_review
2022-09-07 21:26:54 +02:00
Kim Kulling
362ff08855
Add doc + small unittest
2022-09-07 21:25:46 +02:00
Gargaj
d15b4ad7ef
add missing light data to assbin import/export
2022-09-05 16:09:24 +02:00
Kim Kulling
2a667cc637
Merge branch 'master' into patch-1
2022-09-04 09:52:42 +02:00
Aaron Gokaslan
411171fa45
Apply some more modernize-use-emplace
2022-09-02 11:20:02 -04:00
Aaron Gokaslan
e3b01e10db
apply fixes to more headers
2022-09-01 12:28:45 -04:00
Aaron Gokaslan
4c6652f5b0
Add a handful of missing fixes
2022-09-01 11:37:53 -04:00
Gargaj
a22aa75bca
fix vertices being joined duplicating weights
...
This bug causes weights to duplicate, i.e. one bone will have several (equal) weights assigned to the same vertex - which then has the potential to cause even bigger problems when combined with `LimitBoneWeightsProcess`.
2022-08-31 22:27:34 +02:00
Kim Kulling
f527e56f22
Merge branch 'master' into explicitly-default-dtors
2022-08-30 22:21:06 +02:00
Kim Kulling
80ae9afe4e
Add missing documentation.
2022-08-30 21:55:52 +02:00
Kim Kulling
25d7510b8c
Merge branch 'master' into kimkulling/cleanup_after_review
2022-08-29 22:17:39 +02:00
Kim Kulling
e34becff62
Enable portable linkage to fix build
2022-08-29 11:43:32 +02:00
Kim Kulling
0571ee21fb
Introduce unittest for BaseProcess.
2022-08-28 20:58:52 +02:00
Kim Kulling
02e6c425f9
Fix ordering of initalizer list
2022-08-27 15:20:53 +02:00
Kim Kulling
e4c383324a
Use string for constexpr
2022-08-27 15:11:54 +02:00
Kim Kulling
14186bcd6b
Code cleanup and some new unittests for edgecases.
2022-08-27 14:07:45 +02:00
J.G.Adams
9cd723e282
Wrong object is created here!
...
If I'm not mistaken. Because this is originally push_back(aniMeshVertex) instead of push_back(v).
And the fact that aniMeshVertex is just getting created and destroyed for nothing.
It need to be replaced with this then? A Clang-tidy syntax to create the same aniMeshVertex.
I found this in pull request #4527 I think it may need to be reviewed too.
2022-08-26 19:12:11 -04:00
Aaron Gokaslan
e93fa6699a
Manually fix up 100 more instances where it should be defaulted
2022-08-25 12:20:13 -04:00
Aaron Gokaslan
6fa21dcc6e
Explicitly default all empty dtors
2022-08-25 11:32:59 -04:00
Kim Kulling
2b30b7e062
Merge branch 'master' into skylion007/modernize-use-emplace
2022-08-24 11:48:30 +02:00
Kim Kulling
659195d852
Fix the fixme
...
- Based on the implementation in top of the last one I guess I know how to fix that.
- Replacing push_back by emplace_back
2022-08-24 11:17:10 +02:00
Turo Lamminen
0d8723a3eb
Add FIXME comment
2022-08-24 10:43:40 +03:00
Turo Lamminen
654ae3af4e
Fix out of bounds access in X3D loader
2022-08-24 10:42:01 +03:00
Aaron Gokaslan
25add7baa2
Merge branch 'master' into skylion007/modernize-use-emplace
2022-08-23 15:14:48 -04:00
Kim Kulling
87f601531c
Merge branch 'master' into master
2022-08-23 21:14:45 +02:00
Aaron Gokaslan
b176061c41
Remove extra space in emplace insertions
2022-08-23 11:46:30 -04:00
Aaron Gokaslan
27edb43600
Apply modernize-use-emplace clang-tidy rule
2022-08-23 11:41:49 -04:00
Turo Lamminen
f890bc791f
Fix out of bounds write
2022-08-23 14:38:27 +03:00
Turo Lamminen
68bc6a06b9
Use unique_ptr for aaiBones instead of explicit delete[]
2022-08-23 14:17:56 +03:00
Turo Lamminen
03397d42e2
Use unique_ptr for aaiFaces instead of explicit delete[]
2022-08-23 14:15:06 +03:00
Turo Lamminen
795c0abcc8
Apply modernize-loop-convert to the simplified loop
2022-08-23 14:10:23 +03:00
Turo Lamminen
1ca44acebc
Simplify a for loop
2022-08-23 14:10:23 +03:00
Turo Lamminen
712671e81a
Apply modernize-loop-convert again
2022-08-23 14:10:20 +03:00
Turo Lamminen
5f28c51c03
Apply clang-tidy modernize-loop-convert transformation
2022-08-23 13:59:42 +03:00
Kim Kulling
2013ae114a
[WIP] Use ai_Real to write correct accuracy
...
- closes https://github.com/assimp/assimp/issues/4676
2022-08-18 17:41:07 +02:00
vkaytsanov
4c143eb581
Merge branch 'master' into master
2022-08-17 12:01:44 +03:00
Turo Lamminen
1c59de42fc
Make some blender fields warn if missing instead of error
2022-08-17 11:42:32 +03:00
Turo Lamminen
d2dc0401c3
Use weak pointer for ModifierData prev to avoid memory leak
2022-08-17 11:42:32 +03:00
Turo Lamminen
30555282fe
Use weak pointer for ElemBase last to avoid memory leak
2022-08-17 11:42:32 +03:00
Turo Lamminen
56b6446913
Use weak pointer for MirrorModifierData mirror_ob to avoid memory leak
2022-08-17 11:42:32 +03:00
Turo Lamminen
90d1464405
Remove set but unused variables
2022-08-17 11:42:32 +03:00
Turo Lamminen
2e64880abf
Inherit SubsurfModifierData and MirrorModifierData from SharedModifierData
...
This makes the cast in BlenderModifierShowcase::ApplyModifiers work
correctly and not invoke UB.
2022-08-17 11:42:32 +03:00
Turo Lamminen
e43e3e11b9
Move SharedModifierData definition to BlenderScene.h
2022-08-17 11:42:32 +03:00
Turo Lamminen
2c1943cd10
Improve BlenderDNA error message
2022-08-17 11:42:32 +03:00
Kim Kulling
89c4640744
Merge branch 'master' into master
2022-08-16 20:53:45 +02:00
vkaytsanov
d469c7b161
Remove exception on glTF 2.0 loading
2022-08-16 15:52:43 +03:00
Kim Kulling
baf14f6c16
Merge branch 'master' into master
2022-08-12 14:09:04 +02:00
Aleks L
4b85eb59c2
Fixes Heap-buffer-overflow READ in Assimp::ASE::Parser::ParseLV1SoftSkinBlock
2022-08-10 15:30:07 +01:00
Ville Voutilainen
253f8bfa62
Use unqualified uint32_t everywhere in FBXBinaryTokenizer
...
The use of qualified std::uint32_t requires including <cstdint> instead
of <stdint.h> on some implementations, and that breaks the build of Qt 6
on GCC 13. Just use the unqualified name everywhere.
2022-08-09 01:54:31 +03:00
Kim Kulling
5084a4d155
Use [[fallthrough]]; to mark whished fallthroughs
...
- closes https://github.com/assimp/assimp/issues/4654
2022-08-05 20:49:37 +02:00
Kim Kulling
eac0876c9b
Refactoring: Use correct prefix for attributes in ObjImport.
2022-07-31 20:54:58 +02:00
Kim Kulling
dddfb74902
Fix another mem-leak
2022-07-31 13:37:42 +02:00
Kim Kulling
c349035cd1
Fix face memleak.
2022-07-31 12:10:43 +02:00
Kim Kulling
85f86ec076
Revert using face as pod type
2022-07-30 21:52:33 +02:00
Kim Kulling
0513eff44f
Merge branch 'master' into kimkulling/waveform_obj_optimizations
2022-07-30 13:15:42 +02:00
Kim Kulling
f6bcb160d0
Improvements of obj-parsers.
2022-07-30 12:58:09 +02:00
Kim Kulling
340d800739
Merge branch 'master' into master
2022-07-29 20:42:56 +02:00
Kim Kulling
4f6640278a
Merge branch 'master' into fix/collada_parser_sid
2022-07-29 19:17:43 +02:00
Kim Kulling
b0210cb3cf
Merge branch 'master' into patch-1
2022-07-29 17:48:14 +02:00
Engin Manap
7c75a4c59b
Merge branch 'master' into master
2022-07-24 12:31:36 -07:00
Kim Kulling
73542f3830
Merge branch 'master' into patch-2
2022-07-24 12:11:18 +02:00
Kim Kulling
f07bc2c5b9
Merge branch 'master' into patch-3
2022-07-18 15:19:27 +02:00
Kim Kulling
05ececc387
Merge branch 'master' into patch-4
2022-07-18 14:06:29 +02:00
sashashura
9ddc3a64d7
Fixes Crash in Assimp::ObjFileMtlImporter::getFloatValue
2022-07-16 13:55:08 +01:00
sashashura
772cfdc757
Fixes Heap-buffer-overflow in Assimp::ObjFileParser::getFace
2022-07-16 13:50:54 +01:00
sashashura
94c0e9d890
Fixes Heap-buffer-overflow in std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<ch
2022-07-16 13:48:39 +01:00
sashashura
a4274930e4
Fixes Heap-use-after-free in Assimp::DXFImporter::ExpandBlockReferences
2022-07-16 13:46:50 +01:00
sashashura
0c07ea7c71
Fixes Heap-buffer-overflow in SuperFastHash
2022-07-16 13:44:46 +01:00
Engin Manap
684909a691
Fix comments on PR
...
1) Use default instead of empty destructor
2) Remove debug code
2022-07-09 17:23:40 +02:00
Engin Manap
3e424f8119
Merge branch 'assimp:master' into master
2022-07-09 17:17:01 +02:00
Kim Kulling
6ad8ea395a
Merge branch 'master' into fix_stl_for_over_4GB
2022-07-09 09:58:10 +02:00
Engin Manap
e63426b89c
Fix collada parser fails on Mixamo exports
2022-07-08 23:42:41 +02:00
Engin Manap
3890b5dff5
Add missing = operator
...
implicit assignment operator is depricated, these classes were missing
explicit definitions of this operator.
It is causing warnings, specifically -Werror=deprecated-copy
2022-07-08 18:16:02 +02:00
Engin Manap
c3a89fd2d0
Fix non virtual destructor use
2022-07-08 18:16:02 +02:00
Engin Manap
ae276987a0
Remove unnecessary const qualifiers
...
These changes are part of enable -Wall, this specific changes are for
-Werror=ignored-qualifiers
2022-07-08 18:16:02 +02:00
Engin Manap
a10abe0283
Add fallthrough comment to switch case
...
This allows gcc to identify intentional fallthroughs, which are part all
-Wall. Specifically -Werror=implicit-fallthrough
2022-07-08 18:16:02 +02:00
Robert Osfield
8e062792cd
Build fix for compiling against minizip.
2022-07-08 12:46:27 +01:00
tanolino
c23146bb20
Use size_t for the file size in cpp file
...
This pointer juggling in combination with STL files >4GB caused some nasty illegal memory access bugs here. So let's fix it.
2022-07-08 10:26:03 +02:00
Kim Kulling
c5dfcac08a
Update D3MFOpcPackage.cpp
2022-07-08 10:25:40 +02:00
tanolino
24d110199a
Use size_t for file size instead of unsigned int
...
This is one step to help us open files with more then 4 GB size.
2022-07-08 10:19:50 +02:00
Kim Kulling
e254f80a3a
Fix memory leak in D3MFOpcPackage
...
- closes https://github.com/assimp/assimp/issues/4628
2022-07-08 10:17:11 +02:00
Kim Kulling
e59b8fb448
Fix typo
2022-07-08 09:50:04 +02:00
Kim Kulling
70b2db19a8
Remove assertion test
...
- Code cleanup
- closes https://github.com/assimp/assimp/issues/4626
2022-07-08 09:47:33 +02:00