This is committed to Apache axis2 trunk.

Shankar

On Mon, Mar 26, 2012 at 7:59 PM, Afkham Azeez <[email protected]> wrote:
> Please commit this to Apache trunk as well.
>
>
> On Mon, Mar 26, 2012 at 1:02 PM, <[email protected]> wrote:
>>
>> Author: shankar
>> Date: Mon Mar 26 03:32:26 2012
>> New Revision: 123874
>> URL: http://wso2.org/svn/browse/wso2?view=rev&revision=123874
>>
>> Log:
>> Closing the streams properly so that it will close all file handles.
>>
>> Modified:
>>
>> carbon/kernel/trunk/dependencies/axis2/1.6.1-wso2v5/modules/kernel/src/org/apache/axis2/util/XMLPrettyPrinter.java
>>
>> Modified:
>> carbon/kernel/trunk/dependencies/axis2/1.6.1-wso2v5/modules/kernel/src/org/apache/axis2/util/XMLPrettyPrinter.java
>> URL:
>> http://wso2.org/svn/browse/wso2/carbon/kernel/trunk/dependencies/axis2/1.6.1-wso2v5/modules/kernel/src/org/apache/axis2/util/XMLPrettyPrinter.java?rev=123874&r1=123873&r2=123874&view=diff
>>
>> ==============================================================================
>> ---
>> carbon/kernel/trunk/dependencies/axis2/1.6.1-wso2v5/modules/kernel/src/org/apache/axis2/util/XMLPrettyPrinter.java
>>  (original)
>> +++
>> carbon/kernel/trunk/dependencies/axis2/1.6.1-wso2v5/modules/kernel/src/org/apache/axis2/util/XMLPrettyPrinter.java
>>  Mon Mar 26 03:32:26 2012
>> @@ -58,7 +58,9 @@
>>         FileOutputStream outputStream = null;
>>         byte[] byteArray = null;
>>         try {
>> -            byteArray = IOUtils.getStreamAsByteArray(new
>> FileInputStream(file));
>> +            FileInputStream fin = new FileInputStream(file);
>> +            byteArray = IOUtils.getStreamAsByteArray(fin);
>> +            fin.close();
>>             inputStream = new ByteArrayInputStream(byteArray);
>>             outputStream = new FileOutputStream(file);
>>
>> @@ -88,6 +90,18 @@
>>             log.debug("Pretty printed file : " + file);
>>         } catch (Throwable t) {
>>             log.debug("Exception occurred while trying to pretty print
>> file " + file, t);
>> +
>> +            /* if outputStream is already created, close them, because we
>> are going reassign
>> +             * different value to that. It will leak the file handle
>> (specially in windows, since
>> +             * deleting is going to be an issue)
>> +             */
>> +            if (outputStream != null) {
>> +                try {
>> +                    outputStream.close();
>> +                } catch (IOException e) {
>> +                    log.debug(e.getMessage(), e);
>> +                }
>> +            }
>>             try {
>>                 if (byteArray != null) {
>>                     outputStream = new FileOutputStream(file);
>> _______________________________________________
>> Commits mailing list
>> [email protected]
>> http://wso2.org/cgi-bin/mailman/listinfo/commits
>
>
>
>
> --
> Afkham Azeez
> Director of Architecture; WSO2, Inc.; http://wso2.com
> Member; Apache Software Foundation; http://www.apache.org/
>
> email: [email protected] cell: +94 77 3320919
> blog: http://blog.afkham.org
> twitter: http://twitter.com/afkham_azeez
> linked-in: http://lk.linkedin.com/in/afkhamazeez
>
> Lean . Enterprise . Middleware
>



-- 
S.Uthaiyashankar
Senior Architect
WSO2 Inc.
http://wso2.com/ - "lean . enterprise . middleware"

Phone: +94 714897591
_______________________________________________
Dev mailing list
[email protected]
http://wso2.org/cgi-bin/mailman/listinfo/dev

Reply via email to