diff --git a/CHANGELOG.md b/CHANGELOG.md index 2c5ccd5..8172d78 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -47,6 +47,8 @@ Most of the updates are demonstrated in `main.go`. ### General changes +- Upgraded Docker containers to Go 1.16 + ### Command-line interface - added support for automatically generating unique tileset IDs using `--generate-ids` option @@ -87,6 +89,10 @@ Most of the updates are demonstrated in `main.go`. - removed `ServiceSet.AddDBOnPath()`; this is replaced by calling `ServiceSet.AddTileset()` for each `Tileset` to register. +### Bug fixes + +- Fixed WebP parsing, now uses simplified check for a `RIFF` header (WebP is only likely RIFF format to be stored in tiles). #98, #110 + ## 0.6.1 - upgraded Docker containers to Go 1.14 (solves out of memory issues during builds on small containers) diff --git a/mbtiles/mbtiles.go b/mbtiles/mbtiles.go index 755ce30..4f332eb 100644 --- a/mbtiles/mbtiles.go +++ b/mbtiles/mbtiles.go @@ -373,7 +373,10 @@ func detectTileFormat(data *[]byte) (TileFormat, error) { ZLIB: []byte("\x78\x9c"), PNG: []byte("\x89\x50\x4E\x47\x0D\x0A\x1A\x0A"), JPG: []byte("\xFF\xD8\xFF"), - WEBP: []byte("\x52\x49\x46\x46\xc0\x00\x00\x00\x57\x45\x42\x50\x56\x50"), + // NOTE: this is technically only the RIFF part of the header, + // but none of the other RIFF file formats are likely to be stored + // as tiles. + WEBP: []byte("\x52\x49\x46\x46"), } for format, pattern := range patterns { diff --git a/mbtiles/mbtiles_test.go b/mbtiles/mbtiles_test.go index cede866..041908c 100644 --- a/mbtiles/mbtiles_test.go +++ b/mbtiles/mbtiles_test.go @@ -10,8 +10,8 @@ func Test_ListDBs(t *testing.T) { var expected = []string{ "testdata/geography-class-jpg.mbtiles", "testdata/geography-class-png.mbtiles", + "testdata/geography-class-webp.mbtiles", "testdata/world_cities.mbtiles", - "testdata/openstreetmap/open-streets-dc.mbtiles", } filenames, err := mbtiles.ListDBs("./testdata") diff --git a/mbtiles/testdata/geography-class-webp.mbtiles b/mbtiles/testdata/geography-class-webp.mbtiles new file mode 100644 index 0000000..e79f011 Binary files /dev/null and b/mbtiles/testdata/geography-class-webp.mbtiles differ diff --git a/mbtiles/testdata/openstreetmap/open-streets-dc.mbtiles b/mbtiles/testdata/openstreetmap/open-streets-dc.mbtiles deleted file mode 100644 index f55fe40..0000000 Binary files a/mbtiles/testdata/openstreetmap/open-streets-dc.mbtiles and /dev/null differ