Commit Graph

30 Commits (45847193629e2f1f78ea0cffb95daf1523abdf7a)

Author SHA1 Message Date
Kim Kulling 01231d0e60
Add 2024 to copyright infos (#5475) 2024-02-23 22:30:05 +01:00
Kim Kulling 3476c79801
Static code analysis fixes (#5447)
* Static code analysis fixes

- Fix warning in LOW

* Fix possible out of bound access.

* Add default to class declaration
2024-01-31 09:30:54 +01:00
Kim Kulling c08e3b4abb
Add bounds checks to the parsing utilities. (#5421)
* Add bounds checks to the parsing utilities.

* Fix merge conflicts in ACLoader.

* Fix loaders

* Fix unittest of AC-Loader.

* Remove dead code.

* Md5Parser fixes

* Fix md5-parsing

* Fix Merge conflict

* Fix merge conflicts.

* Md5: Fix warning: missing return statement.
2024-01-30 14:32:41 +01:00
Kim Kulling 8cf2d6e588 Refactoring: Some cleanups 2023-11-12 21:09:33 +01:00
Alex dbd15fd351 Fix UNKNOWN WRITE in std::__1::list<Assimp::LWO::Envelope, std::__1::allocator<Assimp::LWO::Envelope> 2023-06-14 07:38:47 +02: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 e3b01e10db apply fixes to more headers 2022-09-01 12:28:45 -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 27edb43600 Apply modernize-use-emplace clang-tidy rule 2022-08-23 11:41:49 -04:00
Turo Lamminen 90d1464405 Remove set but unused variables 2022-08-17 11:42:32 +03:00
sashashura 0c07ea7c71
Fixes Heap-buffer-overflow in SuperFastHash 2022-07-16 13:44:46 +01:00
Kim Kulling 05746acb07 Merge branch 'new-file-detection' of https://github.com/krishty/assimp into krishty-new-file-detection 2022-01-16 20:41:24 +01:00
Kim Kulling 50c7301a38 Update copyrights 2022-01-10 21:13:43 +01:00
Alex Rebert b14b34d2b8
LWSLoader: Fix out of bounds iterator access
Fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=38947
Fix #4222
2022-01-05 15:43:16 -05:00
Kim Kulling 635153b3a4
LWS-Import: Avoid access to empty string token
- Fix invalid access to string pointer when string token is empty
- closes https://github.com/assimp/assimp/issues/4222
2021-12-22 21:08:28 +01:00
Kim Kulling 18531e3677 Next iteration for c++11 features. 2021-09-13 22:38:20 +02:00
Krishty 758116b083 removed trailing spaces and tabs from source and text
This commit ignores the “contrib” folder in order to prevent merge conflicts in dependencies, should these be updated via git.
2021-07-29 13:28:51 +02:00
Aaron Gokaslan 94c3abd841 Apply various performance fixes from clang-tidy 2021-06-22 12:27:15 -04:00
Malcolm Tyrrell 4ec01cfdcd Improve use of logging 2021-05-13 12:05:31 +01:00
Krishty b79b84d34e Merge branch 'master' into new-file-detection 2021-05-05 00:09:42 +02:00
Krishty 0f3e6e2941 replaced std::size() with AI_COUNT_OF for pre-C++20 compilers 2021-05-05 00:08:54 +02:00
Krishty b00de10eb3 Simplified importer search and fixed a few bugs
The search for a matching importer had a few issues, see #3791. There were two different mechanisms to determine whether an importer accepts a specific file extension:
1. `aiImporterDesc::mFileExtensions`, which was forwarded to the UI via `BaseImporter::GetExtensionList()`.
2. `BaseImporter::CanRead()` when called with `checkSig == false`, which determines whether to actually use that importer.
Both were redundant and got out of sync repeatedly. I removed 2. completely and replaced it with 1., thereby syncing UI/import and shortening all `BaseImporter::CanRead()` implementations.

Further bugfixes:
- fixed glTF2 importer throwing exceptions when checking whether it can load a file
- removed `BaseImporter::SimpleExtensionCheck()` because it is no longer used and had a bug with case sensitivity

Since the `checkSig` parameter in `BaseImporter::CanRead()` is now useless, it can be removed completely. I’m not sure if this would break ABI compatiblity, so I’ll submit it with a later pull request.
2021-04-24 00:17:50 +02:00
Krishty f761dc72f4 style fix - initializing and assigning empty std::string properly
std::string s(""); s = ""; calls the copy constructor, which in turn calls strlen(), … assigning a default-constructed string generates fewer instructions and is therefore preferred.

With C++11 uniform initialization, you’d simply write s = { } instead.
2021-04-16 23:43:56 +02:00
Kim Kulling 9e8dbd0ca5 Update copyrights to 2021. 2021-02-28 12:17:54 +01:00
Kim Kulling fa0951012f closes https://github.com/assimp/assimp/issues/1044: fix envelope handling in lightintensity. 2020-11-11 20:32:55 +01:00
Malcolm Tyrrell b7c789da67 Stop concatenating std::strings. Use formatter. 2020-08-18 17:35:08 +01:00
Kim Kulling 6205af4efb replace NULL and avoid ai_assert with more than 2 tests. 2020-06-23 21:05:42 +02:00
Malcolm Tyrrell 434c5e3d37 More verbose logging 2020-05-15 17:29:49 +01:00
Kim Kulling 91fa9a102b closes https://github.com/assimp/assimp/issues/3181: fix typo for light type. 2020-05-03 12:17:32 +02:00
Kim Kulling f8e6512a63 Move format importer and exporter into its won folder. 2020-05-02 15:14:38 +02:00