3723 Commits (c0b663b7ea47aff9fcdd74533bd922ff70fc9bf1)

Author SHA1 Message Date
Alex Esseling 524b33e5df Canon MultiExposure tag added 3 years ago
Alex Esseling e2b1028973 Adding tag Canon AFMicroAdj 3 years ago
Alex Esseling 80d67b89c6 Adding Ambience Selection to tag list 3 years ago
Christoph Hasse 3ffe9938f8 Decoding of Canon HDRInfo tag 3 years ago
Alex Esseling b589ced049 update to tags 3 years ago
Alex Esseling 5f2dee4d40 update canonrf tags, new lenses 3 years ago
Alex Esseling 081f458bf1 update tags ID 3 years ago
Alex Esseling f41e7e59e3 second rund 3 years ago
Alex Esseling 23293064bb work on canon tags 3 years ago
Luis Díaz Más 23f089a1b6 Apply suggestions from code review
Co-authored-by: Kevin Backhouse <kevinbackhouse@github.com>
3 years ago
Luis Díaz Más f59a9abfe3 Remove unused PRINTUCS2 CMake option 3 years ago
Luis Díaz Más 432555eae8 Replace platform specific code with std::filesystem 3 years ago
Luis Díaz Más fdfb295cc4 windows: Trick to get UTF-8 encoded argv in main entry point
- Adapt exifprint to the new wmain strategy
- Delete have_unicode_path
- wmain does not work with MSYS & MinGW
- cmake: entry point via cmake instead of pragma
- cmake: better doc for MSVC flags
- Fix entry point in sample apps
- Adapt CMake code to work with MSVC & MinGW
3 years ago
Luis Díaz Más 7933ff401d Remove dead code around EXV_UNICODE_PATH 3 years ago
Kevin Backhouse 2a3dd2def9
Replace Value::toLong with Value::toInt64. (#2062)
* Replace Value::toLong with Value::toInt64.

* Fix compiler warning.

* Fix compile error.

* Fix declaration of canonEv

* Fix compiler warning.

* Fix compiler warning.

* Use int64_t for offsets in tiffcomposite_int.cpp

* Fix compiler warning.

* Fix compiler warnings.

* Fix compiler warning.

* Fix compiler warning.

* Fix compiler warning.

* Fix compiler warning.

* Remove static_cast<long int> in TagDetails initializer.
3 years ago
Sturmflut f2385a35aa
[nikon] Add Tokina ATX-i 11-20mm F2.8 CF lens (#2072)
* [nikon] Add Tokina ATX-i 11-20mm F2.8 CF lens

* [nikon] Add test for Tokina ATX-i 11-20mm F2.8 CF lens

Co-authored-by: Sturmflut <Simon Raffeiner>
Co-authored-by: Luis Díaz Más <piponazo@gmail.com>
3 years ago
Sturmflut eeb1e1d5f7 [nikon] Add Tokina AT-X 14-20 F2 PRO DX lens 3 years ago
Luis Díaz Más 1f07715141 Revert "Delete dead code"
This reverts commit 1d6bac61f2.
3 years ago
Luis Díaz Más b96091880a
Merge pull request #2061 from Exiv2/main_pvs
Adding static analysis with PVS-Studio
3 years ago
Luis Díaz Más ac9439e931
Merge pull request #2063 from Exiv2/main_iterators
Modernise code around iterators & smart pointers
3 years ago
Peter 46c329081f
Fix `exiv2`: verbose extract stdout mutli-file (#2068)
When using `exiv2 --verbose --extract` with stdout and multiple files, the output is concatenated together.
3 years ago
Luis Díaz Más 524fad42e1 Remove useless ops 3 years ago
Luis Díaz Más 93fe2086e4 Simplify TaskFactory 3 years ago
Luis Díaz Más f18d04cb8f Modern implementation of Singleton
With this implementation we also make the initialization of the Singleton instance thread-safe
3 years ago
Luis Díaz Más d20f014807 Simplify cloning in actions 3 years ago
Luis Díaz Más b67dee8a57 Fix build on linux 3 years ago
Luis Díaz Más 0f03e77634 Simplify code around UniquePtr(s) & use make_unique over new 3 years ago
Luis Díaz Más db4b63937e Add some TODO comments 3 years ago
Luis Díaz Más 9d8dd86945 Use auto to reduce verbosity around code dealing with iterators 3 years ago
Sturmflut 3b1d31e0af Add Sigma 12-24mm F4 DG HSM Art lens for Nikon 3 years ago
Luis Díaz Más a42501864a Recover some documentation strings 3 years ago
Luis Díaz Más c531c4abf5 More tests for IptcDataSets 3 years ago
Luis Díaz Más 476a254dfc Remove dead code
No way to obtain nullptr DataSet* when we are checking already the 2
only existing DataSets above.
3 years ago
Luis Díaz Más 9b40f948eb More tests 3 years ago
Luis Díaz Más 15e8c75a38 Delete unused IptcKey copy operator 3 years ago
Luis Díaz Más d8fcbc4562 Add new tests for Iptc classes 3 years ago
Luis Díaz Más df0b7c450d Hide public details 3 years ago
Luis Díaz Más 8f9a780375 clang-format on datasets.cpp 3 years ago
Luis Díaz Más 1d6bac61f2 Delete dead code 3 years ago
Luis Díaz Más 071e73fa4d Add many tests for datasets 3 years ago
Luis Díaz Más a94d648d05 Rest of tests to have 100% coverage in BMP class 3 years ago
Luis Diaz edf39e00dd Add new BMP tests 3 years ago
Josh Soref e56abfa10a
Spelling (#2067)
* spelling: accelerometer

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: address

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: anonymous

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: available

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: baby

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: buffer

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: build

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: builds

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: by inclusion

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: byte order

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: camera

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: command

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: consistency

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: constructor

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: continuous

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: continuously

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: correspond

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: decompression

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: dedicated

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: denominator

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: dependencies

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: detector

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: dlighting

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: dragging

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: duplicate

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: dynamic

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: empty

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: enable

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: endianness

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: examining

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: exceed

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: extension

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: fact

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: fails

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: fixed

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: fluorescent

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: focuspoint

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: focuspoints

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: from

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: happened

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: hierarchy

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: initiate

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: interesting

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: internal

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: javascript

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: language

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: libiconv

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: libraries

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: library

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: localization

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: macros

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: member

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: members

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: metadata

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: miscellaneous

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: mnemonic

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: modified

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: multiple

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: multithreaded

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: mysterious

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: photoshop

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: platforms

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: preliminary

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: priority

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: properties

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: qualifier

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: recognition

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: recognized

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: reentrancy

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: remaining

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: remotetest

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: requested

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: sensitivity

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: standardize

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: successful

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: such

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: tags

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: temperature

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: test

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: the

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: these

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: third

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: this

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: transparent

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: unable

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: underwater

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: uninterpreted

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: using

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: utc - coordinated universal time

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: which

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

* spelling: with

Signed-off-by: Josh Soref <jsoref@users.noreply.github.com>

Co-authored-by: Josh Soref <jsoref@users.noreply.github.com>
3 years ago
postscript-dev da320f35a7
Remove experimental code from pr#2053 3 years ago
postscript-dev 6c59437319
Add IPTC 2021.1 source comments for pr#2053 3 years ago
postscript-dev fe83240bb8
Update XMP IPTC tags to 2021.1 standard
Changes:
1. Add/update tags.
2. According to the standard, several tags in
   `Xmp.iptc.<property>` and `Xmp.iptcExt.<property>`, had been
   wrongly added, as they only exist as part of a struct used by a
   tag. The incorrect tags have been marked as deprecated in the
   label and description.
3. Update existing test with translated output.

Ref: [IPTC Photo Metadata Standard 2021.1](https://www.iptc.org/std/photometadata/specification/IPTC-PhotoMetadata-2021.1.html)
3 years ago
Luis Díaz Más b0318c36be
Upgrade C++ standard to c++17 (#2052)
* Enable C++17 and use new inline specifier for const variable members

* Silence deprecation warning on MSVC

* Disable samples by default

* improvements after review
3 years ago
Peter 629442df9d
Merge pull request #1929 from postscript-dev/fix_exiv2_-pR
Fix `exiv2 -pR` for Sony images (#1805)
3 years ago
Luis Díaz Más 825c0c72bc Check array index before inspecting it 4 years ago
Luis Díaz Más 240a72468e Clang-format in pngchunk_int.cpp 4 years ago
Luis Díaz Más ec21f65dca Replace magicValue with constant variable 4 years ago
Luis Díaz Más ceae86899d Initialize uninitialized variables 4 years ago
Luis Díaz Más b96f5af037 Remove dead code 4 years ago
Luis Díaz Más 061df50cea keyTXTChunk improvement 4 years ago
Luis Diaz c19425f6a4 Add unit tests for PngChunk::keyTXTChunk 4 years ago
Luis Diaz c898f56ab2 cmake: Add missing source file 4 years ago
Luis Díaz Más 813566526c
Revisiting cmake code for generating coverage reports (#2047)
* cmake: better usage of gcovr for coverage reports

* Add test for FileIo::setPath

* Remove useless seek() overload

* Add missing override specifiers

* ignore .vs folder

* Small refactors in BasicIo implementations

* Remove duplicated doxygen doc

* Refactor & add tests for MemIO

* Fix compilation warnings on windows
4 years ago
Kevin Backhouse a094dde1de
Merge pull request #2040 from kevinbackhouse/TiffEntryBaseStorage
Use std::shared_ptr for storage in TiffEntryBase
4 years ago
Facundo b52b6db39f
Output of -PV was not suitable for inputting to -m-, key was missing. (#1970)
* Output of -PV was not suitable for inputting to -m-, key was missing.

Fix #1969

* Make V flag to -P also print the type

This makes -PV work also for non-built-in tags (of which their type is
not known by exiv2).

* Adjust man to accomodate for the V flag change
4 years ago
Kevin Backhouse 9268279b47
Add comments. 4 years ago
Kevin Backhouse b6a4fd1c67
Add storage parameter to setData. 4 years ago
Kevin Backhouse 29f7d0ccf0
Remove DataBuf::release() which is no longer used. 4 years ago
Kevin Backhouse 9f3240c91c
Delete TiffEntryBase::isMalloced_ field and use a std::shared_ptr instead. 4 years ago
Kevin Backhouse 29cc981180
Merge pull request #2028 from kevinbackhouse/FixIssue2027
Use memmove in TiffEncoder::updateDirEntry
4 years ago
Robin Mills 13a2cf336d
fix_1416_iptc_DateCreated (#1547)
* fix_1416_iptc_DateCreated

* Fix unit tests

* DateValue:read 2nd iteration on pre-condition

* test with ISO_8601 date format

* Use std::regex for ISO 8601 basic & extended date formats

* Use std::regex for ISO 8601 basic & extended time formats

* Add more tests & notes for DateValue & TimeValue

* Comment tests using local calendar times

* DateValue::write also adds padding to year field

Co-authored-by: Luis Díaz Más <piponazo@gmail.com>
4 years ago
Kevin Backhouse e34eacc467
Use memmove, rather than memcpy, because memory regions might overlap. 4 years ago
Miloš Komarčević fd8447129c
Add more DNG 1.6 tags (#2023)
* Add more DNG 1.6 tags

* Update CinemaDNG, add more spec links
4 years ago
Kevin Backhouse 65fad9db0e
Merge pull request #2007 from kevinbackhouse/FixIssue2006
Fix integer overflow in PanasonicMakerNote::printAccelerometer
4 years ago
Kevin Backhouse aebb3fb2c0
Merge pull request #2015 from kevinbackhouse/SonyPreviewUndefined
Treat Exif.Sony1.PreviewImage as undefined tag
4 years ago
Kevin Backhouse 0a1fa497d5
Merge pull request #1999 from jim-easterbrook/bug_1998
Restore modified tags after TZ manipulation
4 years ago
Kevin Backhouse a1ad29edf3
Treat Exif.Sony1.PreviewImage as undefined tag. 4 years ago
Kevin Backhouse 35f48ae5c9
Credit to OSS-Fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=41438
Replace weird sign-conversion code with a simple static_cast.
4 years ago
Kevin Backhouse 6758e7288d
Merge branch 'main' into fix_exiv2_-pR 4 years ago
Peter 797f86c226
Fix minor whitespace formatting
Co-authored-by: Kevin Backhouse <kevinbackhouse@github.com>
4 years ago
postscript-dev 9c294ef4fd
Fix exiv2: verbose extract to stdout (see #1934)
Fix ignores `--verbose` when extracting to stdout.
4 years ago
Jim Easterbrook 02ce7e9aff Restore modified tags after TZ manipulation
This ensures that Xmp date/times that have been set by the user aren't
over written by the TZ restoration efforts. This fixes bug #1998
4 years ago
Kevin Backhouse fde8ed07b3
Merge pull request #1967 from kevinbackhouse/ReadOrThrow
Add readOrThrow and seekOrThrow to BasicIo
4 years ago
Peter 1ae9f42cd8
Add camera models for NikonFl3 makernotes group (#1994)
* Add camera models for NikonFl3

* Python test for new NikonFl3 camera models
4 years ago
postscript-dev 562b10f2c7
Fix Exif.NikonFl7.FlashCompensation 4 years ago
postscript-dev bd676bedc6
Fix `exiv2 -pR` for Sony images (#1805)
`exiv2 -pR` failed to process Sony makernotes. Fix checks if
makernotes header has Sony string, then uses correct offset.

Fix supplied by @clanmills
4 years ago
postscript-dev 277b1875f7
Fix Exif.NikonFl7.FlashGroupBCControlData output 4 years ago
postscript-dev b3ca98c1e7
Fix Exif.NikonFl7.FlashCompensation pretty print 4 years ago
postscript-dev 8ebf10f921
Fix condition in Exif.NikonFl7.FlashCompensation 4 years ago
postscript-dev f23d965643
Add limits check: Exif.NikonFl7.FlashCompensation 4 years ago
postscript-dev f0f3c7e8a2
Fix compile issues for NikonFl7 makernotes group
+ Fix fuzzing CI errors of `exp2` and `round` not being in `std` by adding
  `#include <cmath>`
+ Fix Windows CI warning C4305 by explicitly defining value as a float
4 years ago
postscript-dev eb134d1946
Add testing for NikonFl7 makernotes group 4 years ago
Kevin Backhouse ab90d430c7
Merge pull request #1979 from postscript-dev/fix_exiv2_sample_thumb_stdout
Add exiv2 extract thumb to stdout (#1934)
4 years ago
Kevin Backhouse 68473d9d10
Remove static functions readOrThrow and seekOrThrow. 4 years ago
Kevin Backhouse 44542a9f94
Add readOrThrow and seekOrThrow to BasicIo. 4 years ago
Miloš Komarčević 8b7d8729b7 Expose unsupported CR3 previews as binary 4 years ago
postscript-dev 31a2467a61
Add exiv2 extract thumb to stdout (#1934): src 4 years ago
Miloš Komarčević 40e5021577 Limit CR3 previews to JPEG only 4 years ago
Kevin Backhouse 0ae85cc4ca
Merge pull request #1974 from dhoulder/skip-isobmff-boxes
Performance boost: don't read boxes we're not interested in
4 years ago
mergify[bot] 2d80891837
Only include expat.h when XMP is enabled. (#1973)
(cherry picked from commit 03cc59122249e79c5a72982b25dad88f4c2803d6)

Co-authored-by: Kevin Backhouse <kevinbackhouse@github.com>
4 years ago
David Houlder 4e587fa931 Performance boost: don't read boxes we're not interested in 4 years ago
David Houlder b385f2db1c
Canon cr3 previews (#1958)
* Extract THMB and PRVW images from Canon CR3 file

* Added test for Canon CR3 preview extraction.

Added test data Canon-R6-pruned.CR3 (first 492016 bytes of https://raw.pixls.us/getfile.php/4659/nice/Canon%20-%20Canon%20EOS%20R6%20-%203:2.CR3).

See https://github.com/Exiv2/exiv2/issues/1893

* Fixed format specifier

* Update src/bmffimage.cpp

Co-authored-by: Miloš Komarčević <4973094+kmilos@users.noreply.github.com>

* Update src/bmffimage.cpp

Co-authored-by: Miloš Komarčević <4973094+kmilos@users.noreply.github.com>

* retrigger checks

Co-authored-by: Miloš Komarčević <4973094+kmilos@users.noreply.github.com>
4 years ago
Kevin Backhouse 71744d5f7f
Merge pull request #1944 from Exiv2/nikon_colorbalance
Extending Nikon3.ColorBalance version coverage
4 years ago
Kevin Backhouse 81cfc162c1
Use std::move to transfer ownership of DataBufs. 4 years ago
Kevin Backhouse 4901c5dba6
Merge pull request #1930 from kevinbackhouse/CiffComponent-pData-ownership
Clarify ownership model of CiffComponent::pData_
4 years ago
Kevin Backhouse 3b0d827047
More =default changes. 4 years ago