c.closeStatement(fixedStmt, true);
if (fixedStmt.isValid()) c.closeStatement(fixedStmt, true);
    public void close() throws  SQLException {        if (closed)            throw new FBSQLException("This statement is already closed.");                    Object syncObject = getSynchronizationObject();                synchronized(syncObject) {            try {                if (fixedStmt != null) {                    try {                        try {                            if (currentRs != null)                                currentRs.close();                            if (currentCachedResultSet != null)                                currentCachedResultSet.close();                        } finally {                            currentRs = null;                            currentCachedResultSet = null;                            //may need ensureTransaction?                            c.closeStatement(fixedStmt, true);                        }                    } catch (GDSException ge) {                        throw new FBSQLException(ge);                    } finally {                        fixedStmt = null;                        closed = true;                    }                } else                    closed = true;            } finally {                c.notifyStatementClosed(this);            }        }    }