Author: jerome
Date: 2009-01-23 09:06:36 +0100 (Fri, 23 Jan 2009)
New Revision: 3519
Modified:
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/Logger.java
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/Settings.java
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/XMLReader.java
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/XMLWriter.java
Log:
* Fixed a memory leek.
Modified:
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/Logger.java
===================================================================
---
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/Logger.java
2009-01-22 17:33:16 UTC (rev 3518)
+++
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/Utils/Logger.java
2009-01-23 08:06:36 UTC (rev 3519)
@@ -120,25 +120,13 @@
{
writer = new FileWriter(this.log, true);
writer.write(text, 0, text.length());
+ writer.flush();
+ writer.close();
}
catch(IOException ex)
{
ex.printStackTrace();
}
- finally
- {
- if(writer != null)
- {
- try
- {
- writer.close();
- }
- catch (IOException e)
- {
- e.printStackTrace();
- }
- }
- }
}
}
Modified:
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/Settings.java
===================================================================
---
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/Settings.java
2009-01-22 17:33:16 UTC (rev 3518)
+++
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/Settings.java
2009-01-23 08:06:36 UTC (rev 3519)
@@ -120,7 +120,7 @@
CcCommons.settingsEncoding = "ISO-8859-1";
CcCommons.logger.append("Encoding is:
ISO-8859-1", true);
}
-
+
br.close();
ipsr.close();
ips.close();
Modified:
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/XMLReader.java
===================================================================
---
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/XMLReader.java
2009-01-22 17:33:16 UTC (rev 3518)
+++
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/XMLReader.java
2009-01-23 08:06:36 UTC (rev 3519)
@@ -52,9 +52,6 @@
/** xml document representation **/
private Document document;
- /** This var register a setting.xml edition. **/
- public static boolean edited = true;
-
public Object mutex = new Object();
/**
@@ -114,16 +111,10 @@
public Document getDocument(){
synchronized(this.mutex)
{
- if(!XMLReader.edited)
- {
- return this.document;
- }
-
try
{
CcCommons.logger.append("Parsing settings.xml",
true);
this.parse();
- XMLReader.edited = false;
}
catch (ParserConfigurationException e)
{
Modified:
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/XMLWriter.java
===================================================================
---
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/XMLWriter.java
2009-01-22 17:33:16 UTC (rev 3518)
+++
software_suite_v2/software/control_center/trunk/control_center/sources/com/tuxdroid/cc/settings/XMLWriter.java
2009-01-23 08:06:36 UTC (rev 3519)
@@ -58,7 +58,10 @@
/** xml file reference **/
private File xmlFile;
- public static boolean locked = false;
+ public static boolean locked = false;
+
+ private TransformerFactory fabrique;
+ private Transformer transformer;
/**
@@ -160,26 +163,26 @@
try {
// Create Dom source.
Source source = new DOMSource(document);
-
//Create output.
Result resultat = new StreamResult(this.xmlFile);
-
- TransformerFactory fabrique = TransformerFactory.newInstance();
- Transformer transformer = fabrique.newTransformer();
- //Setting xml properties.
- transformer.setOutputProperty(OutputKeys.INDENT, "yes");
- transformer.setOutputProperty(OutputKeys.STANDALONE, "yes");
- transformer.setOutputProperty(OutputKeys.ENCODING,
CcCommons.settingsEncoding);
-
+
+ if(fabrique == null)
+ {
+ fabrique = TransformerFactory.newInstance();
+ }
+ if(transformer == null)
+ {
+ transformer = fabrique.newTransformer();
+ transformer.setOutputProperty(OutputKeys.INDENT, "yes");
+ transformer.setOutputProperty(OutputKeys.STANDALONE, "yes");
+ transformer.setOutputProperty(OutputKeys.ENCODING,
CcCommons.settingsEncoding);
+ }
// Registration.
- transformer.transform(source, resultat);
- //Sets global var 'edited' at true to avoid a new xml parsing.
- XMLReader.edited = true;
+ transformer.transform(source, resultat);
}
catch(Exception e)
{
- CcCommons.logger.appendError(e.getStackTrace());
- CcCommons.logger.append(" -->> ERROR: An error occured trying to
register changes.", true);
+ CcCommons.logger.appendError(e.getStackTrace());
}
}
------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword
_______________________________________________
Tux-droid-svn mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tux-droid-svn