On Sat, Jan 10, 2009 at 06:26:52PM -0500, Brad wrote:
> On Thu, Jan 08, 2009 at 02:21:37AM -0500, Brad wrote:
> > Here is an update to Xine-lib 1.1.16. A bunch of security fixes
> > and a lot of bug fixes.
> > 
> > * Security fixes:
> >   - Heap overflow in Quicktime atom parsing.  (CVE-2008-5234 vector 1)
> >   - Multiple buffer overflows.                (CVE-2008-5236)
> >   - Multiple integer overflows.               (CVE-2008-5237)
> >   - Unchecked read function results.          (CVE-2008-5239)
> >   - Unchecked malloc using untrusted values.  (CVE-2008-5240 vectors 3 & 4)
> >   - Buffer indexing using an untrusted value. (CVE-2008-5243)
> > 
> > Please test.
> 
> If you had problems building the previous revision of this diff please
> try this revision as it should resolve those issues..

A quick 1.1.16.1 release has been made which consits of mainly
bug fixes, build fixes and a regression fix or two for 1.1.16.
Please test.


Index: Makefile
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/Makefile,v
retrieving revision 1.45
diff -u -p -r1.45 Makefile
--- Makefile    29 Dec 2008 23:26:21 -0000      1.45
+++ Makefile    12 Jan 2009 00:22:23 -0000
@@ -5,15 +5,15 @@ SHARED_ONLY=          Yes
 COMMENT-main=          multimedia decoding library
 COMMENT-jack=          jackd audio output module for xine-lib
 
-V=                     1.1.15
+V=                     1.1.16.1
 DISTNAME=              xine-lib-${V}
-PKGNAME-main=          ${DISTNAME}p7
+PKGNAME-main=          ${DISTNAME}
 PKGNAME-jack=          xine-lib-jack-${V}
 CATEGORIES=            multimedia
 MASTER_SITES=          ${MASTER_SITE_SOURCEFORGE:=xine/}
 EXTRACT_SUFX=          .tar.bz2
 
-SHARED_LIBS=           xine    23.0
+SHARED_LIBS=           xine    24.0
 
 HOMEPAGE=              http://xinehq.de/
 
@@ -41,7 +41,7 @@ LIB_DEPENDS-main=     ${LIB_DEPENDS} \
                        FLAC.>=5::audio/flac \
                        SDL.>=3::devel/sdl \
                        a52::audio/liba52 \
-                       avcodec.>=7,postproc.>=7::graphics/ffmpeg \
+                       avcodec.>=7,avutil.>=6,postproc.>=7::graphics/ffmpeg \
                        dvdnav.>=5::multimedia/libdvdnav \
                        faad.>=2::audio/faad \
                        mad.>=2::audio/libmad \
@@ -61,7 +61,7 @@ USE_GMAKE=            Yes
 USE_LIBTOOL=           Yes
 LIBTOOL_FLAGS+=                --tag=disable-static
 
-XINEAPI_REV=           1.24
+XINEAPI_REV=           1.25
 SUBST_VARS+=           XINEAPI_REV
 
 .if ${MACHINE_ARCH} == "i386"
Index: distinfo
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/distinfo,v
retrieving revision 1.14
diff -u -p -r1.14 distinfo
--- distinfo    20 Aug 2008 01:54:01 -0000      1.14
+++ distinfo    12 Jan 2009 00:23:18 -0000
@@ -1,5 +1,5 @@
-MD5 (xine-lib-1.1.15.tar.bz2) = QqK0iTt/iS6zNN4vw21JyA==
-RMD160 (xine-lib-1.1.15.tar.bz2) = XGTdUcBabhfLbfy7ipAJuoVxx18=
-SHA1 (xine-lib-1.1.15.tar.bz2) = vLVn6ioRxfJrI4TVQAuEZuqQSMY=
-SHA256 (xine-lib-1.1.15.tar.bz2) = B93yqfUhQX3S8JdTSlLd2dKINnmTL5Za5+ewEl08ncw=
-SIZE (xine-lib-1.1.15.tar.bz2) = 7478750
+MD5 (xine-lib-1.1.16.1.tar.bz2) = neEdt+JixWTP26mEGgkuvg==
+RMD160 (xine-lib-1.1.16.1.tar.bz2) = PHaxL66Muofm07zq/L8vs++U4WQ=
+SHA1 (xine-lib-1.1.16.1.tar.bz2) = gnCSVKBgPjlxBYqs+FeJJrddSiA=
+SHA256 (xine-lib-1.1.16.1.tar.bz2) = 
n8JS0G5dskJlyDB2Z2vR8dDgk1cyufIex/yqw1v4CjY=
+SIZE (xine-lib-1.1.16.1.tar.bz2) = 7382381
Index: patches/patch-configure_ac
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/patches/patch-configure_ac,v
retrieving revision 1.1
diff -u -p -r1.1 patch-configure_ac
--- patches/patch-configure_ac  14 Dec 2008 23:57:34 -0000      1.1
+++ patches/patch-configure_ac  12 Jan 2009 00:25:07 -0000
@@ -1,6 +1,6 @@
 $OpenBSD: patch-configure_ac,v 1.1 2008/12/14 23:57:34 brad Exp $
---- configure.ac.orig  Wed Aug 13 12:26:38 2008
-+++ configure.ac       Wed Dec 10 23:54:45 2008
+--- configure.ac.orig  Sun Jan 11 18:58:58 2009
++++ configure.ac       Sun Jan 11 19:24:07 2009
 @@ -206,6 +206,10 @@ AC_PROG_GMSGFMT_PLURAL
  
  AC_CHECK_FUNCS([nl_langinfo])
@@ -12,7 +12,7 @@ $OpenBSD: patch-configure_ac,v 1.1 2008/
  dnl ---------------------------------------------
  dnl Checks for typedefs, structures, and compiler characteristics.
  dnl ---------------------------------------------
-@@ -537,9 +541,9 @@ t q
+@@ -539,9 +543,9 @@ t q
  b
  :q
  q"
@@ -24,7 +24,7 @@ $OpenBSD: patch-configure_ac,v 1.1 2008/
  AC_DEFINE_UNQUOTED([LIBXV_SO],  "${x_lib_location:-libXv.so}",  [The soname 
of libXv, needed for dlopen()])
  
  
-@@ -1264,7 +1268,7 @@ if test "x$enable_a52dec" = "xno"; then
+@@ -1261,7 +1265,7 @@ if test "x$enable_a52dec" = "xno"; then
    AC_MSG_RESULT([a52dec support disabled])
  elif test "x$external_a52dec" = "xyes"; then
    have_a52="yes"
