Fair question.  Yes, it will recursively release the lock, and that does not matter.  I could have added it as an else, but would have to duplicate the call before the "raise" four lines above.  I thought this was simpler, but can change it if you think it's clearer.