333 Commits (aefd901befd375da7fdedfe031e818fcbc63dd67)

Author SHA1 Message Date
Kevin Backhouse 9a133856ba
Regression test for https://github.com/Exiv2/exiv2/issues/2427 3 years ago
Kevin Backhouse 7d9deba071
Regression test for https://github.com/Exiv2/exiv2/issues/2423 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 951247edcc
Regression test for https://github.com/Exiv2/exiv2/issues/2393 3 years ago
Kevin Backhouse 62705a6615
Use Safe::add() in tiffvisitor_int.cpp 3 years ago
Kevin Backhouse f3f66c56db Regression test for https://github.com/Exiv2/exiv2/issues/2385 3 years ago
Kevin Backhouse baf1969ec7
Regression test for https://github.com/Exiv2/exiv2/issues/2383 3 years ago
Kevin Backhouse 459910c36a
Credit to OSS-Fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=51751
Credit to OSS-Fuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=52053
Avoid null pointer deref and heap buffer overflow.
3 years ago
Kevin Backhouse b1e2cc6129 Regression test for https://github.com/Exiv2/exiv2/issues/2352 3 years ago
Kevin Backhouse a94b02063a Regression test for https://github.com/Exiv2/exiv2/issues/2366 3 years ago
Peter 9dc34ad39c
Update Sony(1|2) tags (#2323)
* Update Sony(1|2) group (minor Minolta changes)

Transcribe all tags (except for `LensID`) from main ExifTool Sony
group into Exiv2.
Changes include:
- Rename `ColorReproduction` -> `CreativeStyle` and
  `LongExposureNoiseReduction` -> `FocusMode3` to reflect use.
- Rename `0x*` tagnames to equivalent ExifTool tags (e.g.,
  `0x2006` -> `Sharpness`).
- Remove tag entries that are Groups (e.g., `ShotInfo`).
- Separate some common Sony/Minolta data as the camera types use
  different values (e.g., `Quality`)
- Additional `exiv2-Sony*.exv` test files come from ExifTool Sony
  samples (https://exiftool.org/Sony.tar.gz).

ExifTool Sony tags sources:
https://www.exiftool.org/TagNames/Sony.html
1e17485cbb/lib/Image/ExifTool/Sony.pm

* Improve coverage of `Sony(1|2)` group

* Fix clang compilation on macOS

* Fix github-code-scanning warnings

* Fix minor `Exif.Sony(1|2)` problems

* Fix tests and update `Sony(1|2)` group coverage

* Fix testing

* Minor fixes and regenerate Regression data

* Update Sony tags with `getModel()`

Make finding the Sony model more resilient by also using
`SonyModelID`.

* Fix `Exif.Sony(1|2).AFPointsUsed` type

* Improve `Exif.Sony(1|2).*` coverage

* Fix types in Sony func `getFocusMode()`

* Update Regression tests for `Sony(1|2)`

* Minor fixes to `Sony(1|2)` tags

* Update `Sony(1|2)` tag coverage

* Improve `Sony(1|2)` tag coverage

* Update easyaccess with `Exif.Sony(1|2)` tags

* Update `SonyModelID` array comment

* Add Sony `LensSpec` tag to easyaccess

* Update `Sony(1|2)` label/descriptions

* Update `int` to `size_t` (credit:@kevinbackhouse)

* Fix Windows build warning in `src/tags_int.hpp`
3 years ago
Kevin Backhouse 640b0fbf5d
Merge pull request #2346 from kevinbackhouse/fix-issue-2345
Fix buffer overflow in QuickTimeVideo::tagDecoder
3 years ago
Kevin Backhouse bf151a17a3
Don't allow zero width/height in WebPImage::inject_VP8X 3 years ago
Kevin Backhouse 760a6c54f9
Regression test for https://github.com/Exiv2/exiv2/issues/2345 3 years ago
Christoph Hasse 6cc44ae8b1 test(quicktimevideo) add poc for #2340 3 years ago
Kevin Backhouse d15fdee91e Regression test for https://github.com/Exiv2/exiv2/issues/2339 3 years ago
Peter ccebe7936e
Update Nikon flash tags (#2274) 3 years ago
Kevin Backhouse df59a6bb67
Regression test for https://github.com/Exiv2/exiv2/issues/2320 3 years ago
Viktor Schneider 73a1a0ec21 Merge remote-tracking branch 'origin' 3 years ago
Peter 94f8889cd3
Update olympus tags (#2246) (#2249)
Update translation output of `Exif.OlympusCs.ArtFilter`/`Exif.OlympusCs.MagicFilter`, `Exif.OlympusCs.ImageStabilization` and `Exif.OlympusCs.WhiteBalance` tags.

Fix `Exif.OlympusCs.ImageStabilization` type from `unsignedShort` to `unsignedLong`.

Closes #2246.

Ref: Exiftool Olympus tags and Olympus E-M10 Mark II instuction manual.
3 years ago
Kevin Backhouse a608138f5f
Simplify the iptcDataSegs logic 3 years ago
Kevin Backhouse 6b5453c9d5
Regression test for https://github.com/Exiv2/exiv2/issues/2268 3 years ago
Kevin Backhouse 7ebf2a184e
Merge pull request #2231 from kevinbackhouse/exiv2app-types-cleanup
types cleanup exiv2app.hpp
3 years ago
Kevin Backhouse 1ceddb2962
Replace long with int64_t in exiv2app.hpp 3 years ago
Miloš Komarčević 4f9bed24e1 Add more JXL tests 3 years ago
Viktor Schneider 2c41063984 update test cases to respect new fujifilm tags 3 years ago
Luis Díaz Más c3d0100d48 Fixing bad usages of DataBuf (when it is empty) 3 years ago
Luis Diaz 047f6b733e Change logic to determine if segment has size
Note that the failing tests that had to be adapted were bad formed files
from FUZZERs. We should not consider invalid markers like 0x00 or 0x52
but only undefined APPn markers.
3 years ago
Miloš Komarčević 44c3aab2dc Add OM System MakerNote test
(manually adapted from 18e2b9a6bb305854bfe05d0275425ad3699ea757)
3 years ago
Luis Díaz Más 2b9f6ccf6b Adapt tests to changes in JP2 3 years ago
Luis Díaz Más b9f9d041ea Several transformations on DataBuf + migration to size_t
- Provide begin/end iterators to DataBuf and simplify code
- Adapt test output after last changes
- Replacing long by size_t in value.hpp
- Use size_t in some Photoshop functions
- Remove some static_casts
3 years ago
Luis Díaz Más f1e04ee866 Replace DataBuf internal buffer with std::vector 3 years ago
Michael Allman a3e2410b88 Print value of ContrastDetectAFInFocus as Yes/No. Change internal
selection logic for NikonAf2* from tag data length to group version
3 years ago
Michael Allman 9541a89b13 Make Exif.NikonAf2.ContrastDetectAFInFocus and
Exif.NikonAf22.ContrastDetectAFInFocus byte types
3 years ago
Robin Mills ad424dfb6a Fixing test following Christoph's Review. (Christoph is one clever Mother!) 3 years ago
Robin Mills 800ed8959f Rewire Canon MakerNote 0x0026 (AFInfo) to allow TiffDecoder::decodeCanonAFInfo to handle this tag.
Minor changes to test script.
Cosmetic code changes.
3 years ago
Robin Mills e1889e39bd Fixing tests. test_issue_981.py is now running all 6 commands. The output Key has correctly changed. The type and value are wrong.
```bash
730 rmills@rmillsmm-local:~/gnu/github/exiv2/update_canon_tags_2/build $ env DYLD_LIBRARY_PATH=$PWD/lib bin/exiv2 -g InfoSize ../test/data/*981*a.exv
Exif.CanonAf2Id.AFInfoSize                   SLong       1  131168
731 rmills@rmillsmm-local:~/gnu/github/exiv2/update_canon_tags_2/build $ exiv2 -g InfoSize ../test/data/*981*a.exv
Exif.Canon.AFInfoSize                        SShort      1  96
732 rmills@rmillsmm-local:~/gnu/github/exiv2/update_canon_tags_2/build $
```
3 years ago
Alex Esseling 1afeea0f29 fix test cases 3 years ago
Alex Esseling 5e2c84aa69 fix of tests case test_issue_981.py 3 years ago
Christoph Hasse b318b9de65 feat(testing): add a new extensive regression test that runs exiv2 over every test file we have 3 years ago
Luis Díaz Más c7185c71db Move all tests depending on sample applications to bash_tests 3 years ago
Luis Díaz Más 2a818e924d remove usage of exiv2json in a test (#199) 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 d53080c820
[tests] Add test for Tokina AT-X 14-20 F2 PRO DX lens on Nikon bodies 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
Sturmflut 4eac841474 Add test for Pull Request #2069 (Sigma 12-24mm F4 DG HSM Art lens for Nikon) 3 years ago
Peter 8505f4d935
Fix pr#2053 for native Windows builds (#2058)
Fixes:
1. Fix Windows native build error introduced in pr#2053. Correct problem of mismatched Windows/Linux newlines.
2. Remove dependency on command line tools being available.
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 0847f92959
Add Python test for XMP IPTC 2021.1 tags 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