Commit Graph

534 Commits

Author SHA1 Message Date
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`
2022-09-27 09:26:26 +01:00
Kevin Backhouse
640b0fbf5d
Merge pull request #2346 from kevinbackhouse/fix-issue-2345
Fix buffer overflow in QuickTimeVideo::tagDecoder
2022-09-21 14:54:37 +01:00
Kevin Backhouse
bf151a17a3
Don't allow zero width/height in WebPImage::inject_VP8X 2022-09-05 23:43:35 +01:00
Kevin Backhouse
760a6c54f9
Regression test for https://github.com/Exiv2/exiv2/issues/2345 2022-09-04 20:17:09 +01:00
Christoph Hasse
6cc44ae8b1 test(quicktimevideo) add poc for #2340 2022-08-31 16:32:11 +02:00
Kevin Backhouse
d15fdee91e Regression test for https://github.com/Exiv2/exiv2/issues/2339 2022-08-28 23:15:55 -07:00
Peter
ccebe7936e
Update Nikon flash tags (#2274) 2022-08-28 10:02:18 +01:00
Christoph Hasse
9afb877324 test(video) add small video file to execute some code in quicktimevideo.cpp 2022-08-24 17:39:42 +02:00
Kevin Backhouse
df59a6bb67
Regression test for https://github.com/Exiv2/exiv2/issues/2320 2022-08-08 23:47:11 -04:00
Viktor Schneider
73a1a0ec21 Merge remote-tracking branch 'origin' 2022-08-01 22:20:01 +02:00
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.
2022-07-19 15:42:00 +01:00
Peter
dc4ae73013
Add tag description option to exiv2 app (#2279)
* Add `tagDesc()` to (Exif|Xmp|Iptc) Datums and Keys
* Add `--Print d` option to exiv2 app
* Add testing for all exiv2 application `--Print` options
* Update manpage
2022-07-12 15:31:43 +01:00
Kevin Backhouse
a608138f5f
Simplify the iptcDataSegs logic 2022-07-08 13:51:34 +01:00
Kevin Backhouse
58cef7516e
Add issue_2268_poc.jp2 to the exclude list. 2022-07-07 19:55:28 +01:00
Kevin Backhouse
6b5453c9d5
Regression test for https://github.com/Exiv2/exiv2/issues/2268 2022-07-07 17:29:49 +01:00
Kevin Backhouse
7ebf2a184e
Merge pull request #2231 from kevinbackhouse/exiv2app-types-cleanup
types cleanup exiv2app.hpp
2022-05-23 10:24:01 +01:00
Kevin Backhouse
1ceddb2962
Replace long with int64_t in exiv2app.hpp 2022-05-22 19:59:11 +01:00
Miloš Komarčević
4f9bed24e1 Add more JXL tests 2022-05-19 10:25:13 +02:00
Viktor Schneider
2c41063984 update test cases to respect new fujifilm tags 2022-05-13 13:57:58 +02:00
Luis Díaz Más
c3d0100d48 Fixing bad usages of DataBuf (when it is empty) 2022-04-14 10:40:58 +02:00
Luis Díaz Más
941017d281
Fix issues on ARM builds (#2205)
* Specify base class initialization in Copy Constructor

* Fix printing of uint64_t variable in ARM 32bits

Use cinttypes

* Fix alignment issues on ARM 32 bits

* tests: add assertion with custom message
2022-04-13 15:22:22 +02:00
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.
2022-04-10 10:53:36 +02:00
Luis Díaz Más
3795e5318b Add POC file 2022-04-04 10:03:37 +02:00
Luis Díaz Más
b8cb4e096f
Merge pull request #2180 from Exiv2/main_issue2178
Fix out of bounds read in isValidBoxFileType()
2022-04-01 09:07:35 +02:00
Luis Díaz Más
c6340caca7 Remove exiv2json sample and tests depending on it 2022-04-01 09:07:08 +02:00
Kevin Backhouse
74622cf494 Add poc for fuzzing coverage. 2022-04-01 08:11:25 +02:00
Miloš Komarčević
44c3aab2dc Add OM System MakerNote test
(manually adapted from 18e2b9a6bb305854bfe05d0275425ad3699ea757)
2022-03-30 11:16:44 +02:00
Luis Díaz Más
5ed9fb4120
Merge pull request #2155 from Exiv2/mainFixJp2_2
Fix in Jp2 metadata writing & improvements in reading (2)
2022-03-23 16:45:57 +01:00
Kevin Backhouse
ddc96bc38e
Add exclusion for issue_2160_poc.jpg 2022-03-19 18:26:00 +00:00
Luis Díaz Más
2b9f6ccf6b Adapt tests to changes in JP2 2022-03-18 14:44:25 +01:00
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
2022-02-27 09:41:47 +01:00
Luis Díaz Más
f1e04ee866 Replace DataBuf internal buffer with std::vector 2022-02-27 09:36:46 +01:00
Robin Mills
9bf4967e5c
Merge pull request #2110 from mallman/nikon_ContrastDetectAFInFocus
Make Nikon ContrastDetectAFInFocus tags Bytes that print as "Yes" or "No"
2022-02-26 17:44:05 +00:00
Peter
d17b7e4484
Fix test_pr_1905.py for native 2019msvc64 (#2108) (#2112)
* Fix test_pr_1905.py for native 2019msvc64 (#2108)

* Move test_pr_1905_poc1_ref.out to reference dir
2022-02-20 21:38:25 +00:00
Michael Allman
a3e2410b88 Print value of ContrastDetectAFInFocus as Yes/No. Change internal
selection logic for NikonAf2* from tag data length to group version
2022-02-19 15:47:02 -08:00
Michael Allman
9541a89b13 Make Exif.NikonAf2.ContrastDetectAFInFocus and
Exif.NikonAf22.ContrastDetectAFInFocus byte types
2022-02-18 15:52:53 -08:00
Robin Mills
287744fa12
Merge pull request #2087 from Exiv2/update_canon_tags_2
Update canon tags 2
2022-02-15 22:41:37 -08:00
Robin Mills
ad424dfb6a Fixing test following Christoph's Review. (Christoph is one clever Mother!) 2022-02-14 16:30:00 +01:00
Robin Mills
800ed8959f Rewire Canon MakerNote 0x0026 (AFInfo) to allow TiffDecoder::decodeCanonAFInfo to handle this tag.
Minor changes to test script.
Cosmetic code changes.
2022-02-14 16:30:00 +01:00
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 $
```
2022-02-14 16:29:59 +01:00
Alex Esseling
1afeea0f29 fix test cases 2022-02-14 16:29:52 +01:00
Alex Esseling
55de9f4dea fix test_issue_1122.py 2022-02-14 16:29:45 +01:00
Alex Esseling
3e0d9a8b66 fix of test_issue_1151.py 2022-02-14 16:29:45 +01:00
Alex Esseling
5e2c84aa69 fix of tests case test_issue_981.py 2022-02-14 16:29:45 +01:00
Luis Díaz Más
50fc40bb7c Add system test to reproduce issue with special characters 2022-02-13 22:49:32 +01:00
Christoph Hasse
e3ca59b01f move test_regression_allfiles.py into its own subdirectory and add the test to cmakelists.txt 2022-02-13 22:46:54 +01:00
Christoph Hasse
b318b9de65 feat(testing): add a new extensive regression test that runs exiv2 over every test file we have 2022-02-13 22:46:54 +01:00
Christoph Hasse
d0131ebb75 move test reference files into their own subdirectory 2022-02-13 22:46:54 +01:00
Luis Díaz Más
c7185c71db Move all tests depending on sample applications to bash_tests 2022-02-09 22:19:49 +01:00
Luis Díaz Más
2a818e924d remove usage of exiv2json in a test (#199) 2022-02-09 22:19:49 +01:00