ext/gdk_pixbuf/pixbufscale.c: Correct caps negotiation

Original commit message from CVS:
* ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_getcaps):
Correct caps negotiation
* gst/volume/gstvolume.c: (volume_chain_float),
(volume_chain_int16):
Modify debug output to be little more informative
* sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls),
(gst_xvimagesink_xvimage_destroy):
Add XSync calls after detaching from the shared memory segment to
avoid a crash.
This commit is contained in:
Jan Schmidt 2004-09-22 15:03:08 +00:00
parent fa3ce15bbc
commit 771b0248e7
4 changed files with 27 additions and 1 deletions

View file

@ -1,3 +1,16 @@
2004-09-23 Jan Schmidt <thaytan@mad.scientist.com>
* ext/gdk_pixbuf/pixbufscale.c: (gst_pixbufscale_getcaps):
Correct caps negotiation
* gst/volume/gstvolume.c: (volume_chain_float),
(volume_chain_int16):
Modify debug output to be little more informative
* sys/ximage/ximagesink.c: (gst_ximagesink_check_xshm_calls):
* sys/xvimage/xvimagesink.c: (gst_xvimagesink_check_xshm_calls),
(gst_xvimagesink_xvimage_destroy):
Add XSync calls after detaching from the shared memory segment to
avoid a crash.
2004-09-22 Zaheer Abbas Merali <zaheerabbas at merali dot org>
* ext/ogg/gstoggmux.c: (gst_ogg_mux_init),

View file

@ -421,6 +421,8 @@ volume_chain_float (GstPad * pad, GstData * _data)
filter = GST_VOLUME (GST_OBJECT_PARENT (pad));
g_return_if_fail (GST_IS_VOLUME (filter));
GST_LOG_OBJECT (filter, "processing incoming float buffer with refcount %d",
GST_BUFFER_REFCOUNT_VALUE (buf));
out_buf = gst_buffer_copy_on_write (buf);
data = (gfloat *) GST_BUFFER_DATA (out_buf);
@ -453,7 +455,7 @@ volume_chain_int16 (GstPad * pad, GstData * _data)
filter = GST_VOLUME (GST_OBJECT_PARENT (pad));
g_return_if_fail (GST_IS_VOLUME (filter));
GST_LOG_OBJECT (filter, "processing incoming buffer with refcount %d",
GST_LOG_OBJECT (filter, "processing incoming int16 buffer with refcount %d",
GST_BUFFER_REFCOUNT_VALUE (buf));
out_buf = gst_buffer_copy_on_write (buf);

View file

@ -153,9 +153,14 @@ gst_ximagesink_check_xshm_calls (GstXContext * xcontext)
XSync (xcontext->disp, 0);
XShmDetach (xcontext->disp, &ximage->SHMInfo);
XSync (xcontext->disp, FALSE);
shmdt (ximage->SHMInfo.shmaddr);
shmctl (ximage->SHMInfo.shmid, IPC_RMID, 0);
/* To be sure, reset the SHMInfo entry */
ximage->SHMInfo.shmaddr = ((void *) -1);
/* store whether we succeeded in result and reset error_caught */
result = !error_caught;
error_caught = FALSE;

View file

@ -163,9 +163,14 @@ gst_xvimagesink_check_xshm_calls (GstXContext * xcontext)
XSync (xcontext->disp, 0);
XShmDetach (xcontext->disp, &xvimage->SHMInfo);
XSync (xcontext->disp, FALSE);
shmdt (xvimage->SHMInfo.shmaddr);
shmctl (xvimage->SHMInfo.shmid, IPC_RMID, 0);
/* To be sure, reset the SHMInfo entry */
ximage->SHMInfo.shmaddr = ((void *) -1);
/* store whether we succeeded in result and reset error_caught */
result = !error_caught;
error_caught = FALSE;
@ -289,6 +294,7 @@ gst_xvimagesink_xvimage_destroy (GstXvImageSink * xvimagesink,
if (xvimagesink->xcontext->use_xshm) {
if (xvimage->SHMInfo.shmaddr != ((void *) -1)) {
XShmDetach (xvimagesink->xcontext->disp, &xvimage->SHMInfo);
XSync (xvimagesink->xcontext->disp, FALSE);
shmdt (xvimage->SHMInfo.shmaddr);
}
if (xvimage->SHMInfo.shmid > 0)