Bug 518659. If we finish decoding while loading metadata, go directly to COMPLETED instead of trying to decode again which violates liboggplay's assumptions. r=kinetik

This commit is contained in:
Robert O'Callahan 2009-10-05 17:02:36 +13:00
Родитель 971b4a6d8e
Коммит 98b9d8c4e3
1 изменённых файлов: 7 добавлений и 2 удалений

Просмотреть файл

@ -1473,8 +1473,13 @@ nsresult nsOggDecodeStateMachine::Run()
NS_DispatchToMainThread(metadataLoadedEvent, NS_DISPATCH_NORMAL);
if (mState == DECODER_STATE_DECODING_METADATA) {
LOG(PR_LOG_DEBUG, ("%p Changed state from DECODING_METADATA to DECODING", mDecoder));
mState = DECODER_STATE_DECODING;
if (r == E_OGGPLAY_OK) {
LOG(PR_LOG_DEBUG, ("%p Changed state from DECODING_METADATA to COMPLETED", mDecoder));
mState = DECODER_STATE_COMPLETED;
} else {
LOG(PR_LOG_DEBUG, ("%p Changed state from DECODING_METADATA to DECODING", mDecoder));
mState = DECODER_STATE_DECODING;
}
}
}
break;