Fix NullPointerException in parse timeout recovery

The current code checks for a null driver.getParser() to get a parser from the SGLRException then tries to use driver.getParser() rather than the new parser variable.

Also the code layout was confusing as the if statements were not correctly idented making the code hard to follow.