Commit Graph

369 Commits (dustin/master)

Author SHA1 Message Date
Dustin Oprea 687250767b ifd_enumerate.go: Drop spurious struct field. Put hex prefix on offset in logging. 2020-05-16 01:45:36 -04:00
Dustin Oprea 3ed898edc8 exif.go: Log offset in SearchAndExtractExifWithReader() 2020-05-16 01:44:15 -04:00
Dustin Oprea 5c21ae7376 ifd_enumerate.go: Enrich unknown-type error with type number 2020-05-16 01:03:31 -04:00
Dustin Oprea 9ce7f5d058 ifd_enumerate.go: Fix log subject 2020-05-16 00:52:14 -04:00
Dustin Oprea e7aea1340c ifd_enumerate.go: Tweak log message 2020-05-06 04:59:28 -04:00
Dustin Oprea 86feeb2b50 ifd_enumerate.go: Log and quietly stop parsing if IFD offset is invalid
Fixes #36
2020-05-06 04:56:05 -04:00
Dustin Oprea 8da3881353 Fix GPS 2.0.0.0 test image name 2020-05-06 01:47:03 -04:00
Dustin Oprea 357e25f102 .travis.yml: Drop older Go versions from CI
It causes us to queue for instances due to quota limits.
2020-05-06 01:42:23 -04:00
Dustin Oprea 6303a275e5 ifd_enumerate.go: Enable support for GPS 2.0.0.0
Fixes #35
2020-05-06 01:42:22 -04:00
Dustin Oprea c74ff0d0b0 utility.go: Add GpsDegreesEquals 2020-05-06 01:32:01 -04:00
Dustin Oprea b1ff77dba9 ifd_enumerate.go: Drop TODO 2020-05-05 19:51:12 -04:00
Dustin Oprea b6593b4cec ifd_builder_test.go: Fix name of example 2020-05-05 11:09:19 -04:00
Dustin Oprea bbd4b5fb6f ifd_builder_test.go: Add test and example for updating GPS info
- Added helper for getting GPS test-image.
2020-05-05 03:24:01 -04:00
Dustin Oprea f67048a6e3 Rename package documentation file 2020-05-05 02:46:14 -04:00
Dustin Oprea 05e8551e57 Update package documentation to cite obsolescence 2020-05-05 02:45:22 -04:00
Dustin Oprea 36f5ad93e8 gps.go: Add Raw() method to GpsInfo to assisting with writing
- Moved some GPS logic from ifd_enumerate.go to gps.go .
- Added missing comments.
2020-05-05 02:28:56 -04:00
Dustin Oprea f86f12408b exif.go: Update funky recover clauses 2020-05-05 02:27:31 -04:00
Dustin Oprea 4fc876786f exif.go: Brute-force EXIF searching is now buffered
- Added `SearchAndExtractExifWithReader()`.
- `SearchFileAndExtractExif()` now calls `SearchAndExtractExifWithReader()`
  instead of reading the whole image first.

Fixes #34

Relates to optimizations in df264b3 as well.
2020-05-05 01:27:20 -04:00
Dustin Oprea df264b321a exif.go: Use simple byte comparison to match signature 2020-05-05 00:58:01 -04:00
Dustin Oprea 3e77768f35 README.md: Further qualify attribution list 2020-05-03 02:22:16 -04:00
Dustin Oprea cc316fb440 ifd_enumerate.go: (*Ifd).PrintTagTree() no longer fails on parseable undefined values
https://github.com/dsoprea/go-exif/issues/33
2020-05-02 17:11:50 -04:00
Dustin Oprea 6aea10b45f exif-read-tool: Skip unparseable undefined tags
We've encountered a malformed user-comments value in an image from a
Canon EOS 5D Mark II.

2020/05/02 16:28:58 exifjpeg.ifd: [DEBUG]  Parsing IFD [IFD/Exif] (0) at offset (0102).
2020/05/02 16:28:58 exifjpeg.ifd: [DEBUG]  Current IFD tag-count: (33)
2020/05/02 16:28:58 main.main: [WARNING]  Skipping unparseable undefined tag: [IFD/Exif] (9286)
2020/05/02 16:28:58 exifjpeg.ifd: [DEBUG]  Descending to IFD [IFD/Exif/Iop].
2020/05/02 16:28:58 exifjpeg.ifd: [DEBUG]  Parsing IFD [IFD/Exif/Iop] (0) at offset (a164).

