From: Ziqing Hui zhui@codeweavers.com
Calling IAsyncReader_SyncRead() with 0 size may fails, but we should not return error with 0 size, so we handle it earlier. --- dlls/winegstreamer/quartz_parser.c | 6 ++++++ 1 file changed, 6 insertions(+)
diff --git a/dlls/winegstreamer/quartz_parser.c b/dlls/winegstreamer/quartz_parser.c index 90dbc067bb4..19b104d55df 100644 --- a/dlls/winegstreamer/quartz_parser.c +++ b/dlls/winegstreamer/quartz_parser.c @@ -1374,6 +1374,12 @@ static DWORD CALLBACK read_thread(void *arg) else if (offset + size >= file_size) size = file_size - offset;
+ if (!size) + { + wg_parser_push_data(filter->wg_parser, data, 0); + continue; + } + if (!array_reserve(&data, &buffer_size, size, 1)) { free(data);