4308 Commits (360c6cd41f15baf6d999da12e1fc077180f5da91)

Author SHA1 Message Date
Rosen Penev 513b0e8bbd constexpr some constructors
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 0aed79ff57 remove several constructors
Just direct initialize

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 024e026bbb clang: small fixes
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 9ae339d39f clang: fix various documentation errors
Found with -Wdocumentation

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 22b12012a6 more SonarLint cleanups
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev d29001f2a4 clang-tidy: don't use non const refs
Found with: google-runtime-references

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 01aab49f6f don't assign an fs::path to a string
Seems to trip up MemorySanitizer on ARM32.

Also applied various simplifications to the code using std::filesystem

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 763cfaf2b4 MSVC warning fixes
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 1f3d1f066f extern to static
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev ca95edc6bd random fixes
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev d6c1059485 gcc: ifdef
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 0a8fedf249 gcc: noexcept
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 1f21164085 gcc: remove redundant struct
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 9a1f37ecbe get rid of Key() move operations
Because of Impl, there's no way this can work properly.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev e854d93841 replace enable_if with if constexpr
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 2fd523873b remove MSVC hacks
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev dc196e729e remove old MSVC workaround
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 4a26eba0d9 fix compilation under FreeBSD
sys headers must come before libprocstat

meson is missing a libprocstat dependency. iconv is also broken with
meson and freebsd.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Kevin Backhouse 5d11208aa0
Minor refactorings to stop UBSAN from complaining. 2 years ago
Rosen Penev e2bf207477 add various moves
More efficient

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 518c52c2af
Merge pull request #2544 from kevinbackhouse/fix-matroska-null-pointer-deref
Check that the pointer isn't NULL
2 years ago
Kevin Backhouse e0ac920c87
Suggestion from @neheb 2 years ago
Kevin Backhouse 244799f480 Convert tail-recursion to loop to avoid stack exhaustion. 2 years ago
Kevin Backhouse a783320520 Use enforce, not assert, to avoid crash. 2 years ago
Kevin Backhouse 65259d8936
Check that the pointer isn't NULL. 2 years ago
Rosen Penev ff7bfb3798
Merge pull request #2422 from norbertwg/interpretation-for-Exif.Photo.LensSpecification
Interpretation for Exif.Photo.LensSpecification
2 years ago
norbertwg 10bbe3f4ae to avoid compiler warnings: 0.0 changed to 0.0f 2 years ago
norbertwg db2f4ee377 interpretation for ExifPhoto.LensSpecification
printLensSpecification is copied from old Nikon3MakerNote::print0x0084
call of Nikon3MakerNote::print0x0084 replaced by printLensSpecification

add two lens tags to EasyAccess API
Exif.Photo.LensSpecification and Exif.Nikon3.Lens

handling of zero; more precision for focal length

silence compiler warnings
2 years ago
Kevin Backhouse 14e26b5abd
Fix integer overflow which enables enforce to be bypassed. 2 years ago
Kevin Backhouse b5bf079444
Fix long-running loop 2 years ago
Rosen Penev 725875497b SonarLint cleanups 2 years ago
Mohamed Ali Chebbi 8b96ebc6b4 asfvideo fuzz issue : nb_headers should not exceed the max value of uint32 2 years ago
Rosen Penev b9d94e61fe coverity: remove dead code
Found with: CID 1521533
Unsigned compared against 0 (NO_EFFECT)

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 03d34bee04 get rid of convertToUint64
same as getULongLong

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev afbd9e7a76 coverity: add move operations
CID 1521171: Missing move assignment operator

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 839c03fe37 use find()
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 3fe6d78014 Remove some constructors
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 2205a14a06 clang-tidy: default init various members
Found with cppcoreguidelines-pro-type-member-init

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev dd25d9999b direct init structs
No need to deal with individual members

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 48caa32017 close socket before return
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 393150c0cd cast expression
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev f2c879333e fix off by 1 error
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Kevin Backhouse 230fbaf421 Use toInt64() for hours and minutes, because they should be integer valued. 2 years ago
Kevin Backhouse c20ee1a7f5 Use double type to improve floating point accuracy. 2 years ago
Rosen Penev 9f21b78311 add contains function
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 28358cd209 template second parameter for startsWith
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev d7bf72634e use std::replace
shorter

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 0d50e444f2 use count_if
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 2d1691c1e2 replace array with vector
Using the constructor is one less line. Plus it seems to fix bugs in
Apple's clang.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 63b32ba3fb fix wrong snprintf format
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 61e5aefcc4 explicit conversion
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 75dae3fb96 replace localtime with _s/_r variant
cppcheck warns on localtime which is not necessarily threadsafe.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 625a2b8167 fix memory leak
Found with cppcheck.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 968a546dcb use upper() function
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 5eebbbcbfb make conversions explicit
Found with MSVC's C4244

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 31165b6a01 remove base constructor
Maybe works now

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Mohamed Ali Chebbi c555a70127 fuzz issue : add debug message for futur use 2 years ago
Mohamed Ali Chebbi 03fcc6cad2 fuzz issue : check that block is not corrupted before decoding 2 years ago
Rosen Penev 5b1bc2ef6d clang-tidy: no else after return
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 4e3a63d9b7 replace std::pair and tuple with C structs
fixes internal MSVC libc++ warnings

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 36e848d4fe clang-tidy: replace memcpy with copy_n
Found with bugprone-not-null-terminated-result

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 7f5430a7d4 use lower()
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 35b6780d02 clang-tidy: don't assign in if
Found with bugprone-assignment-in-if-condition

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev d1a2cd0b76 clang-tidy: cast initial variable
Fixes: bugprone-integer-division

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev e188df1e14 fix implicit conversion
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev b3ff42f2d5 use if constexpr
Suggested by MSVC.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 629f94eea3 unreachable code
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev d2ddf228ad replace switch with if/return
Fixes warning C4702: unreachable code

