public static synchronized void cleanup(ResultSet R){
  Statement S=null;
  if (R != null) {
    try {
      S=R.getStatement();
    }
 catch (    Throwable t) {
      surfaceThrowable("cleanup() called ResultSet.getStatement()",t);
    }
    cleanup(S,R);
  }
}

public static synchronized void cleanup ( ResultSet R ) { Statement S = null ; if ( R != null ) { try { S = R . getStatement ( ) ; } catch ( Throwable t ) { surfaceThrowable ( "cleanup() called ResultSet.getStatement()" , t ) ; } cleanup ( S , R ) ; } }
overload of cleanup ( s , r ) when only r is visible to caller .
