diff options
-rw-r--r-- | tools/tiffset.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/tools/tiffset.c b/tools/tiffset.c index f32af23f..3725aa61 100644 --- a/tools/tiffset.c +++ b/tools/tiffset.c @@ -321,6 +321,7 @@ main(int argc, char* argv[]) const TIFFField *fip; char *text; size_t len; + int ret; arg_index++; fip = GetField(tiff, argv[arg_index]); @@ -354,7 +355,12 @@ main(int argc, char* argv[]) fclose( fp ); - if(TIFFSetField( tiff, TIFFFieldTag(fip), text ) != 1) { + if(TIFFFieldPassCount( fip )) { + ret = TIFFSetField( tiff, TIFFFieldTag(fip), (uint16)len, text ); + } else { + ret = TIFFSetField( tiff, TIFFFieldTag(fip), text ); + } + if(!ret) { fprintf(stderr, "Failed to set %s from file %s\n", TIFFFieldName(fip), argv[arg_index]); } |