You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Peter (JIRA)" <ji...@apache.org> on 2013/09/25 03:20:03 UTC

[jira] [Created] (CB-4906) FB - Capture.java - method does not clean up stream

Peter created CB-4906:
-------------------------

             Summary: FB - Capture.java - method does not clean up stream
                 Key: CB-4906
                 URL: https://issues.apache.org/jira/browse/CB-4906
             Project: Apache Cordova
          Issue Type: Task
          Components: Android
    Affects Versions: 2.9.0
            Reporter: Peter
            Priority: Minor


Resolve FindBugs reported issue in *Capture.java*:

Before
{code}
FileInputStream fis = new FileInputStream(DirectoryManager.getTempDirectoryPath(this.cordova.getActivity()) + "/Capture.jpg");                    
OutputStream os = this.cordova.getActivity().getContentResolver().openOutputStream(uri);
byte[] buffer = new byte[4096];
int len;
while ((len = fis.read(buffer)) != -1) {
    os.write(buffer, 0, len);
}
os.flush();
os.close();
fis.close();
{code}
After
{code}
FileInputStream fis = new FileInputStream(DirectoryManager.getTempDirectoryPath(this.cordova.getActivity()) + "/Capture.jpg");
try {
    OutputStream os = this.cordova.getActivity().getContentResolver().openOutputStream(uri);
    try {
        byte[] buffer = new byte[4096];
        int len;
        while ((len = fis.read(buffer)) != -1) {
            os.write(buffer, 0, len);
        }
        os.flush();
    } finally {
        os.close();
    }
} finally {
    fis.close();
}
{code}

--
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