fix deadlock due to double lock

runHawkInterpreter and getContext were both calling withLock, so calling
getContext inside runHawkInterpreter leads to trouble.