No other way to make all compilers gappy.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev dde8765a49 don't assign in while
Fixes MSVC's warning C4706: assignment within conditional expression

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev b324f80443 use numeric limits instead of -1
Fixes MSVC warning.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev a10c08ba1d swap variables
These are the wrong way around. MSVC warns with /W4.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Mohamed Ali Chebbi b8b4a041a1 compilation issue on Windows 2 years ago
Mohamed Ali Chebbi 51ef600fe6 compilation issue on Mac OS 2 2 years ago
Mohamed Ali Chebbi c7aec66195 compilation issue on Mac OS 2 years ago
Mohamed Ali Chebbi bed8d3d93c rework of aspectRatio calculation for all video formats and rework the decoding of asf tags 2 years ago
Rosen Penev dee0598edf
clang-tidy fixes for recent stuff
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev f21b2a2170
std to Exiv2 find
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev b665574634
simplify loop
Just use upper

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 33e5ef5ffd
remove constructors
Just direct initialize

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Mohamed Ali Chebbi 6690e2e8f3
Merge branch 'Exiv2:main' into TestVideoData 2 years ago
Miloš Komarčević 13e6671de2
Update some Canon IDs (#2501) 2 years ago
Rosen Penev be387a60c3 add missing &
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 0f30198d9b remove mmap/munmap checks
Just check the header

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 2ddf00e7a2 use EXV_ICONV_CONST
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Mohamed Ali Chebbi 32576a3edf add test/data for video support : rework readStringWcharTag method 2 2 years ago
Mohamed Ali Chebbi 579cae8e77 add test/data for video support : rework readStringWcharTag method 2 years ago
Mohamed Ali Chebbi e388ba523f add test/data for video support : rename Xmp.video.Duration to Xmp.video.duration 2 years ago
Mohamed Ali Chebbi 3847a09359
Merge branch 'main' into TestVideoData 2 years ago
Mohamed Ali Chebbi f22db635b0 Merge branch 'TestVideoData' of github.com:mohamedchebbii/exiv2 into TestVideoData 2 years ago
Mohamed Ali Chebbi db14131262 add test/data for video support : enhance Debug messages 2 years ago
Rosen Penev e309680a86 remove deleted members from static classes
This is a holdover from C++98. No need anymore

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 6a34d9e57d add missing member functions
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev ddb42eb159 remove some overriden defaulted destructors
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev d248e1a2af more delete removals
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev e7977554e2 default initializations
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 7aaf6414f2 move initialization up
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Mohamed Ali Chebbi 2b2173aafe
Merge branch 'Exiv2:main' into TestVideoData 2 years ago
Mohamed Ali Chebbi ada14ae292 add test/data for video support : use readStraingTag instead of read 2 years ago
Mohamed Ali Chebbi bf6546ee82 add test/data for video support : restore Riff HeaderReader and reserve addtional byte in readStraingTag 2 years ago
Mohamed Ali Chebbi acd71894b2 add test/data for video support : delete unused parameter from readList method 2 years ago