4434 Commits (16a19216a2d22e2a86a262b1f1f99a9366d26f2b)

Author SHA1 Message Date
Mohamed Ali Chebbi 7ab4554c41 Update src/jpgimage.cpp
Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
2 years ago
Mohamed Ali Chebbi a530cf9d03 Current master fails with image #2565: segmentation fault when trying to access outofband offest: check all locations 2 years ago
Mohamed Ali Chebbi e403f3a4c4 Current master fails with image #2565: segmentation fault when trying to access outofband offest 2 years ago
Mohamed Ali Chebbi c4e514cff8 Current master fails with image #2565 2 years ago
Rosen Penev 498f4ce273 simplify loops
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev df91578250 clang-tidy: replace defines with enum
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 2526dcf5a1 const ref to ref conversions 2 years ago
Rosen Penev 6fd143d6a4 sonarlint cleanups
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 25189ef1e6 remove some unused defines.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev d50d9527b5 convert manual loop to find 2 years ago
Gribouilleuse bd1e3c9acb
Uppercase Pentax to PENTAX at lines 819 to 822 2 years ago
Gribouilleuse 4074873146 Addition of 4 lenses Pentax
Addition of 4 lenses Pentax :
HD Pentax-D FA* 50mm F1.4 SDM AW
HD Pentax-D FA 70-210mm F4 ED SDM WR
HD Pentax-D FA* 85mm F1.4 SDM AW
HD Pentax-D FA 21mm F2.4 ED Limited DC WR
2 years ago
Miloš Komarčević 0db191257d Support for parsing DCP files 2 years ago
Rosen Penev c8c289613d remove EXIV2API from src
Already declared in include

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Miloš Komarčević fbf6100d3a Update Sony file format table 2 years ago
Rosen Penev 9322f137aa don't compile WIN32 stuff when iconv is present
MinGW has iconv, so this block of code can go away.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 3633f8d2c2 clang-tidy: remove const from data members
Found with cppcoreguidelines-avoid-const-or-ref-data-members

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 233f404ac7 direct initialize some structs
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Miloš Komarčević 0dd06894b3 makernotes: workaround for Olympus header corruption 2 years ago
Miloš Komarčević caddbf663d Fix shared object versioning 2 years ago
Miloš Komarčević 3403dabec2 Add Sony ZV-E1 ID 2 years ago
Miloš Komarčević 2f01f70eaf Add some more Nikon Z lenses 2 years ago
Rosen Penev 0fa22ed55d remove codecvt
Deprecated in C++17

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 2e33dad1d1 easyaccess const changes
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 357d970425 get rid of EXV_CALL_MEMBER_FN
std::invoke can be used.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 05f2731d34 std::array removals
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
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
Mohamed Ali Chebbi 0f715288e7 add test/data for video support : delete riff HeaderReader 2 years ago
Mohamed Ali Chebbi 19f8b437c3 add test/data for video support : add enforce exceptions 2 years ago
Mohamed Ali Chebbi 340b46623d add test/data for video support : Fix codeQL warnings 2 years ago
Rosen Penev 0d353ac5f3 work around windows.h min/max macros
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev b8d4b9c6ea remove manual math
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Mohamed Ali Chebbi d288617759 add test/data for video support : Fix test issue 2 years ago
Mohamed Ali Chebbi 7ea32025d6 add test/data for video support : Format issue 2 years ago
Mohamed Ali Chebbi f9b94d3172 add test/data for video support : windows compilation issue 2 years ago
Mohamed Ali Chebbi f5e731cd38 add test/data for video support : fix ci issue 2 years ago
Mohamed Ali Chebbi d2fa07d559 Format issue 2 years ago
Mohamed Ali Chebbi a36e4dd1e8 Merge branch 'main' into TestVideoData 2 years ago
Mohamed Ali Chebbi cb7a48f84a Rework Asf and Riff formats ; add test/data for video support 2 years ago
Rosen Penev d874fc4dd8 use __has_include
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 376638259d namespace enforce.hpp functions to Internal
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 77834807c2 add support for gcc and clang 7
Uses std::experimental::filesystem

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev e19ec79f98 safe_op: C++17 improvements
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 54dd2b54a5 clang-tidy: add const to parameter
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 2a690a135b use gnu_printf
Fixes warning under MinGW:

