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)
3 years ago
Rosen Penev
842ef05ee6
return nullptr instead of reset
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Rosen Penev
ce8691bba3
remove double libintl check
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Rosen Penev
d6e1b90a23
avoid reassignment
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 years ago
Rosen Penev
dd3b3d4ff4
add const
...
Signed-off-by: Rosen Penev <rosenp@gmail.com>
3 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>
3 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