InputStream: add static method OpenReady()
Merge some duplicate code.
This commit is contained in:
@@ -92,7 +92,7 @@ int main(int argc, char **argv)
|
||||
if (playlist == NULL) {
|
||||
/* open the stream and wait until it becomes ready */
|
||||
|
||||
is = InputStream::Open(uri, mutex, cond, error);
|
||||
is = InputStream::OpenReady(uri, mutex, cond, error);
|
||||
if (is == NULL) {
|
||||
if (error.IsDefined())
|
||||
LogError(error);
|
||||
@@ -102,8 +102,6 @@ int main(int argc, char **argv)
|
||||
return 2;
|
||||
}
|
||||
|
||||
is->LockWaitReady();
|
||||
|
||||
/* open the playlist */
|
||||
|
||||
playlist = playlist_list_open_stream(*is, uri);
|
||||
|
@@ -49,23 +49,6 @@ dump_text_file(TextInputStream &is)
|
||||
static int
|
||||
dump_input_stream(InputStream &is)
|
||||
{
|
||||
Error error;
|
||||
|
||||
is.Lock();
|
||||
|
||||
/* wait until the stream becomes ready */
|
||||
|
||||
is.WaitReady();
|
||||
|
||||
if (!is.Check(error)) {
|
||||
LogError(error);
|
||||
is.Unlock();
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
/* read data and tags from the stream */
|
||||
|
||||
is.Unlock();
|
||||
{
|
||||
TextInputStream tis(is);
|
||||
dump_text_file(tis);
|
||||
@@ -73,6 +56,7 @@ dump_input_stream(InputStream &is)
|
||||
|
||||
is.Lock();
|
||||
|
||||
Error error;
|
||||
if (!is.Check(error)) {
|
||||
LogError(error);
|
||||
is.Unlock();
|
||||
@@ -121,7 +105,7 @@ int main(int argc, char **argv)
|
||||
Mutex mutex;
|
||||
Cond cond;
|
||||
|
||||
InputStream *is = InputStream::Open(argv[1], mutex, cond, error);
|
||||
InputStream *is = InputStream::OpenReady(argv[1], mutex, cond, error);
|
||||
if (is != NULL) {
|
||||
ret = dump_input_stream(*is);
|
||||
is->Close();
|
||||
|
@@ -113,26 +113,13 @@ int main(int argc, char **argv)
|
||||
Mutex mutex;
|
||||
Cond cond;
|
||||
|
||||
InputStream *is = InputStream::Open(path, mutex, cond,
|
||||
error);
|
||||
InputStream *is = InputStream::OpenReady(path, mutex, cond,
|
||||
error);
|
||||
if (is == NULL) {
|
||||
FormatError(error, "Failed to open %s", path);
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
mutex.lock();
|
||||
|
||||
is->WaitReady();
|
||||
|
||||
if (!is->Check(error)) {
|
||||
mutex.unlock();
|
||||
|
||||
FormatError(error, "Failed to read %s", path);
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
mutex.unlock();
|
||||
|
||||
success = plugin->ScanStream(*is, print_handler, nullptr);
|
||||
is->Close();
|
||||
}
|
||||
|
@@ -50,16 +50,6 @@ dump_input_stream(InputStream *is)
|
||||
|
||||
is->Lock();
|
||||
|
||||
/* wait until the stream becomes ready */
|
||||
|
||||
is->WaitReady();
|
||||
|
||||
if (!is->Check(error)) {
|
||||
LogError(error);
|
||||
is->Unlock();
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
|
||||
/* print meta data */
|
||||
|
||||
if (!is->mime.empty())
|
||||
@@ -139,7 +129,7 @@ int main(int argc, char **argv)
|
||||
Mutex mutex;
|
||||
Cond cond;
|
||||
|
||||
is = InputStream::Open(argv[1], mutex, cond, error);
|
||||
is = InputStream::OpenReady(argv[1], mutex, cond, error);
|
||||
if (is != NULL) {
|
||||
ret = dump_input_stream(is);
|
||||
is->Close();
|
||||
|
Reference in New Issue
Block a user