GNOME Bugzilla – Bug 432362
[ximagesink] doesn't build if XShm is not available
Last modified: 2007-04-24 20:48:47 UTC
configure: *** Plug-ins without external dependencies that will be built: adder audioconvert audiorate audioresample audiotestsrc ffmpegcolorspace gdp playback typefind videorate videoscale videotestsrc volume configure: *** Plug-ins without external dependencies that will NOT be built: configure: *** Plug-ins with dependencies that will be built: alsa gnomevfs ogg pango video4linux ximagesink configure: *** Plug-ins with dependencies that will NOT be built: cdparanoia libvisual theora vorbis xvimagesink [...] ximagesink.c: In function 'gst_ximagesink_ximage_new': ximagesink.c:429: error: 'error_caught' undeclared (first use in this function) ximagesink.c:429: error: (Each undeclared identifier is reported only once ximagesink.c:429: error: for each function it appears in.) ximagesink.c:430: error: 'gst_ximagesink_handle_xerror' undeclared (first use in this function) make[3]: *** [libgstximagesink_la-ximagesink.lo] Fehler 1 make[3]: Verlasse Verzeichnis '/media/bigspace/cvs/gnome/gst-plugins-base/sys/ximage'
error_caught is declared static for the module within a #ifdef HAVE_XSHM block. function 'gst_ximagesink_ximage_new' is not within that block.
Created attachment 86878 [details] [review] fixes the build Fixes the build for me. If I am not mistaken it has no impact on the other case when HAVE_XSHM is defined.
Thanks, applied: 2007-04-24 Tim-Philipp Müller <tim at centricular dot net> Patch by: Christian Kirbach <Christian dot Kirbach at googlemail com> * sys/ximage/ximagesink.c: Fix build if XShm is not available (#432362). (be advised though that you might run into problems with odd widths in the non-XShm code paths, since almost all GStreamer code expects RGB strides to be rounded up to multiples of 4, but it appears that Xlib doesn't necessarily do that in the non-XShm code path - at least it doesn't with my driver (xfree nv on edgy), which may lead to anything from crashes to distorted images; will try to commit something to at least avoid crashes).