Preparation for the next commit.
Signed-off-by: Akihiro Sagawa sagawa.aki@gmail.com --- dlls/quartz/window.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
Hi,
While running your changed tests, I think I found new failures. Being a bot and all I'm not very good at pattern recognition, so I might be wrong, but could you please double-check?
Full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=89994
Your paranoid android.
=== debiant2 (build log) ===
winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1: winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1:
=== debiant2 (build log) ===
winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1: winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video0: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video0: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin2/GstDecodeBin:decodebin2/avdec_mpeg2video:avdec_mpeg2video0: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1: winegstreamer: error: avdec_mpeg2video1: No valid frames decoded before end of stream winegstreamer: error: avdec_mpeg2video1: ../gst-libs/gst/video/gstvideodecoder.c(1246): gst_video_decoder_sink_event_default (): /GstBin:bin3/GstDecodeBin:decodebin3/avdec_mpeg2video:avdec_mpeg2video1:
Sorry for neglecting this series for a long time. I assumed it was causing test failures, but on further examination, all of the quartz failures seem to be preëxisting, and while I've never seen those GStreamer errors from the testbot before, they can't possibly be related to these patches.
On 5/6/21 9:06 AM, Akihiro Sagawa wrote:
From: Akihiro Sagawa sagawa.aki@gmail.com Subject: [PATCH 2/4] quartz: Use own destory message in video window. Message-Id: 20210506230501.D291.375B48EC@gmail.com Date: Thu, 06 May 2021 23:06:00 +0900
Preparation for the next commit.
Personally I'd be more inclined to just merge the two together; it's arguably clearer that way.
Signed-off-by: Akihiro Sagawa sagawa.aki@gmail.com
dlls/quartz/window.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/dlls/quartz/window.c b/dlls/quartz/window.c index 3983d43b08f..bc34cd37cf9 100644 --- a/dlls/quartz/window.c +++ b/dlls/quartz/window.c @@ -20,6 +20,8 @@
#include "quartz_private.h"
+#define WM_QUARTZ_DESTROY (WM_USER + WM_DESTROY)
WINE_DEFAULT_DEBUG_CHANNEL(quartz);
static const WCHAR class_name[] = L"wine_quartz_window"; @@ -71,6 +73,9 @@ static LRESULT CALLBACK WndProcW(HWND hwnd, UINT message, WPARAM wparam, LPARAM if (window->default_dst) GetClientRect(window->hwnd, &window->dst); break;
case WM_QUARTZ_DESTROY:
DestroyWindow(hwnd);
return 0;
}
return DefWindowProcW(hwnd, message, wparam, lparam);
@@ -1251,7 +1256,7 @@ void video_window_cleanup(struct video_window *window) * it would become top-level for a brief period before being destroyed. */ SetWindowLongW(window->hwnd, GWL_STYLE, GetWindowLongW(window->hwnd, GWL_STYLE) & ~WS_CHILD);
SendMessageW(window->hwnd, WM_CLOSE, 0, 0);
}SendMessageW(window->hwnd, WM_QUARTZ_DESTROY, 0, 0); window->hwnd = NULL;
}