GNOME Bugzilla – Bug 498238
[directdrawsink] video_window is not reinitialized
Last modified: 2009-01-19 14:18:09 UTC
Please describe the problem: When you stop directdrawsink and start, directdrawsink can't create a new window. In gst_directdraw_sink_cleanup function of gstdirectdrawsink.c, there is this code : /* Post quit message and wait for our event window thread */ if (ddrawsink->video_window && ddrawsink->our_video_window) PostMessage (ddrawsink->video_window, WM_QUIT, 0, 0); But I think it should be this : /* Post quit message and wait for our event window thread */ if (ddrawsink->video_window && ddrawsink->our_video_window) { PostMessage (ddrawsink->video_window, WM_QUIT, 0, 0); ddrawsink->video_window = NULL; } Steps to reproduce: 1. 2. 3. Actual results: Expected results: Does this happen every time? Other information:
The way I read the code it should be reset to NULL in gst_directdraw_sink_window_thread(), and _sink_cleanup() waits for that to be processed via g_thread_join(). (Not sure why PostMessage(.., WM_QUIT,..) btw, and not PostQuitMessage()). Do you know why that doesn't work/happen?
Closing this bug report as no further information has been provided. Please feel free to reopen this bug if you can provide the information asked for. Thanks!