summaryrefslogtreecommitdiff
path: root/multimedia/mplayer-share/patches/patch-bd
diff options
context:
space:
mode:
Diffstat (limited to 'multimedia/mplayer-share/patches/patch-bd')
-rw-r--r--multimedia/mplayer-share/patches/patch-bd34
1 files changed, 34 insertions, 0 deletions
diff --git a/multimedia/mplayer-share/patches/patch-bd b/multimedia/mplayer-share/patches/patch-bd
new file mode 100644
index 00000000000..64e27509531
--- /dev/null
+++ b/multimedia/mplayer-share/patches/patch-bd
@@ -0,0 +1,34 @@
+$NetBSD: patch-bd,v 1.4.2.1 2008/02/11 12:04:15 ghen Exp $
+
+--- stream/stream_cddb.c.orig 2007-10-07 21:49:26.000000000 +0200
++++ stream/stream_cddb.c
+@@ -53,6 +53,7 @@
+ #include "version.h"
+ #include "stream.h"
+ #include "network.h"
++#include "libavutil/intreadwrite.h"
+
+ #define DEFAULT_FREEDB_SERVER "freedb.freedb.org"
+ #define DEFAULT_CACHE_DIR "/.cddb/"
+@@ -453,8 +454,9 @@ cddb_parse_matches_list(HTTP_header_t *h
+ } else {
+ len = ptr2-ptr+1;
+ }
++ len = FFMIN(sizeof(album_title) - 1, len);
+ strncpy(album_title, ptr, len);
+- album_title[len-2]='\0';
++ album_title[len]='\0';
+ }
+ mp_msg(MSGT_DEMUX, MSGL_STATUS, MSGTR_MPDEMUX_CDDB_ParseOKFoundAlbumTitle, album_title);
+ return 0;
+@@ -490,8 +492,9 @@ cddb_query_parse(HTTP_header_t *http_hdr
+ } else {
+ len = ptr2-ptr+1;
+ }
++ len = FFMIN(sizeof(album_title) - 1, len);
+ strncpy(album_title, ptr, len);
+- album_title[len-2]='\0';
++ album_title[len]='\0';
+ }
+ mp_msg(MSGT_DEMUX, MSGL_STATUS, MSGTR_MPDEMUX_CDDB_ParseOKFoundAlbumTitle, album_title);
+ return cddb_request_titles(cddb_data);