fix_1266_GPSProcessingMethod

This commit is contained in:
Robin Mills 2020-08-29 10:22:23 +01:00
parent f61fa2ed9d
commit 963c91fe8a
4 changed files with 45 additions and 41 deletions

View File

@ -577,12 +577,16 @@ namespace Exiv2 {
if (charsetId() == unicode) {
const char* from = encoding == 0 || *encoding == '\0' ? detectCharset(c) : encoding;
convertStringCharset(c, from, "UTF-8");
} else {
// charset=undefined reports "binary comment" if it contains non-printable bytes
// this is to ensure no binary bytes in the output stream.
if ( isBinary(c) ) {
c = "binary comment" ;
}
}
bool bAscii = charsetId() == undefined || charsetId() == ascii ;
// # 1266 Remove trailing nulls
if ( bAscii && c.find('\0') != c.std::string::npos) {
c = c.substr(0,c.find('\0'));
}
// return "binary comment" if results contains non-printable bytes
// this ensures no binary bytes in the output stream.
if ( bAscii && isBinary(c) ) {
c = "binary comment" ;
}
return c;
}

View File

@ -267,7 +267,7 @@ Exif.Canon.FileNumber 0x0008 Makernote Long 1
Exif.Canon.OwnerName 0x0009 Makernote Ascii 32 Andreas Huggel
Exif.Canon.ModelID 0x0010 Makernote Long 1 17891328
Exif.Canon.CameraInfo 0x000d Makernote Short 21 42 3 32769 378 32769 0 0 0 259 2 0 10 0 0 0 57 198 5 0 0 0
Exif.Photo.UserComment 0x9286 Exif Undefined 264 binary comment
Exif.Photo.UserComment 0x9286 Exif Undefined 264
Exif.Photo.FlashpixVersion 0xa000 Exif Undefined 4 48 49 48 48
Exif.Photo.ColorSpace 0xa001 Exif Short 1 1
Exif.Photo.PixelXDimension 0xa002 Exif Short 1 2272
@ -396,7 +396,7 @@ Exif.Canon.FileNumber 0x0008 Makernote Long 1
Exif.Canon.OwnerName 0x0009 Makernote Ascii 32 Andreas Huggel
Exif.Canon.ModelID 0x0010 Makernote Long 1 17891328
Exif.Canon.CameraInfo 0x000d Makernote Short 21 42 3 32769 378 32769 0 0 0 259 2 0 10 0 0 0 57 198 5 0 0 0
Exif.Photo.UserComment 0x9286 Exif Undefined 264 binary comment
Exif.Photo.UserComment 0x9286 Exif Undefined 264
Exif.Photo.FlashpixVersion 0xa000 Exif Undefined 4 48 49 48 48
Exif.Photo.ColorSpace 0xa001 Exif Short 1 1
Exif.Photo.PixelXDimension 0xa002 Exif Short 1 2272
@ -526,7 +526,7 @@ Exif.Canon.FileNumber 0x0008 Makernote Long 1
Exif.Canon.OwnerName 0x0009 Makernote Ascii 32 Andreas Huggel
Exif.Canon.ModelID 0x0010 Makernote Long 1 17891328
Exif.Canon.CameraInfo 0x000d Makernote Short 21 42 3 32769 378 32769 0 0 0 259 2 0 10 0 0 0 57 198 5 0 0 0
Exif.Photo.UserComment 0x9286 Exif Undefined 264 binary comment
Exif.Photo.UserComment 0x9286 Exif Undefined 264
Exif.Photo.FlashpixVersion 0xa000 Exif Undefined 4 48 49 48 48
Exif.Photo.ColorSpace 0xa001 Exif Short 1 1
Exif.Photo.PixelXDimension 0xa002 Exif Short 1 2272
@ -656,7 +656,7 @@ Exif.Canon.FileNumber 0x0008 Makernote Long 1
Exif.Canon.OwnerName 0x0009 Makernote Ascii 32 Andreas Huggel
Exif.Canon.ModelID 0x0010 Makernote Long 1 17891328
Exif.Canon.CameraInfo 0x000d Makernote Short 21 42 3 32769 378 32769 0 0 0 259 2 0 10 0 0 0 57 198 5 0 0 0
Exif.Photo.UserComment 0x9286 Exif Undefined 264 binary comment
Exif.Photo.UserComment 0x9286 Exif Undefined 264
Exif.Photo.FlashpixVersion 0xa000 Exif Undefined 4 48 49 48 48
Exif.Photo.ColorSpace 0xa001 Exif Short 1 1
Exif.Photo.PixelXDimension 0xa002 Exif Short 1 2272

File diff suppressed because one or more lines are too long

View File

@ -93,7 +93,7 @@ Exif.Canon.FileNumber Long 1 117-1771
Exif.Canon.OwnerName Ascii 32 Andreas Huggel
Exif.Canon.ModelID Long 1 PowerShot S40
Exif.Canon.CameraInfo Short 21 42 3 32769 378 32769 0 0 0 259 2 0 10 0 0 0 57 198 5 0 0 0
Exif.Photo.UserComment Undefined 264 binary comment
Exif.Photo.UserComment Undefined 264
Exif.Photo.FlashpixVersion Undefined 4 1.00
Exif.Photo.ColorSpace Short 1 sRGB
Exif.Photo.PixelXDimension Short 1 2272