Darryl Champagne created CB-1700:
------------------------------------

             Summary: Exif data corrupted on Android loading photos from Gallery
                 Key: CB-1700
                 URL: https://issues.apache.org/jira/browse/CB-1700
             Project: Apache Cordova
          Issue Type: Bug
          Components: Android
    Affects Versions: 2.1.0, 2.2.0
         Environment: Samsung Galaxy SII
            Reporter: Darryl Champagne
            Assignee: Joe Bowser


Source and Target filenames are reversed in CameraLauncher.java when returning 
a picture from the gallery that requires resizing. 
Exif data is being read in from the resized image (around line 433, in 
onActivityResult):
    if (this.encodingType == JPEG) {
        exif.createInFile(resizePath);
        exif.readExifData();
        rotate = exif.getOrientation();
    }
And being written back to the original file, rather than the resized file that 
is actually returned (around line 446):
    // Restore exif data to file
    if (this.encodingType == JPEG) {
        exif.createOutFile(FileUtils.getRealPathFromURI(uri, this.cordova));
        exif.writeExifData();
    }
...
    this.callbackContext.success("file://" + resizePath + "?" + 
System.currentTimeMillis());

This means that the almost nonexistent EXIF data in the output file gets 
written to the original file (usually doing nothing), and the valid data is not 
returned in the resized file.  The inFile should be imagePath (or recreated), 
and the outfile should be resizePath.

The sending filename back from the Camera appears to have a similar issue.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to