@@ -33,7 +33,7 @@ $OpenBSD: patch-configure_ac,v 1.1 2008/
  [
    #ifdef HAVE_SYS_TYPES_H
    # include <sys/types.h>
-@@ -1355,9 +1359,10 @@ if test "x$with_mng" = "xyes"; then
+@@ -1352,9 +1356,10 @@ if test "x$with_mng" = "xyes"; then
    AC_CHECK_LIB(mng, mng_initialize,
        [ AC_CHECK_HEADER(libmng.h,
                [ have_libmng=yes
@@ -46,7 +46,7 @@ $OpenBSD: patch-configure_ac,v 1.1 2008/
    AC_SUBST(MNG_LIBS)
  else
    have_libmng=no
-@@ -1550,6 +1555,28 @@ AM_CONDITIONAL([HAVE_JACK], [test "x$have_jack" = "xye
+@@ -1547,6 +1552,28 @@ AM_CONDITIONAL([HAVE_JACK], [test "x$have_jack" = "xye
  
  
  dnl ---------------------------------------------
@@ -75,7 +75,7 @@ $OpenBSD: patch-configure_ac,v 1.1 2008/
  dnl gnome-vfs support
  dnl ---------------------------------------------
  
-@@ -2513,7 +2540,7 @@ dnl ---------------------------------------------
+@@ -2505,7 +2532,7 @@ dnl ---------------------------------------------
  
  XINE_BUILD_CC="`$CC -v 2>&1 | tail -1 2>/dev/null`"
  XINE_BUILD_OS="`uname -s -r -m`"
@@ -84,16 +84,7 @@ $OpenBSD: patch-configure_ac,v 1.1 2008/
  AC_SUBST(XINE_BUILD_CC)
  AC_SUBST(XINE_BUILD_OS)
  AC_SUBST(XINE_BUILD_DATE)
-@@ -2651,7 +2678,7 @@ case $host in
-      dnl FreeBSD (et al.) does not complete linking for shared objects when 
pthreads
-      dnl are requested, as different implementations are present; to avoid 
problems
-      dnl use -Wl,-z,defs only for those platform not behaving this way.
--     *-freebsd*) ;;
-+     *-freebsd*|*-openbsd*) ;;
-      *)
-       AC_TRY_LDFLAGS([-Wl,-z,defs], [NOUNDEF="-Wl,-z,defs"])
-       ;;
-@@ -3173,6 +3200,9 @@ if test "x$have_pulseaudio" = "xyes"; then
+@@ -3159,6 +3186,9 @@ if test "x$have_pulseaudio" = "xyes"; then
  fi
  if test "x$have_jack" = "xyes"; then
    echo "   - Jack"
Index: patches/patch-m4_attributes_m4
===================================================================
RCS file: patches/patch-m4_attributes_m4
diff -N patches/patch-m4_attributes_m4
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-m4_attributes_m4      8 Jan 2009 06:13:53 -0000
@@ -0,0 +1,12 @@
+$OpenBSD$
+--- m4/attributes.m4.orig      Thu Jan  8 01:12:43 2009
++++ m4/attributes.m4   Thu Jan  8 01:13:31 2009
+@@ -109,7 +109,7 @@ AC_DEFUN([CC_NOUNDEFINED], [
+      dnl FreeBSD (et al.) does not complete linking for shared objects when 
pthreads
+      dnl are requested, as different implementations are present; to avoid 
problems
+      dnl use -Wl,-z,defs only for those platform not behaving this way.
+-     *-freebsd*) ;;
++     *-freebsd* | *-openbsd*) ;;
+      *)
+         dnl First of all check for the --no-undefined variant of GNU ld. This 
allows
+         dnl for a much more readable commandline, so that people can 
understand what
Index: patches/patch-src_audio_out_Makefile_in
===================================================================
RCS file: 
/cvs/ports/multimedia/xine-lib/patches/patch-src_audio_out_Makefile_in,v
retrieving revision 1.12
diff -u -p -r1.12 patch-src_audio_out_Makefile_in
--- patches/patch-src_audio_out_Makefile_in     29 Dec 2008 23:26:21 -0000      
1.12
+++ patches/patch-src_audio_out_Makefile_in     8 Jan 2009 06:09:34 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-src_audio_out_Makefile_in,v 1.12 2008/12/29 23:26:21 jakemsr 
Exp $
---- src/audio_out/Makefile.in.orig     Thu Aug 14 17:18:39 2008
-+++ src/audio_out/Makefile.in  Sat Dec 27 20:50:00 2008
-@@ -170,6 +170,18 @@ xineplug_ao_out_jack_la_LINK = $(LIBTOOL) --tag=CC $(A
+--- src/audio_out/Makefile.in.orig     Wed Jan  7 11:16:50 2009
++++ src/audio_out/Makefile.in  Thu Jan  8 01:02:34 2009
+@@ -171,6 +171,18 @@ xineplug_ao_out_jack_la_LINK = $(LIBTOOL) --tag=CC $(A
        $(xineplug_ao_out_jack_la_LDFLAGS) $(LDFLAGS) -o $@
  @have_jack_t...@am_xineplug_ao_out_jack_la_rpath = -rpath \
  @HAVE_JACK_TRUE@      $(xineplugdir)
@@ -20,7 +20,7 @@ $OpenBSD: patch-src_audio_out_Makefile_i
  xineplug_ao_out_none_la_DEPENDENCIES = $(XINE_LIB) \
        $(am__DEPENDENCIES_1)
  am_xineplug_ao_out_none_la_OBJECTS =  \
-@@ -233,6 +245,7 @@ SOURCES = $(xineplug_ao_out_alsa_la_SOURCES) \
+@@ -234,6 +246,7 @@ SOURCES = $(xineplug_ao_out_alsa_la_SOURCES) \
        $(xineplug_ao_out_file_la_SOURCES) \
        $(xineplug_ao_out_fusionsound_la_SOURCES) \
        $(xineplug_ao_out_jack_la_SOURCES) \
@@ -28,7 +28,7 @@ $OpenBSD: patch-src_audio_out_Makefile_i
        $(xineplug_ao_out_none_la_SOURCES) \
        $(xineplug_ao_out_oss_la_SOURCES) \
        $(xineplug_ao_out_pulseaudio_la_SOURCES) \
-@@ -246,6 +259,7 @@ DIST_SOURCES = $(xineplug_ao_out_alsa_la_SOURCES) \
+@@ -247,6 +260,7 @@ DIST_SOURCES = $(xineplug_ao_out_alsa_la_SOURCES) \
        $(xineplug_ao_out_file_la_SOURCES) \
        $(xineplug_ao_out_fusionsound_la_SOURCES) \
        $(xineplug_ao_out_jack_la_SOURCES) \
@@ -36,7 +36,7 @@ $OpenBSD: patch-src_audio_out_Makefile_i
        $(xineplug_ao_out_none_la_SOURCES) \
        $(xineplug_ao_out_oss_la_SOURCES) \
        $(xineplug_ao_out_pulseaudio_la_SOURCES) \
-@@ -355,6 +369,8 @@ IRIXAL_LIBS = @IRIXAL_LIBS@
+@@ -358,6 +372,8 @@ IRIXAL_LIBS = @IRIXAL_LIBS@
  IRIXAL_STATIC_LIB = @IRIXAL_STATIC_LIB@
  JACK_CFLAGS = @JACK_CFLAGS@
  JACK_LIBS = @JACK_LIBS@
@@ -44,8 +44,8 @@ $OpenBSD: patch-src_audio_out_Makefile_i
 +SNDIO_LIBS = @SNDIO_LIBS@
  KSTAT_LIBS = @KSTAT_LIBS@
  LDFLAGS = @LDFLAGS@
- LIBCDIO_CFLAGS = @LIBCDIO_CFLAGS@
-@@ -583,6 +599,7 @@ EXTRA_DIST = audio_irixal_out.c
+ LDFLAGS_NOUNDEFINED = @LDFLAGS_NOUNDEFINED@
+@@ -586,6 +602,7 @@ EXTRA_DIST = audio_irixal_out.c
  @have_pulseaudio_t...@pulseaudio_module = xineplug_ao_out_pulseaudio.la
  @have_fusionsound_t...@fusionsound_module = xineplug_ao_out_fusionsound.la
  @have_jack_t...@jack_module = xineplug_ao_out_jack.la
@@ -53,7 +53,7 @@ $OpenBSD: patch-src_audio_out_Makefile_i
  
  # IMPORTANT:
  # ---------
-@@ -600,7 +617,8 @@ xineplug_LTLIBRARIES = xineplug_ao_out_none.la xineplu
+@@ -603,7 +620,8 @@ xineplug_LTLIBRARIES = xineplug_ao_out_none.la xineplu
        $(pulseaudio_module) \
        $(directx2_module)      \
        $(fusionsound_module) \
@@ -63,7 +63,7 @@ $OpenBSD: patch-src_audio_out_Makefile_i
  
  xineplug_ao_out_none_la_SOURCES = audio_none_out.c
  xineplug_ao_out_none_la_LIBADD = $(XINE_LIB) $(LTLIBINTL)
-@@ -667,6 +685,10 @@ xineplug_ao_out_jack_la_SOURCES = audio_jack_out.c
+@@ -670,6 +688,10 @@ xineplug_ao_out_jack_la_SOURCES = audio_jack_out.c
  xineplug_ao_out_jack_la_LIBADD = $(XINE_LIB) $(JACK_LIBS) $(LTLIBINTL)
  xineplug_ao_out_jack_la_CFLAGS = $(VISIBILITY_FLAG) $(JACK_CFLAGS)
  xineplug_ao_out_jack_la_LDFLAGS = -avoid-version -module
@@ -74,7 +74,7 @@ $OpenBSD: patch-src_audio_out_Makefile_i
  all: all-am
  
  .SUFFIXES:
-@@ -745,6 +767,8 @@ xineplug_ao_out_fusionsound.la: $(xineplug_ao_out_fusi
+@@ -748,6 +770,8 @@ xineplug_ao_out_fusionsound.la: $(xineplug_ao_out_fusi
        $(xineplug_ao_out_fusionsound_la_LINK) 
$(am_xineplug_ao_out_fusionsound_la_rpath) 
$(xineplug_ao_out_fusionsound_la_OBJECTS) 
$(xineplug_ao_out_fusionsound_la_LIBADD) $(LIBS)
  xineplug_ao_out_jack.la: $(xineplug_ao_out_jack_la_OBJECTS) 
$(xineplug_ao_out_jack_la_DEPENDENCIES) 
        $(xineplug_ao_out_jack_la_LINK) $(am_xineplug_ao_out_jack_la_rpath) 
$(xineplug_ao_out_jack_la_OBJECTS) $(xineplug_ao_out_jack_la_LIBADD) $(LIBS)
@@ -83,7 +83,7 @@ $OpenBSD: patch-src_audio_out_Makefile_i
  xineplug_ao_out_none.la: $(xineplug_ao_out_none_la_OBJECTS) 
$(xineplug_ao_out_none_la_DEPENDENCIES) 
        $(xineplug_ao_out_none_la_LINK) -rpath $(xineplugdir) 
$(xineplug_ao_out_none_la_OBJECTS) $(xineplug_ao_out_none_la_LIBADD) $(LIBS)
  xineplug_ao_out_oss.la: $(xineplug_ao_out_oss_la_OBJECTS) 
$(xineplug_ao_out_oss_la_DEPENDENCIES) 
-@@ -769,6 +793,7 @@ distclean-compile:
+@@ -772,6 +796,7 @@ distclean-compile:
  @AMDEP_TRUE@@am__include@ 
@am__qu...@./$(DEPDIR)/xineplug_ao_out_file_la-audio_file_out....@am__quote@
  @AMDEP_TRUE@@am__include@ 
@am__qu...@./$(DEPDIR)/xineplug_ao_out_fusionsound_la-audio_fusionsound_out....@am__quote@
  @AMDEP_TRUE@@am__include@ 
@am__qu...@./$(DEPDIR)/xineplug_ao_out_jack_la-audio_jack_out....@am__quote@
@@ -91,7 +91,7 @@ $OpenBSD: patch-src_audio_out_Makefile_i
  @AMDEP_TRUE@@am__include@ 
@am__qu...@./$(DEPDIR)/xineplug_ao_out_none_la-audio_none_out....@am__quote@
  @AMDEP_TRUE@@am__include@ 
@am__qu...@./$(DEPDIR)/xineplug_ao_out_oss_la-audio_oss_out....@am__quote@
  @AMDEP_TRUE@@am__include@ 
@am__qu...@./$(DEPDIR)/xineplug_ao_out_pulseaudio_la-audio_pulse_out....@am__quote@
-@@ -857,6 +882,13 @@ xineplug_ao_out_jack_la-audio_jack_out.lo: audio_jack_
+@@ -860,6 +885,13 @@ xineplug_ao_out_jack_la-audio_jack_out.lo: audio_jack_
  @AMDEP_TRUE@@am__fastdepCC_FALSE@     source='audio_jack_out.c' 
object='xineplug_ao_out_jack_la-audio_jack_out.lo' libtool=yes @AMDEPBACKSLASH@
  @AMDEP_TRUE@@am__fastdepCC_FALSE@     DEPDIR=$(DEPDIR) $(CCDEPMODE) 
$(depcomp) @AMDEPBACKSLASH@
  @am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) 
--mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) 
$(CPPFLAGS) $(xineplug_ao_out_jack_la_CFLAGS) $(CFLAGS) -c -o 
xineplug_ao_out_jack_la-audio_jack_out.lo `test -f 'audio_jack_out.c' || echo 
'$(srcdir)/'`audio_jack_out.c
Index: patches/patch-src_audio_out_audio_sun_out_c
===================================================================
RCS file: patches/patch-src_audio_out_audio_sun_out_c
diff -N patches/patch-src_audio_out_audio_sun_out_c
--- patches/patch-src_audio_out_audio_sun_out_c 15 Jan 2008 00:36:46 -0000      
1.6
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,60 +0,0 @@
-$OpenBSD: patch-src_audio_out_audio_sun_out_c,v 1.6 2008/01/15 00:36:46 
jakemsr Exp $
---- src/audio_out/audio_sun_out.c.orig Tue Jan  1 08:30:08 2008
-+++ src/audio_out/audio_sun_out.c      Wed Jan  9 01:50:21 2008
-@@ -582,9 +582,9 @@ static int ao_sun_bytes_per_frame(ao_driver_t *this_ge
- static int ao_sun_delay(ao_driver_t *this_gen)
- {
-   sun_driver_t *this = (sun_driver_t *) this_gen;
-+#ifdef __svr4__
-   audio_info_t info;
- 
--#ifdef __svr4__
-   if (ioctl(this->audio_fd, AUDIO_GETINFO, &info) == 0 &&
-       (this->frames_in_buffer == 0 || info.play.samples > 0)) {
- 
-@@ -632,8 +632,9 @@ static int ao_sun_delay(ao_driver_t *this_gen)
- #endif
-   }
- #else
--  if (ioctl(this->audio_fd, AUDIO_GETINFO, &info) == 0)
--    return info.play.seek / this->bytes_per_frame;
-+  u_long bytes;
-+  if (ioctl(this->audio_fd, AUDIO_WSEEK, &bytes) == 0)
-+    return bytes / this->bytes_per_frame;
- #endif
-   return NOT_REAL_TIME;
- }
-@@ -888,8 +889,7 @@ static int ao_sun_ctrl(ao_driver_t *this_gen, int cmd,
- 
-     this->frames_in_buffer = 0;
-     this->last_samplecnt = 0;
--#endif
--#ifdef __NetBSD__
-+#else
-     ioctl(this->audio_fd, AUDIO_FLUSH);
- #endif
-     break;
-@@ -964,11 +964,20 @@ static ao_driver_t *ao_sun_open_plugin (audio_driver_c
-   status = ioctl(this->audio_fd, AUDIO_SETINFO, &info);
-   
-   if (status < 0) {
--    xprintf(this->xine, XINE_VERBOSITY_LOG,
-+    /* some devices are 48kHz only */
-+    AUDIO_INITINFO(&info);
-+    info.play.encoding = AUDIO_ENCODING_LINEAR;
-+    info.play.precision = AUDIO_PRECISION_16;
-+    info.play.sample_rate = 48000;
-+    status = ioctl(this->audio_fd, AUDIO_SETINFO, &info);
-+
-+    if (status < 0) {
-+      xprintf(this->xine, XINE_VERBOSITY_LOG,
-           _("audio_sun_out: audio ioctl on device %s failed: %s\n"), devname, 
strerror(errno));
- 
--    free (this);
--    return NULL;
-+      free (this);
-+      return NULL;
-+    }
-   }
- 
-   /*
Index: patches/patch-src_demuxers_demux_flv_c
===================================================================
RCS file: patches/patch-src_demuxers_demux_flv_c
diff -N patches/patch-src_demuxers_demux_flv_c
--- patches/patch-src_demuxers_demux_flv_c      16 Sep 2008 02:37:04 -0000      
1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,378 +0,0 @@
-$OpenBSD: patch-src_demuxers_demux_flv_c,v 1.1 2008/09/16 02:37:04 brad Exp $
---- src/demuxers/demux_flv.c.orig      Sat Jun 14 19:15:00 2008
-+++ src/demuxers/demux_flv.c   Fri Sep  5 20:52:34 2008
-@@ -21,10 +21,10 @@
- /*
-  * Flash Video (.flv) File Demuxer
-  *   by Mike Melanson (melan...@pcisys.net) and 
-- *      Claudio Ciccani (k...@directfb.org)
-+ *      Claudio Ciccani (k...@users.sf.net)
-  *
-  * For more information on the FLV file format, visit:
-- * 
http://download.macromedia.com/pub/flash/flash_file_format_specification.pdf
-+ * http://www.adobe.com/devnet/flv/pdf/video_file_format_spec_v9.pdf
-  */
- 
- #ifdef HAVE_CONFIG_H
-@@ -110,14 +110,20 @@ typedef struct {
- #define FLV_SOUND_FORMAT_ADPCM   0x01
- #define FLV_SOUND_FORMAT_MP3     0x02
- #define FLV_SOUND_FORMAT_PCM_LE  0x03
-+#define FLV_SOUND_FORMAT_NELLY16 0x04 /* Nellymoser 16KHz */
- #define FLV_SOUND_FORMAT_NELLY8  0x05 /* Nellymoser 8KHz */
- #define FLV_SOUND_FORMAT_NELLY   0x06 /* Nellymoser */
-+#define FLV_SOUND_FORMAT_ALAW    0x07 /* G.711 A-LAW */
-+#define FLV_SOUND_FORMAT_MULAW   0x08 /* G.711 MU-LAW */
-+#define FLV_SOUND_FORMAT_AAC     0x0a
-+#define FLV_SOUND_FORMAT_MP38    0x0e /* MP3 8KHz */
- 
- #define FLV_VIDEO_FORMAT_FLV1    0x02 /* Sorenson H.263 */
- #define FLV_VIDEO_FORMAT_SCREEN  0x03
- #define FLV_VIDEO_FORMAT_VP6     0x04 /* On2 VP6 */
- #define FLV_VIDEO_FORMAT_VP6A    0x05 /* On2 VP6 with alphachannel */
- #define FLV_VIDEO_FORMAT_SCREEN2 0x06
-+#define FLV_VIDEO_FORMAT_H264    0x07
- 
- #define FLV_DATA_TYPE_NUMBER     0x00
- #define FLV_DATA_TYPE_BOOL       0x01
-@@ -429,11 +435,24 @@ static int read_flv_packet(demux_flv_t *this, int prev
-             buf_type = BUF_AUDIO_FLVADPCM;
-             break;
-           case FLV_SOUND_FORMAT_MP3:
-+          case FLV_SOUND_FORMAT_MP38:
-             buf_type = BUF_AUDIO_MPEG;
-             break;
-           case FLV_SOUND_FORMAT_PCM_LE:
-             buf_type = BUF_AUDIO_LPCM_LE;
-             break;
-+          case FLV_SOUND_FORMAT_ALAW:
-+            buf_type = BUF_AUDIO_ALAW;
-+            break;
-+          case FLV_SOUND_FORMAT_MULAW:
-+            buf_type = BUF_AUDIO_MULAW;
-+            break;
-+          case FLV_SOUND_FORMAT_AAC:
-+            buf_type = BUF_AUDIO_AAC;
-+            /* AAC extra header */
-+            this->input->read(this->input, buffer, 1 );
-+            remaining_bytes--;
-+            break;
-           default:
-             lprintf("  unsupported audio format (%d)...\n", buffer[0] >> 4);
-             buf_type = BUF_AUDIO_UNKNOWN;
-@@ -464,8 +483,17 @@ static int read_flv_packet(demux_flv_t *this, int prev
-         }
-         remaining_bytes--;
-         
--        if ((buffer[0] >> 4) == 0x01)
--          buf_flags = BUF_FLAG_KEYFRAME;
-+        switch ((buffer[0] >> 4)) {
-+          case 0x01:
-+            buf_flags = BUF_FLAG_KEYFRAME;
-+            break;
-+          case 0x05:
-+            /* skip server command */
-+            this->input->seek(this->input, remaining_bytes, SEEK_CUR);
-+            continue;
-+          default:
-+            break;
-+        }
-         
-         this->videocodec = buffer[0] & 0x0F; /* override */
-         switch (this->videocodec) {
-@@ -484,6 +512,12 @@ static int read_flv_packet(demux_flv_t *this, int prev
-             this->input->read(this->input, buffer, 4);
-             remaining_bytes -= 4;
-             break;
-+          case FLV_VIDEO_FORMAT_H264:
-+            buf_type = BUF_VIDEO_H264;
-+            /* AVC extra header */
-+            this->input->read(this->input, buffer, 4);
-+            remaining_bytes -= 4;
-+            break;
-           default:
-             lprintf("  unsupported video format (%d)...\n", buffer[0] & 0x0F);
-             buf_type = BUF_VIDEO_UNKNOWN;
-@@ -511,6 +545,23 @@ static int read_flv_packet(demux_flv_t *this, int prev
-             bih->biSize++;
-             buf->size++;
-           }
-+          else if (buf_type == BUF_VIDEO_H264 && buffer[0] == 0) {
-+            /* AVC sequence header */
-+            if (remaining_bytes > buf->max_size-buf->size) {
-+              xprintf(this->xine, XINE_VERBOSITY_LOG,
-+                    _("sequence header too big (%u bytes)!\n"), 
remaining_bytes);
-+              this->input->read(this->input, buf->content+buf->size, 
buf->max_size-buf->size);
-+              this->input->seek(this->input, 
remaining_bytes-buf->max_size-buf->size, SEEK_CUR);
-+              bih->biSize = buf->max_size;
-+              buf->size = buf->max_size;
-+            }
-+            else {
-+              this->input->read(this->input, buf->content+buf->size, 
remaining_bytes);
-+              bih->biSize += remaining_bytes;
-+              buf->size += remaining_bytes;
-+            }
-+            remaining_bytes = 0;
-+          }
-           fifo->put(fifo, buf);
-           this->got_video_header = 1;
-         }
-@@ -537,11 +588,21 @@ static int read_flv_packet(demux_flv_t *this, int prev
-                 buf->type = BUF_AUDIO_FLVADPCM;
-                 break;
-               case FLV_SOUND_FORMAT_MP3:
-+              case FLV_SOUND_FORMAT_MP38:
-                 buf->type = BUF_AUDIO_MPEG;
-                 break;
-               case FLV_SOUND_FORMAT_PCM_LE:
-                 buf->type = BUF_AUDIO_LPCM_LE;
-                 break;
-+              case FLV_SOUND_FORMAT_ALAW:
-+                buf->type = BUF_AUDIO_ALAW;
-+                break;
-+              case FLV_SOUND_FORMAT_MULAW:
-+                buf->type = BUF_AUDIO_MULAW;
-+                break;
-+              case FLV_SOUND_FORMAT_AAC:
-+                buf->type = BUF_AUDIO_AAC;
-+                break;
-               default:
-                 buf->type = BUF_AUDIO_UNKNOWN;
-                 break;
-@@ -549,9 +610,10 @@ static int read_flv_packet(demux_flv_t *this, int prev
-             buf->size = 0;
-             this->audio_fifo->put(this->audio_fifo, buf);
-             this->got_audio_header = 1;
-+            lprintf("  got audio header from metadata...\n");
-           }
-           
--          if (!this->got_video_header && this->videocodec) {
-+          if (!this->got_video_header && this->videocodec && this->videocodec 
!= FLV_VIDEO_FORMAT_H264) {
-             xine_bmiheader *bih;
-             buf = this->video_fifo->buffer_pool_alloc(this->video_fifo);
-             buf->decoder_flags = BUF_FLAG_HEADER | BUF_FLAG_STDHEADER |
-@@ -583,6 +645,7 @@ static int read_flv_packet(demux_flv_t *this, int prev
-             }
-             this->video_fifo->put(this->video_fifo, buf);
-             this->got_video_header = 1;
-+            lprintf("  got video header from metadata...\n");
-           }
-           
-           return this->status;
-@@ -600,33 +663,61 @@ static int read_flv_packet(demux_flv_t *this, int prev
-     while (remaining_bytes) {
-       buf = fifo->buffer_pool_alloc(fifo);
-       buf->type = buf_type;
--      buf->pts = (int64_t) pts * 90;
-       
--      if (!preview)
--        check_newpts(this, buf->pts, (tag_type == FLV_TAG_TYPE_VIDEO));
--      
-       buf->extra_info->input_time = pts;
-       if (this->input->get_length(this->input)) {
-         buf->extra_info->input_normpos = 
-             (int)((double)this->input->get_current_pos(this->input) * 65535.0 
/ this->size);
-       }
-+      
-+      if ((buf_type == BUF_VIDEO_H264 || buf_type == BUF_AUDIO_AAC) && 
buffer[0] == 0) {
-+        /* AVC/AAC sequence header */
-+        buf->pts = 0;
-+        buf->size = 0;
-+        
-+        buf->decoder_flags = BUF_FLAG_SPECIAL | BUF_FLAG_HEADER;
-+        if (preview)
-+          buf->decoder_flags |= BUF_FLAG_PREVIEW;
- 
--      if (remaining_bytes > buf->max_size)
--        buf->size = buf->max_size;
--      else
--        buf->size = remaining_bytes;
--      remaining_bytes -= buf->size;
-+        buf->decoder_info[1] = BUF_SPECIAL_DECODER_CONFIG;
-+        buf->decoder_info[2] = MIN(remaining_bytes, buf->max_size);
-+        buf->decoder_info_ptr[2] = buf->mem;
-+      
-+        if (this->input->read(this->input, buf->mem, buf->decoder_info[2]) != 
buf->decoder_info[2]) {
-+          buf->free_buffer(buf);
-+          this->status = DEMUX_FINISHED;
-+          break;
-+        }
-+        
-+        if (remaining_bytes > buf->max_size) {
-+          xprintf(this->xine, XINE_VERBOSITY_LOG,
-+                _("sequence header too big (%u bytes)!\n"), remaining_bytes);
-+          this->input->seek(this->input, remaining_bytes-buf->max_size, 
SEEK_CUR);
-+        }
-+        remaining_bytes = 0;
-+      }
-+      else {
-+        buf->pts = (int64_t) pts * 90;
-+        if (!preview)
-+          check_newpts(this, buf->pts, (tag_type == FLV_TAG_TYPE_VIDEO));
- 
--      buf->decoder_flags = buf_flags;
--      if (preview)
--        buf->decoder_flags |= BUF_FLAG_PREVIEW;
--      if (!remaining_bytes)
--        buf->decoder_flags |= BUF_FLAG_FRAME_END;
-+        if (remaining_bytes > buf->max_size)
-+          buf->size = buf->max_size;
-+        else
-+          buf->size = remaining_bytes;
-+        remaining_bytes -= buf->size;
- 
--      if (this->input->read(this->input, buf->content, buf->size) != 
buf->size) {
--        buf->free_buffer(buf);
--        this->status = DEMUX_FINISHED;
--        break;
-+        buf->decoder_flags = buf_flags;
-+        if (preview)
-+          buf->decoder_flags |= BUF_FLAG_PREVIEW;
-+        if (!remaining_bytes)
-+          buf->decoder_flags |= BUF_FLAG_FRAME_END;
-+
-+        if (this->input->read(this->input, buf->content, buf->size) != 
buf->size) {
-+          buf->free_buffer(buf);
-+          this->status = DEMUX_FINISHED;
-+          break;
-+        }
-       }
- 
-       fifo->put(fifo, buf);
-@@ -649,8 +740,8 @@ static void seek_flv_file(demux_flv_t *this, off_t see
-    
-   lprintf("  seeking %s to %d...\n", 
-           do_rewind ? "backward" : "forward", seek_pts);
--     
--  if (seek_pts == 0) {
-+  
-+  if (seek_pos == 0 && seek_pts == 0) {
-     this->input->seek(this->input, this->start, SEEK_SET);
-     this->cur_pts = 0;
-     return;
-@@ -676,11 +767,9 @@ static void seek_flv_file(demux_flv_t *this, off_t see
- 
-       this->input->seek(this->input, this->index[i].offset-4, SEEK_SET);
-       this->cur_pts = this->index[i].pts;
--      return;
-     }
-   }
--  
--  if (seek_pos && this->videocodec && abs(seek_pts-this->cur_pts) > 300000) {
-+  else if (seek_pos && this->videocodec && abs(seek_pts-this->cur_pts) > 
300000) {
-     off_t pos, size;
-     
-     pos = this->input->get_current_pos(this->input);
-@@ -715,49 +804,50 @@ static void seek_flv_file(demux_flv_t *this, off_t see
-     
-     lprintf("  ...resync failed!\n");
-     this->input->seek(this->input, pos, SEEK_SET);
--    return;
-   }  
--  
--  while (do_rewind ? (seek_pts < this->cur_pts) : (seek_pts > this->cur_pts)) 
{
--    unsigned char tag_type;
--    int           data_size;
--    int           ptag_size;
-+  else if (seek_pts) { 
-+    while (do_rewind ? (seek_pts < this->cur_pts) : (seek_pts > 
this->cur_pts)) {
-+      unsigned char tag_type;
-+      int           data_size;
-+      int           ptag_size;
-     
--    if (next_tag)
--      this->input->seek(this->input, next_tag, SEEK_CUR);
-+      if (next_tag)
-+        this->input->seek(this->input, next_tag, SEEK_CUR);
-     
--    len = this->input->read(this->input, buffer, 16);
--    if (len != 16) {
--      len = (len < 0) ? 0 : len;
--      break;
--    }
-+      len = this->input->read(this->input, buffer, 16);
-+      if (len != 16) {
-+        len = (len < 0) ? 0 : len;
-+        break;
-+      }
-         
--    ptag_size = _X_BE_32(&buffer[0]);
--    tag_type = buffer[4];
--    data_size = _X_BE_24(&buffer[5]);
--    pts = _X_BE_24(&buffer[8]) | (buffer[11] << 24);
-+      ptag_size = _X_BE_32(&buffer[0]);
-+      tag_type = buffer[4];
-+      data_size = _X_BE_24(&buffer[5]);
-+      pts = _X_BE_24(&buffer[8]) | (buffer[11] << 24);
-     
--    if (do_rewind) {
--      if (!ptag_size) break; /* beginning of movie */
--      next_tag = -(ptag_size + 16 + 4);
--    }
--    else {
--      next_tag = data_size - 1;
--    }
-+      if (do_rewind) {
-+        if (!ptag_size)
-+          break; /* beginning of movie */
-+        next_tag = -(ptag_size + 16 + 4);
-+      }
-+      else {
-+        next_tag = data_size - 1;
-+      }
-    
--    if (this->flags & FLV_FLAG_HAS_VIDEO) {
--      /* sync to video key frame */
--      if (tag_type != FLV_TAG_TYPE_VIDEO || (buffer[15] >> 4) != 0x01)
--        continue;
--      lprintf("  video keyframe found at %d...\n", pts);
-+      if (this->flags & FLV_FLAG_HAS_VIDEO) {
-+        /* sync to video key frame */
-+        if (tag_type != FLV_TAG_TYPE_VIDEO || (buffer[15] >> 4) != 0x01)
-+          continue;
-+        lprintf("  video keyframe found at %d...\n", pts);
-+      }
-+      this->cur_pts = pts;
-     }
--    this->cur_pts = pts;
--  }
-   
--  /* seek back to the beginning of the tag */
--  this->input->seek(this->input, -len, SEEK_CUR);
-+    /* seek back to the beginning of the tag */
-+    this->input->seek(this->input, -len, SEEK_CUR);
-   
--  lprintf( "  seeked to %d.\n", pts);
-+    lprintf( "  seeked to %d.\n", pts);
-+  }
- }
- 
- 
-@@ -807,8 +897,12 @@ static int demux_flv_seek (demux_plugin_t *this_gen,
-   this->status = DEMUX_OK;
- 
-   if (INPUT_IS_SEEKABLE(this->input)) {
--    if (start_pos && !start_time)
--      start_time = (int64_t) this->length * start_pos / 65535;
-+    if (start_pos && !start_time) {
-+      if (this->length) 
-+        start_time = (int64_t) this->length * start_pos / 65535;
-+      else if (this->index)
-+        start_time = this->index[(int)(start_pos * (this->num_indices-1) / 
65535)].pts;
-+    }
- 
-     if (!this->length || start_time < this->length) {
-       seek_flv_file(this, start_pos, start_time);
-@@ -875,12 +969,6 @@ static demux_plugin_t *open_plugin (demux_class_t *cla
- 
-   switch (stream->content_detection_method) {
-     case METHOD_BY_EXTENSION:
--      if (!_x_demux_check_extension(input->get_mrl(input), "flv")) {
--        free (this);
--        return NULL;
--      }
--  
--  /* falling through is intended */  
-     case METHOD_BY_CONTENT:
-     case METHOD_EXPLICIT:
-       if (!open_flv_file(this)) {
Index: patches/patch-src_demuxers_demux_mpeg_pes_c
===================================================================
RCS file: 
/cvs/ports/multimedia/xine-lib/patches/patch-src_demuxers_demux_mpeg_pes_c,v
retrieving revision 1.3
diff -u -p -r1.3 patch-src_demuxers_demux_mpeg_pes_c
--- patches/patch-src_demuxers_demux_mpeg_pes_c 18 Jun 2008 01:26:41 -0000      
1.3
+++ patches/patch-src_demuxers_demux_mpeg_pes_c 8 Jan 2009 06:09:34 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-src_demuxers_demux_mpeg_pes_c,v 1.3 2008/06/18 01:26:41 brad 
Exp $
---- src/demuxers/demux_mpeg_pes.c.orig Sat Jun 14 19:15:00 2008
-+++ src/demuxers/demux_mpeg_pes.c      Mon Jun 16 02:30:50 2008
-@@ -815,7 +815,7 @@ static int32_t parse_pes_for_pts(demux_mpeg_pes_t *thi
+--- src/demuxers/demux_mpeg_pes.c.orig Wed Jan  7 11:14:32 2009
++++ src/demuxers/demux_mpeg_pes.c      Thu Jan  8 01:02:34 2009
+@@ -814,7 +814,7 @@ static int32_t parse_pes_for_pts(demux_mpeg_pes_t *thi
              _("demux_mpeg_pes: warning: PES header indicates that "
                "this stream may be encrypted (encryption mode %d)\n"), (p[6] & 
0x30) >> 4);
        _x_message (this->stream, XINE_MSG_ENCRYPTED_SOURCE,
Index: patches/patch-src_demuxers_demux_qt_c
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/patches/patch-src_demuxers_demux_qt_c,v
retrieving revision 1.6
diff -u -p -r1.6 patch-src_demuxers_demux_qt_c
--- patches/patch-src_demuxers_demux_qt_c       18 Jun 2008 01:26:41 -0000      
1.6
+++ patches/patch-src_demuxers_demux_qt_c       8 Jan 2009 06:09:34 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-src_demuxers_demux_qt_c,v 1.6 2008/06/18 01:26:41 brad Exp $
---- src/demuxers/demux_qt.c.orig       Sat Jun 14 19:15:00 2008
-+++ src/demuxers/demux_qt.c    Mon Jun 16 02:30:50 2008
-@@ -3022,7 +3022,7 @@ static demux_plugin_t *open_plugin (demux_class_t *cla
+--- src/demuxers/demux_qt.c.orig       Wed Jan  7 11:14:32 2009
++++ src/demuxers/demux_qt.c    Thu Jan  8 01:02:34 2009
+@@ -3049,7 +3049,7 @@ static demux_plugin_t *open_plugin (demux_class_t *cla
        /* special consideration for DRM-protected files */
        if (this->qt->last_error == QT_DRM_NOT_SUPPORTED)
          _x_message (this->stream, XINE_MSG_ENCRYPTED_SOURCE,
Index: patches/patch-src_input_Makefile_in
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/patches/patch-src_input_Makefile_in,v
retrieving revision 1.12
diff -u -p -r1.12 patch-src_input_Makefile_in
--- patches/patch-src_input_Makefile_in 2 Jul 2008 01:02:42 -0000       1.12
+++ patches/patch-src_input_Makefile_in 8 Jan 2009 06:09:39 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-src_input_Makefile_in,v 1.12 2008/07/02 01:02:42 brad Exp $
---- src/input/Makefile.in.orig Sun Jun 29 13:13:04 2008
-+++ src/input/Makefile.in      Sun Jun 29 20:54:12 2008
-@@ -595,7 +595,7 @@ EXTRA_DIST = input_dvd.c input_vcd.c input_gnome_vfs.c
+--- src/input/Makefile.in.orig Wed Jan  7 11:16:52 2009
++++ src/input/Makefile.in      Thu Jan  8 01:02:34 2009
+@@ -597,7 +597,7 @@ EXTRA_DIST = input_dvd.c input_vcd.c input_gnome_vfs.c
  # ---------
  # All of xine input plugins should be named like the scheme "xineplug_inp_"
  #
Index: patches/patch-src_input_input_cdda_c
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/patches/patch-src_input_input_cdda_c,v
retrieving revision 1.6
diff -u -p -r1.6 patch-src_input_input_cdda_c
--- patches/patch-src_input_input_cdda_c        31 Aug 2008 00:35:08 -0000      
1.6
+++ patches/patch-src_input_input_cdda_c        8 Jan 2009 06:09:33 -0000
@@ -1,6 +1,6 @@
 $OpenBSD: patch-src_input_input_cdda_c,v 1.6 2008/08/31 00:35:08 brad Exp $
---- src/input/input_cdda.c.orig        Wed Aug 13 12:33:05 2008
-+++ src/input/input_cdda.c     Wed Aug 27 19:50:47 2008
+--- src/input/input_cdda.c.orig        Sun Jan  4 10:47:28 2009
++++ src/input/input_cdda.c     Thu Jan  8 01:02:34 2009
 @@ -72,7 +72,7 @@
  #elif defined(WIN32)
  #define DEFAULT_CDDA_DEVICE "d:\\"
@@ -10,15 +10,6 @@ $OpenBSD: patch-src_input_input_cdda_c,v
  #endif
  
  #define CDDB_SERVER             "freedb.freedb.org"
-@@ -136,7 +136,7 @@ typedef struct {
-     char              *disc_category;
- 
-     int                fd;
--    unsigned long      disc_id;
-+    uint32_t           disc_id;
- 
-     int                disc_length;
-     trackinfo_t       *track;
 @@ -611,7 +611,7 @@ static int read_cdrom_frames(cdda_input_plugin_t *this
    return 0;
  }
@@ -82,21 +73,3 @@ $OpenBSD: patch-src_input_input_cdda_c,v
      scsireq_t req;
      int nblocks = 1;
  
-@@ -1902,7 +1902,7 @@ static unsigned int _cdda_cddb_sum(int n) {
-   }
-   return ret;
- }
--static unsigned long _cdda_calc_cddb_id(cdda_input_plugin_t *this) {
-+static uint32_t _cdda_calc_cddb_id(cdda_input_plugin_t *this) {
-   int i, tsum = 0;
-   
-   if(this == NULL || (this->cddb.num_tracks <= 0))
-@@ -1959,7 +1959,7 @@ static void _cdda_cdindex(cdda_input_plugin_t *this, c
- /*
-  * return cbbd disc id.
-  */
--static unsigned long _cdda_get_cddb_id(cdda_input_plugin_t *this) {
-+static uint32_t _cdda_get_cddb_id(cdda_input_plugin_t *this) {
- 
-   if(this == NULL || (this->cddb.num_tracks <= 0))
-     return 0;
Index: patches/patch-src_input_input_dvd_c
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/patches/patch-src_input_input_dvd_c,v
retrieving revision 1.5
diff -u -p -r1.5 patch-src_input_input_dvd_c
--- patches/patch-src_input_input_dvd_c 18 Jun 2008 01:26:41 -0000      1.5
+++ patches/patch-src_input_input_dvd_c 8 Jan 2009 06:09:33 -0000
@@ -1,6 +1,6 @@
 $OpenBSD: patch-src_input_input_dvd_c,v 1.5 2008/06/18 01:26:41 brad Exp $
---- src/input/input_dvd.c.orig Sat Jun 14 19:15:00 2008
-+++ src/input/input_dvd.c      Mon Jun 16 02:30:50 2008
+--- src/input/input_dvd.c.orig Wed Jan  7 11:14:32 2009
++++ src/input/input_dvd.c      Thu Jan  8 01:02:34 2009
 @@ -116,8 +116,8 @@
  #define DVD_PATH "d:\\"
  #define RDVD_PATH "d:\\"
@@ -21,7 +21,7 @@ $OpenBSD: patch-src_input_input_dvd_c,v 
        if (block != buf->mem) dvdnav_free_cache_block(this->dvdnav, block);
        buf->free_buffer(buf);
        return NULL;
-@@ -1491,7 +1491,7 @@ static int dvd_plugin_open (input_plugin_t *this_gen) 
+@@ -1494,7 +1494,7 @@ static int dvd_plugin_open (input_plugin_t *this_gen) 
      xprintf(this->stream->xine, XINE_VERBOSITY_LOG, _("input_dvd: Error 
opening DVD device\n"));
      _x_message(this->stream, XINE_MSG_READ_ERROR,
        /* FIXME: see FIXME in dvd_parse_try_open() */
Index: patches/patch-src_input_input_file_c
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/patches/patch-src_input_input_file_c,v
retrieving revision 1.3
diff -u -p -r1.3 patch-src_input_input_file_c
--- patches/patch-src_input_input_file_c        15 Jan 2008 00:36:46 -0000      
1.3
+++ patches/patch-src_input_input_file_c        8 Jan 2009 06:09:33 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-src_input_input_file_c,v 1.3 2008/01/15 00:36:46 jakemsr Exp $
---- src/input/input_file.c.orig        Tue Jan  1 08:30:08 2008
-+++ src/input/input_file.c     Wed Jan  9 01:58:02 2008
-@@ -200,7 +200,7 @@ static buf_element_t *file_plugin_read_block (input_pl
+--- src/input/input_file.c.orig        Wed Jan  7 11:14:32 2009
++++ src/input/input_file.c     Thu Jan  8 01:02:34 2009
+@@ -208,7 +208,7 @@ static buf_element_t *file_plugin_read_block (input_pl
          xine_log (this->stream->xine, XINE_LOG_MSG,
                    _("input_file: read error (%s)\n"), strerror(errno));
          _x_message(this->stream, XINE_MSG_READ_ERROR,
@@ -10,7 +10,7 @@ $OpenBSD: patch-src_input_input_file_c,v
        }
        buf->free_buffer (buf);
        buf = NULL;
-@@ -356,11 +356,11 @@ static int file_plugin_open (input_plugin_t *this_gen 
+@@ -364,11 +364,11 @@ static int file_plugin_open (input_plugin_t *this_gen 
  
    if (this->fh == -1) {
      if (errno == EACCES) {
@@ -24,7 +24,7 @@ $OpenBSD: patch-src_input_input_file_c,v
        xine_log (this->stream->xine, XINE_LOG_MSG,
                  _("input_file: File not found: >%s<\n"), this->mrl);
      }
-@@ -397,7 +397,7 @@ static int file_plugin_open (input_plugin_t *this_gen 
+@@ -405,7 +405,7 @@ static int file_plugin_open (input_plugin_t *this_gen 
  #endif
  
    if (file_plugin_get_length (this_gen) == 0) {
Index: patches/patch-src_input_input_http_c
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/patches/patch-src_input_input_http_c,v
retrieving revision 1.5
diff -u -p -r1.5 patch-src_input_input_http_c
--- patches/patch-src_input_input_http_c        2 Jul 2008 01:02:42 -0000       
1.5
+++ patches/patch-src_input_input_http_c        8 Jan 2009 06:09:33 -0000
@@ -1,6 +1,6 @@
 $OpenBSD: patch-src_input_input_http_c,v 1.5 2008/07/02 01:02:42 brad Exp $
---- src/input/input_http.c.orig        Wed Jun 25 09:04:09 2008
-+++ src/input/input_http.c     Sun Jun 29 20:54:12 2008
+--- src/input/input_http.c.orig        Wed Jan  7 11:14:32 2009
++++ src/input/input_http.c     Thu Jan  8 01:02:34 2009
 @@ -409,7 +409,7 @@ static off_t http_plugin_read_int (http_input_plugin_t
    
  error:
@@ -10,7 +10,7 @@ $OpenBSD: patch-src_input_input_http_c,v
    xine_log (this->stream->xine, XINE_LOG_MSG, _("input_http: read error 
%d\n"), errno);
    return read_bytes;
  }
-@@ -671,7 +671,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
+@@ -679,7 +679,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
        if (http_plugin_basicauth (this_class->proxyuser,
                                 this_class->proxypassword,
                                 this->proxyauth, BUFSIZE)) {
@@ -19,7 +19,7 @@ $OpenBSD: patch-src_input_input_http_c,v
        return 0;
        }
      }
-@@ -680,7 +680,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
+@@ -688,7 +688,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
    
    if (!_x_parse_url(this->mrl, &this->proto, &this->host, &this->port,
                      &this->user, &this->password, &this->uri)) {
@@ -28,7 +28,7 @@ $OpenBSD: patch-src_input_input_http_c,v
      return 0;
    }
    use_proxy = use_proxy && _x_use_proxy(this_class, this->host);
-@@ -690,7 +690,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
+@@ -698,7 +698,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
    
    if (this->user && strlen(this->user)) {
      if (http_plugin_basicauth (this->user, this->password, this->auth, 
BUFSIZE)) {
@@ -37,7 +37,7 @@ $OpenBSD: patch-src_input_input_http_c,v
        return -1;
      }
    }
-@@ -744,7 +744,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
+@@ -752,7 +752,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
      } while ((res == XIO_TIMEOUT) && (progress <= 100000));
  
      if (res != XIO_READY) {
@@ -46,7 +46,7 @@ $OpenBSD: patch-src_input_input_http_c,v
        return -3;
      }
    }
-@@ -784,7 +784,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
+@@ -792,7 +792,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
                     "\015\012",
                     VERSION);
    if (_x_io_tcp_write (this->stream, this->fh, this->buf, buflen) != buflen) {
@@ -55,7 +55,7 @@ $OpenBSD: patch-src_input_input_http_c,v
      xprintf(this_class->xine, XINE_VERBOSITY_DEBUG, "input_http: couldn't 
send request\n");
      return -4;
    }
-@@ -828,7 +828,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
+@@ -836,7 +836,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
            (sscanf(this->buf, "ICY %d %50[^\015\012]", /* icecast 1 ? */
                    &httpcode, httpstatus) != 2)
           ) {
@@ -64,7 +64,7 @@ $OpenBSD: patch-src_input_input_http_c,v
            xine_log (this->stream->xine, XINE_LOG_MSG, 
                      _("input_http: invalid http answer\n"));
            return -6;
-@@ -839,20 +839,20 @@ static int http_plugin_open (input_plugin_t *this_gen 
+@@ -847,20 +847,20 @@ static int http_plugin_open (input_plugin_t *this_gen 
                    _("input_http: 3xx redirection: >%d %s<\n"),
                    httpcode, httpstatus);
        } else if (httpcode == 404) {
@@ -88,7 +88,7 @@ $OpenBSD: patch-src_input_input_http_c,v
                  xine_log (this->stream->xine, XINE_LOG_MSG,
                    _("input_http: http status not 2xx: >%d %s<\n"),
                    httpcode, httpstatus);
-@@ -949,7 +949,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
+@@ -957,7 +957,7 @@ static int http_plugin_open (input_plugin_t *this_gen 
      } else
        len ++;
      if ( len >= BUFSIZE ) {
Index: patches/patch-src_input_input_net_c
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/patches/patch-src_input_input_net_c,v
retrieving revision 1.2
diff -u -p -r1.2 patch-src_input_input_net_c
--- patches/patch-src_input_input_net_c 15 Jan 2008 00:36:46 -0000      1.2
+++ patches/patch-src_input_input_net_c 8 Jan 2009 06:09:33 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-src_input_input_net_c,v 1.2 2008/01/15 00:36:46 jakemsr Exp $
---- src/input/input_net.c.orig Tue Jan  1 08:30:08 2008
-+++ src/input/input_net.c      Wed Jan  9 01:50:22 2008
-@@ -272,7 +272,7 @@ static off_t net_plugin_read (input_plugin_t *this_gen
+--- src/input/input_net.c.orig Wed Jan  7 11:14:32 2009
++++ src/input/input_net.c      Thu Jan  8 01:02:35 2009
+@@ -275,7 +275,7 @@ static off_t net_plugin_read (input_plugin_t *this_gen
      xprintf(this->stream->xine, XINE_VERBOSITY_DEBUG, "input_net: got %" 
PRIdMAX " bytes (%" PRIdMAX "/%" PRIdMAX " bytes read)\n", (intmax_t)n, 
(intmax_t)total, (intmax_t)len);
    
      if (n < 0) {
Index: patches/patch-src_input_input_stdin_fifo_c
===================================================================
RCS file: 
/cvs/ports/multimedia/xine-lib/patches/patch-src_input_input_stdin_fifo_c,v
retrieving revision 1.2
diff -u -p -r1.2 patch-src_input_input_stdin_fifo_c
--- patches/patch-src_input_input_stdin_fifo_c  15 Jan 2008 00:36:46 -0000      
1.2
+++ patches/patch-src_input_input_stdin_fifo_c  8 Jan 2009 06:09:33 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-src_input_input_stdin_fifo_c,v 1.2 2008/01/15 00:36:46 jakemsr 
Exp $
---- src/input/input_stdin_fifo.c.orig  Tue Jan  1 08:30:08 2008
-+++ src/input/input_stdin_fifo.c       Wed Jan  9 01:50:22 2008
-@@ -104,7 +104,7 @@ static off_t stdin_plugin_read (input_plugin_t *this_g
+--- src/input/input_stdin_fifo.c.orig  Wed Jan  7 11:14:32 2009
++++ src/input/input_stdin_fifo.c       Thu Jan  8 01:02:35 2009
+@@ -106,7 +106,7 @@ static off_t stdin_plugin_read (input_plugin_t *this_g
      lprintf ("got %"PRId64" bytes (%"PRId64"/%"PRId64" bytes read)\n", 
n,total,len);
    
      if (n < 0) {
Index: patches/patch-src_input_mms_c
===================================================================
RCS file: /cvs/ports/multimedia/xine-lib/patches/patch-src_input_mms_c,v
retrieving revision 1.6
diff -u -p -r1.6 patch-src_input_mms_c
--- patches/patch-src_input_mms_c       18 Jun 2008 01:26:41 -0000      1.6
+++ patches/patch-src_input_mms_c       8 Jan 2009 06:09:33 -0000
@@ -1,6 +1,6 @@
 $OpenBSD: patch-src_input_mms_c,v 1.6 2008/06/18 01:26:41 brad Exp $
---- src/input/mms.c.orig       Sat Jun 14 19:15:00 2008
-+++ src/input/mms.c    Mon Jun 16 02:30:50 2008
+--- src/input/mms.c.orig       Sun Jan  4 10:47:28 2009
++++ src/input/mms.c    Thu Jan  8 01:06:20 2009
 @@ -48,6 +48,7 @@
  #include <iconv.h>
  #include <locale.h>
@@ -13,7 +13,7 @@ $OpenBSD: patch-src_input_mms_c,v 1.6 20
  
  #ifdef USE_ICONV
  static iconv_t string_utf16_open() {
--    return iconv_open("UTF-16LE", nl_langinfo(CODESET));
+-    return iconv_open("UTF-16LE", "UTF-8");
 +    return iconv_open("UTF-16LE", locale_charset());
  }
  
Index: patches/patch-src_libw32dll_wine_Makefile_in
===================================================================
RCS file: 
/cvs/ports/multimedia/xine-lib/patches/patch-src_libw32dll_wine_Makefile_in,v
retrieving revision 1.11
diff -u -p -r1.11 patch-src_libw32dll_wine_Makefile_in
--- patches/patch-src_libw32dll_wine_Makefile_in        2 Jul 2008 01:02:42 
-0000       1.11
+++ patches/patch-src_libw32dll_wine_Makefile_in        8 Jan 2009 06:09:34 
-0000
@@ -1,6 +1,6 @@
 $OpenBSD: patch-src_libw32dll_wine_Makefile_in,v 1.11 2008/07/02 01:02:42 brad 
Exp $
---- src/libw32dll/wine/Makefile.in.orig        Sun Jun 29 13:13:11 2008
-+++ src/libw32dll/wine/Makefile.in     Sun Jun 29 20:54:14 2008
+--- src/libw32dll/wine/Makefile.in.orig        Wed Jan  7 11:16:59 2009
++++ src/libw32dll/wine/Makefile.in     Thu Jan  8 01:02:35 2009
 @@ -61,7 +61,7 @@ LTLIBRARIES = $(noinst_LTLIBRARIES)
  libwine_la_LIBADD =
  am_libwine_la_OBJECTS = afl.lo driver.lo elfdll.lo ext.lo \
@@ -10,7 +10,7 @@ $OpenBSD: patch-src_libw32dll_wine_Makef
  libwine_la_OBJECTS = $(am_libwine_la_OBJECTS)
  @have_w32dll_t...@am_libwine_la_rpath =
  DEFAULT_INCLUDES = -...@am__isrc@ -I$(top_builddir)/include
-@@ -429,6 +429,7 @@ libwine_la_SOURCES = \
+@@ -431,6 +431,7 @@ libwine_la_SOURCES = \
        registry.c \
        vfl.c \
        win32.c \
@@ -18,7 +18,7 @@ $OpenBSD: patch-src_libw32dll_wine_Makef
        stubs.s \
        wrapper.S 
  
-@@ -534,6 +535,7 @@ distclean-compile:
+@@ -536,6 +537,7 @@ distclean-compile:
  @AMDEP_TRUE@@am__include@ @am__qu...@./$(DEPDIR)/vfl....@am__quote@
  @AMDEP_TRUE@@am__include@ @am__qu...@./$(DEPDIR)/win32....@am__quote@
  @AMDEP_TRUE@@am__include@ @am__qu...@./$(DEPDIR)/wrapper....@am__quote@
Index: patches/patch-src_post_deinterlace_Makefile_in
===================================================================
RCS file: 
/cvs/ports/multimedia/xine-lib/patches/patch-src_post_deinterlace_Makefile_in,v
retrieving revision 1.4
diff -u -p -r1.4 patch-src_post_deinterlace_Makefile_in
--- patches/patch-src_post_deinterlace_Makefile_in      2 Jul 2008 01:02:42 
-0000       1.4
+++ patches/patch-src_post_deinterlace_Makefile_in      8 Jan 2009 06:09:35 
-0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-src_post_deinterlace_Makefile_in,v 1.4 2008/07/02 01:02:42 
brad Exp $
---- src/post/deinterlace/Makefile.in.orig      Sun Jun 29 13:13:13 2008
-+++ src/post/deinterlace/Makefile.in   Sun Jun 29 20:54:14 2008
-@@ -425,7 +425,7 @@ xinepostdir = $(XINE_PLUGINDIR)/post
+--- src/post/deinterlace/Makefile.in.orig      Wed Jan  7 11:17:01 2009
++++ src/post/deinterlace/Makefile.in   Thu Jan  8 01:02:35 2009
+@@ -427,7 +427,7 @@ xinepostdir = $(XINE_PLUGINDIR)/post
  vidixdir = $(XINE_PLUGINDIR)/vidix
  SUBDIRS = plugins
  EXTRA_DIST = 
Index: patches/patch-src_post_deinterlace_plugins_Makefile_in
===================================================================
RCS file: 
/cvs/ports/multimedia/xine-lib/patches/patch-src_post_deinterlace_plugins_Makefile_in,v
retrieving revision 1.4
diff -u -p -r1.4 patch-src_post_deinterlace_plugins_Makefile_in
--- patches/patch-src_post_deinterlace_plugins_Makefile_in      2 Jul 2008 
01:02:42 -0000       1.4
+++ patches/patch-src_post_deinterlace_plugins_Makefile_in      8 Jan 2009 
06:09:35 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-src_post_deinterlace_plugins_Makefile_in,v 1.4 2008/07/02 
01:02:42 brad Exp $
---- src/post/deinterlace/plugins/Makefile.in.orig      Sun Jun 29 13:13:13 2008
-+++ src/post/deinterlace/plugins/Makefile.in   Sun Jun 29 20:54:14 2008
-@@ -857,7 +857,7 @@ maintainer-clean-generic:
+--- src/post/deinterlace/plugins/Makefile.in.orig      Wed Jan  7 11:17:01 2009
++++ src/post/deinterlace/plugins/Makefile.in   Thu Jan  8 01:02:35 2009
+@@ -859,7 +859,7 @@ maintainer-clean-generic:
        -rm -f Makefile.in
  
  # Avoid "can't find register" failures with -O0, -O2, -O3 (gcc 4.0)
Index: patches/patch-src_xine-engine_Makefile_in
===================================================================
RCS file: 
/cvs/ports/multimedia/xine-lib/patches/patch-src_xine-engine_Makefile_in,v
retrieving revision 1.7
diff -u -p -r1.7 patch-src_xine-engine_Makefile_in
--- patches/patch-src_xine-engine_Makefile_in   2 Jul 2008 01:02:42 -0000       
1.7
+++ patches/patch-src_xine-engine_Makefile_in   8 Jan 2009 06:09:33 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-src_xine-engine_Makefile_in,v 1.7 2008/07/02 01:02:42 brad Exp 
$
---- src/xine-engine/Makefile.in.orig   Sun Jun 29 13:13:17 2008
-+++ src/xine-engine/Makefile.in        Sun Jun 29 20:54:14 2008
-@@ -434,7 +434,7 @@ libxine_la_DEPENDENCIES = $(XINEUTILS_LIB) \
+--- src/xine-engine/Makefile.in.orig   Wed Jan  7 11:17:04 2009
++++ src/xine-engine/Makefile.in        Thu Jan  8 01:02:35 2009
+@@ -436,7 +436,7 @@ libxine_la_DEPENDENCIES = $(XINEUTILS_LIB) \
  
  libxine_la_LIBADD = $(PTHREAD_LIBS) $(DYNAMIC_LD_LIBS) $(LTLIBINTL) 
$(ZLIB_LIBS) \
                    -lm $(XINEUTILS_LIB) $(LTLIBICONV) $(FT2_LIBS) 
$(FONTCONFIG_LIBS) \
Index: patches/patch-src_xine-engine_buffer_h
===================================================================
RCS file: patches/patch-src_xine-engine_buffer_h
diff -N patches/patch-src_xine-engine_buffer_h
--- patches/patch-src_xine-engine_buffer_h      21 Aug 2008 21:56:49 -0000      
1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-src_xine-engine_buffer_h,v 1.1 2008/08/21 21:56:49 brad Exp $
---- src/xine-engine/buffer.h.orig      Thu Aug 21 12:31:23 2008
-+++ src/xine-engine/buffer.h   Thu Aug 21 12:35:07 2008
-@@ -676,7 +676,7 @@ void _x_bmiheader_le2me( xine_bmiheader *bih ) XINE_PR
- /* convert xine_waveformatex struct from little endian */
- void _x_waveformatex_le2me( xine_waveformatex *wavex ) XINE_PROTECTED;
- 
--static inline _x_is_fourcc(void *ptr, void *tag) {
-+static __inline int _x_is_fourcc(void *ptr, void *tag) {
-   return memcmp(ptr, tag, 4) == 0;
- }
- 

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

Reply via email to