warning: unknown conversion type character 'z' in format [-Wformat=]

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev a7a9835431 more std::find to Exiv2::find
The latter is simpler.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 7fd7ee62a3 std::find to find template
std::find in C++20 can use ranges, which is equivalent here. Less error
prone.

Namespace is properly to avoid any conflicts with std::find or others

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Miloš Komarčević 0075ff631c
Merge pull request #2471 from Exiv2/pc_improve
Improve pkg-config file generation
2 years ago
Rosen Penev 34318260ea fix C++20 deprecation warning
Capturing this with = is deprecated.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Miloš Komarčević 15f0119707 Switch to CMake provided FindIconv 2 years ago
Miloš Komarčević 63f9926378 Add static linkages to pkg-config file 2 years ago
Rosen Penev 6976aab5bd replace substr with resize/pop_back
Shorter and more efficient.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev dd445e6c8d use find instead of count
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 0169739a4e add missing const
Found with cppcheck

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev aefd901bef fix copy constructors
clang-tidy couldn't transform these because of missing members

Found with cppcheck.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Mohamed Ali Chebbi bbb3f5afa8 add test/data for video support : gix issue in riff video and reference data test 2 years ago
Mohamed Ali Chebbi 82ea6bef52 add test/data for video support : make asfvideo more readable and fix some issues 2 years ago
Mohamed Ali Chebbi 5deee73141
Merge branch 'Exiv2:main' into TestVideoData 2 years ago
Kevin Backhouse b55a0a564a
Silence unused parameter warning when EXV_ENABLE_INIH is undefined. 2 years ago
Kevin Backhouse 43c9ec0f50
Add EXIV2_ENABLE_INIH flag to enable building without libinih. 2 years ago
Mohamed Ali Chebbi 1bd52de0a9 add test/data for video support : delete filename (unuseful) 2 years ago
Rosen Penev 842ef05ee6 return nullptr instead of reset
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev ce8691bba3 remove double libintl check
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev d6e1b90a23 avoid reassignment
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev dd3b3d4ff4 add const
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Rosen Penev 3e97850e97 manual default member init
clang-tidy suggests this but fails to apply it.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2 years ago
Mohamed Ali Chebbi 1c764358bb
Encapsulate video support with compilation variable EXV_ENABLE_VIDEO (#2448)
* Encapsulate video support with compilation variable EXV_ENABLE_VIDEO

* Encapsulate video support with compilation variable EXV_ENABLE_VIDEO: add variable to unit test files

* Encapsulate video support with compilation variable EXV_ENABLE_VIDEO: encapsulate in makefile

* Encapsulate video support with compilation variable EXV_ENABLE_VIDEO: fix PR windows matrix

* Encapsulate video support with compilation variable EXV_ENABLE_VIDEO: activate only for concerned CI tests

* Encapsulate video support with compilation variable EXV_ENABLE_VIDEO: desable for linux release

* Encapsulate video support with compilation variable EXV_ENABLE_VIDEO: add to Fuzz PR
3 years ago
Kevin Backhouse 346e11493f
Merge pull request #2443 from kevinbackhouse/inih-from-library3
Remove libinih from codebase and add it as a dependency instead
3 years ago
Rosen Penev bb311ba728 clang-tidy on Windows
Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Rosen Penev f981c51eea get rid of -fanalyzer memory leaks
Don't use make_shared inside a function. Instead, change constructor to
value to have std::move.

Also move shared_ptrs everywhere. It's fairly expensive to copy.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Rosen Penev d458bf2540 clang-tidy: apply to newly merged stuff
Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Mohamed Ali Chebbi 7fac35e19a
1748 Video Support in V1.0: part 3/3 : support Asfvideo (#2416)
* 1748 Video Support in V1.0: part 3/3 : support AsfVideo

* 1748 Video Support in V1.0: part 3/3 : support AsfVideo : fix Mac Os error compile

* 1748 Video Support in V1.0: part 3/3 : support AsfVideo : delete unuseful warnings

* code review and clean up some code
3 years ago
Rosen Penev f145fae33b replace any_of with find
Removes need for lambda.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Rosen Penev 304b13c271 use find instead of std::find_if
There's already an operator==

Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Rosen Penev ff0491a102 clang-tidy: use make_unique
Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Rosen Penev ce8920a0ea clang-tidy: various fixes
Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Mohamed Ali Chebbi d755fc18b5
1748 Video Support in V1.0: part 2/3 : support Riffvideo (#2415)
* 1748 Video Support in V1.0: part 2/3 : support RiffVideo

* limit the buffer_size

* Update exiv2.md

Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>

* Code Review and cleanUp code

* Update riffvideo.hpp

Co-authored-by: Ben McCann <322311+benmccann@users.noreply.github.com>
3 years ago
Mohamed Ali Chebbi 1280f3b849
1748 Video Support in V1.0: part 1/3 : support MatroskaViedo (#2413)
* 1748 Video Support in V1.0: part 1/3 : support MatroskaViedo

* Simplify the code of matroskavideo

* protect conevrtuint64 method from overflow

* use size_t instead of uint64_t
3 years ago
norbertwg 9ca161d1e5
Rename resp. remove duplicate exif keys (#2434)
* rename resp. remove duplicate Exif keys

Duplicate key names with different tag are renamed
Following most of the existing entries, the key with higher tag number
is renamed to ...2.
Exceptions: Canon.CustomFunctions,Olympus.ImageHeight,Olympus.ImageWidth
In the available images samples only the key with higher tag number is
used, so changing the other has less impact on test data and also on
users.
Canon.WhiteBalanceTable with tag 0x00a4 was listed twice, once with
description "SharpnessTable". The entry with the deviating description
is deleted.

* clang format

* adjust test output files (after merge with Exiv2)

* add Exif.NikonLd4.FocusDistance to EasyAccess API

* clang format
3 years ago
Kevin Backhouse ba258cb1ae
cmake fatal error if inih library is not found. 3 years ago
Kevin Backhouse a4164ce866
Remove libinih from codebase and add it as a dependency instead. 3 years ago
norbertwg 8d8ac99be0 Lens Recognition HD PENTAX-DA* 11-18mm F2.8 ED DC AW 3 years ago
Miloš Komarčević b52ade814b Prefer writing PNG eXIf chunk 3 years ago
Kevin Backhouse 2739d90073
Credit to OSS-Fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=52767
Add wrapper class to automatically call BrotliDecoderDestroyInstance() on exit.
3 years ago
Kevin Backhouse 9d044d30b1
Use Safe::add 3 years ago
Kevin Backhouse 292082df6f
Add break to loop to fix issue 2423, plus some other cleanups. 3 years ago
Rosen Penev 67df85135d early exit
less indentation

Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Miloš Komarčević cf15cc52e0
Merge pull request #2417 from Exiv2/kmilos-patch-1
Add Canon R6m2 ID
3 years ago
norbertwg 74720d8044
Remove duplicate tag info entries fujifilm (#2412)
* remove duplicate Fuijifilm TagInfo entries

* test data added for some Fujifilm tags

* remove unknown tag 0x1200

* fix typo: SzeneRecognition to SceneRecognition
3 years ago
Peter 83d7915d00
Update `Exif.SonyMisc3c.*` and `Exif.Sony(1|2).SonyModelID` (#2420)
* Update `Exif.SonyMisc3c group`

* Update `Exif.Sony(1|2).SonyModelID`
3 years ago
Miloš Komarčević 5949ec9293
Add Canon R6m2 ID 3 years ago
Peter 1f364be1fa
Fix seg fault when using `iconv_open()` (#2403)
* Fix seg fault when using `iconv_open()`

- Fix failure condition for `iconv_open()`
- Add new exception when failing to change the text encoding of an
Exif comment

* Add testing for `iconv_open()` seg fault bug

* Fix Python test by changing log level
3 years ago
Kevin Backhouse ddd7ccf722 Use std::is_signed and std::enable_if. 3 years ago
Kevin Backhouse 335e13251e Add #error so the build fails if mmap isn't supported. 3 years ago
Kevin Backhouse 5cabd97373 Fix issue 2380: bug in (unused) non-mmap code. 3 years ago
Kevin Backhouse abd817d181 Use size_t for sizes and offsets. 3 years ago
Kevin Backhouse c96bc47509 Change return type of getFileLength() to int64_t. 3 years ago
Kevin Backhouse d599d36f8b
Merge pull request #2394 from kevinbackhouse/fix-issue-2393
stop looping when eof is hit
3 years ago
Rosen Penev 28d1880176 replace find/rfind with startsWith
Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Kevin Backhouse 771ead8732
Credit to OSS-Fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=52731
Stop looping when eof is hit.
3 years ago
Miloš Komarčević c077a06ada Add more Canon RF lenses and camera IDs 3 years ago