[Squirrel-sql-commits] SF.net SVN: squirrel-sql:[6357] trunk/sql12/app/src/main/java/net/ sourcefo
A Java SQL client for any JDBC compliant database
Brought to you by:
colbell,
gerdwagner
From: <wi...@us...> - 2011-08-16 18:39:12
|
Revision: 6357 http://squirrel-sql.svn.sourceforge.net/squirrel-sql/?rev=6357&view=rev Author: wis775 Date: 2011-08-16 18:39:06 +0000 (Tue, 16 Aug 2011) Log Message: ----------- Make sure, that in any case, even when a exception occurs, the RSDS is set to null, so that the GC can clean them. Modified Paths: -------------- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLExecutionHandler.java Modified: trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLExecutionHandler.java =================================================================== --- trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLExecutionHandler.java 2011-08-13 08:13:09 UTC (rev 6356) +++ trunk/sql12/app/src/main/java/net/sourceforge/squirrel_sql/client/session/mainpanel/SQLExecutionHandler.java 2011-08-16 18:39:06 UTC (rev 6357) @@ -394,26 +394,35 @@ public void sqlResultSetAvailable(ResultSet rs, SQLExecutionInfo info, IDataSetUpdateableTableModel model) throws DataSetException { - // i18n[SQLResultExecuterPanel.outputStatus=Building output...] - String outputStatus = s_stringMgr.getString("SQLResultExecuterPanel.outputStatus"); + // i18n[SQLResultExecuterPanel.outputStatus=Building output...] + String outputStatus = s_stringMgr.getString("SQLResultExecuterPanel.outputStatus"); - _cancelPanelCtrl.setStatusLabel(outputStatus); - rsds = new ResultSetDataSet(); + _cancelPanelCtrl.setStatusLabel(outputStatus); + rsds = new ResultSetDataSet(); + try { - SessionProperties props = _session.getProperties(); + SessionProperties props = _session.getProperties(); - ResultSetMetaDataDataSet rsmdds = null; - if (props.getShowResultsMetaData()) - { - rsmdds = new ResultSetMetaDataDataSet(rs); - } - DialectType dialectType = - DialectFactory.getDialectType(_session.getMetaData()); - - info.setNumberResultRowsRead(rsds.setContentsTabResultSet(rs, null, dialectType)); + ResultSetMetaDataDataSet rsmdds = null; + if (props.getShowResultsMetaData()) + { + rsmdds = new ResultSetMetaDataDataSet(rs); + } + DialectType dialectType = + DialectFactory.getDialectType(_session.getMetaData()); - _executionHandlerListener.addResultsTab(info, rsds, rsmdds, model, _resultTabToReplace); - rsds = null; + info.setNumberResultRowsRead(rsds.setContentsTabResultSet(rs, null, dialectType)); + + _executionHandlerListener.addResultsTab(info, rsds, rsmdds, model, _resultTabToReplace); + + }finally{ + /* + * Make sure, that in any case, even when a exception occurs, the rsds is set to null, so that + * the GC can clean them. + */ + rsds = null; + } + } public void sqlExecutionWarning(SQLWarning warn) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |