diff options
Diffstat (limited to 'multimedia/mplayer-share/patches/patch-bd')
-rw-r--r-- | multimedia/mplayer-share/patches/patch-bd | 34 |
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); |