lib: fixed state machine bug in Restore::SkipCurrentDB()
If for some reason, the user wishes to skip a database, and then call
GetNextMeta() right after it to process the next database, the old code
would have the state stuck in RS_DBEND, which would only get cleared in
the BuildRecord() callback.
The barrybackup GUI hit this bug... it uses SkipCurrentDB() in the
exception handler to clear an errored database, but if the state wasn't
reset, it got stuck in an endless loop of EoF checks and GetNextMeta().