Fixes #33
2020-05-02 16:33:40 -04:00
Dustin Oprea 76619923f4 exif-read-tool: Fix verbosity. Replace prints with logging.
It's just an example tool, but still.
2020-05-02 16:25:36 -04:00
Dustin Oprea 80e3b12b98 undefined/exif_9286_user_comment.go: Validate for minimum user-notes size 2020-05-02 16:24:00 -04:00
Dustin Oprea 45986dbda3 Now a specific error for unparseable undefined tags 2020-05-02 16:23:19 -04:00
Dustin Oprea 73303ea590 go.mod: Bump version of go-logging 2020-05-02 16:21:52 -04:00
Dustin Oprea 640175a69f exif-read-tool: Skip unsupported undefined tags 2020-03-21 18:53:14 -04:00
Dustin Oprea 1e1e1ed104 exif-read-tool: Make no-exif error nicer for tool 2020-03-21 18:52:41 -04:00
Dustin Oprea bd04addaf4 v2/common/parser.go: Revert to previous NUL forgiveness
It turns out that there is so much loose handling with the terminating
NUL characters out there that there's a societal breakdown without this.

Fixes #31
2020-01-26 00:26:15 -05:00
Dustin Oprea bc34ca087b exif-read-tool/main_test.go: Bugfix for missing error check 2020-01-25 23:30:30 -05:00
Dustin Oprea 0bbb7a3584 ifd_enumerate.go: Revert to using a simple function for the visitor 2020-01-13 18:12:07 -05:00
Dustin Oprea 90b66e3d11 Renamed V2 constant
From ErrUnhandledUnknownTypedTag to ErrUnhandledUndefinedTypedTag. The
release just happened. There should be minimal fallout.
2020-01-13 13:44:00 -05:00
Dustin Oprea b7b73dfdaf Yanked go-exif from our own dependencies
Not sure how that got there.
2020-01-13 12:04:04 -05:00
Dustin Oprea eee9ff13c7 Removed init()'s from tests so they don't run when imported
Otherwise they'll break for other projects' tests. We now initialize our
paths on-demand, which will only happen when running from our own tests.
2020-01-13 12:00:23 -05:00
Dustin Oprea 0d58b5da07 README.md: Update for v2 2020-01-12 18:56:35 -05:00
Dustin Oprea 106cad7062 Add tests for remaining undefined types
- Also fixed a typeo in several recopied error messages.
2020-01-12 18:56:35 -05:00
Dustin Oprea ebd20ffc59 Do not include v1/legacy in coverage 2020-01-12 18:56:35 -05:00
Dustin Oprea 25524615d1 Fix for type-embedded strings not being encoded to JSON correctly in earlier Go's 2020-01-12 18:56:35 -05:00
Dustin Oprea 3b18b2295e common/testing_common.go: Tighten error checking for module-find 2020-01-12 18:56:35 -05:00
Dustin Oprea db9a0b3a24 common/testing_common.go: Add verbosity for module-path find failure 2020-01-12 18:56:35 -05:00
Dustin Oprea 817d4b2856 Fix module resolution with subpackages
exif-read-tool/main_test.go: Fix test broken by moving to V2.
2020-01-12 18:56:35 -05:00
Dustin Oprea 41fd3ae870 undefined: Add five test suites 2020-01-12 18:56:35 -05:00
Dustin Oprea a52d1de840 undefined: Add three suites of tests 2020-01-12 18:56:35 -05:00
Dustin Oprea 4fd78f1397 README.md: Tweaked comment regarding undefined-value 0xa40b 2020-01-12 18:56:35 -05:00
Dustin Oprea 74208315f8 ifd_tag_entry.go: Embellished ChildFqIfdPath comment 2020-01-12 18:56:35 -05:00
Dustin Oprea 307a31d82b exif-read-tool: Upgraded to v2 module 2020-01-12 18:56:35 -05:00
Dustin Oprea fa4e784620 ifd_tag_entry.go: Renamed unexported getter to be nicer 2020-01-12 18:56:35 -05:00
Dustin Oprea 7d26e69f8d Add tested for undefined-tag types 2020-01-12 18:56:35 -05:00
Dustin Oprea f72daedddc ifd_enumerate.go: Ifd no longer needs addressableBytes field 2020-01-12 18:56:35 -05:00
Dustin Oprea 556a15dbee ifd_tag_entry.go: Minor change to use own field directly 2020-01-12 18:56:35 -05:00