| Index: ui/file_manager/file_manager/foreground/js/metadata/exif_parser.js
|
| diff --git a/ui/file_manager/file_manager/foreground/js/metadata/exif_parser.js b/ui/file_manager/file_manager/foreground/js/metadata/exif_parser.js
|
| index e70fe3b5f1d7354cf848872761f61fc3b6dc58bf..5fb2e015b6a9e425f5c84c03bea63089766e249c 100644
|
| --- a/ui/file_manager/file_manager/foreground/js/metadata/exif_parser.js
|
| +++ b/ui/file_manager/file_manager/foreground/js/metadata/exif_parser.js
|
| @@ -362,6 +362,7 @@ ExifParser.prototype.readTagValue = function(br, tag) {
|
| } else {
|
| tag.value = String.fromCharCode.apply(null, tag.value);
|
| }
|
| + this.validateAndFixStringTag_(tag);
|
| break;
|
|
|
| case 3: // Short
|
| @@ -400,6 +401,23 @@ ExifParser.prototype.readTagValue = function(br, tag) {
|
| };
|
|
|
| /**
|
| + * Validates string tag value, and fix it if necessary.
|
| + * @param {!ExifEntry} tag A tag to be validated and fixed.
|
| + * @private
|
| + */
|
| +ExifParser.prototype.validateAndFixStringTag_ = function(tag) {
|
| + if (tag.format === 2) { // string
|
| + // String should end with null character.
|
| + if (tag.value.charAt(tag.value.length - 1) !== '\0') {
|
| + tag.value += '\0';
|
| + tag.componentCount = tag.value.length;
|
| + this.vlog('Invalid format: 0x' + tag.id.toString(16) + '/' + tag.format +
|
| + ': Did not end with null character. Null character is appended.');
|
| + }
|
| + }
|
| +};
|
| +
|
| +/**
|
| * Map from the exif orientation value to the horizontal scale value.
|
| * @const
|
| * @type {Array.<number>}
|
|
|