After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 498238 - [directdrawsink] video_window is not reinitialized
[directdrawsink] video_window is not reinitialized
Status: RESOLVED INCOMPLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-good
0.10.6
Other Windows
: Normal major
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2007-11-19 17:09 UTC by Samuel Vinson
Modified: 2009-01-19 14:18 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Samuel Vinson 2007-11-19 17:09:44 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:
Comment 1 Tim-Philipp Müller 2008-01-07 15:20:58 UTC
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?
Comment 2 Christoph Wurm 2009-01-19 14:18:09 UTC
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!