{
_onDraw( canvas );
}
catch( Throwable t )
{
<BUG>String hint = "";
if ( cr != null ) hint = cr.cleanOnOOM();
cr = null;</BUG>
try { Thread.sleep( 2000 ); } catch( InterruptedException ie ) {}
<BUG>((BRouterActivity)getContext()).showErrorMessage( t.toString() + hint );
waitingForSelection = true;</BUG>
}

{
tracksDir = cor.basedir + cor.tracksdir;
assertDirectoryExists( "track directory", tracksDir, null );
File tracksDirPointer = new File( tracksDir + "/brouter.redirect" );
if ( tracksDirPointer.isFile() )
{
tracksDir = readSingleLineFile( tracksDirPointer );
if ( tracksDir == null ) throw new IllegalArgumentException( "redirect pointer file is empty: " + tracksDirPointer );
if ( !(new File( tracksDir ).isDirectory()) ) throw new IllegalArgumentException(
"redirect pointer file " + tracksDirPointer + " does not point to a directory: " + tracksDir );
