diff options
author | maya <maya@pkgsrc.org> | 2017-05-06 18:12:00 +0000 |
---|---|---|
committer | maya <maya@pkgsrc.org> | 2017-05-06 18:12:00 +0000 |
commit | 94d757408994633daa10cb8f2bda36362cea39b3 (patch) | |
tree | 5bed8f61ef420e3efe1f662863dedb3000de7d44 | |
parent | 39a94ea1df5d2d7a64db5efa3a836ed6bc40d421 (diff) | |
download | pkgsrc-94d757408994633daa10cb8f2bda36362cea39b3.tar.gz |
libmp4v2: fix build more properly.
if 0 likely out of bounds write, we only have one scratch channel,
don't write to a second if asked to do stereo (thanks, GCC 4.5.3!)
convert lowercase min, max to uppercase - libstdc++6 doesn't approve
of it. mostly using sed, because there's too many occurences.
if we're not returning anything, use a void return type.
fix likely issue with signed char - 0251 may be truncated, but the
equivalent \xa9 won't be.
don't store a return value if we're not going to check it.
correct misleading indentation.
Remove -fpermissive too, as it caused jperkin issues. I could build
without removing -Werror, but I'll keep it since it's full of warnings.
XXX do we want a security advisory for this, if it can be triggered?
19 files changed, 543 insertions, 9 deletions
diff --git a/multimedia/libmp4v2/Makefile b/multimedia/libmp4v2/Makefile index a179913c656..c0dc306b8d8 100644 --- a/multimedia/libmp4v2/Makefile +++ b/multimedia/libmp4v2/Makefile @@ -1,8 +1,8 @@ -# $NetBSD: Makefile,v 1.16 2017/04/26 14:38:30 maya Exp $ +# $NetBSD: Makefile,v 1.17 2017/05/06 18:12:00 maya Exp $ DISTNAME= mpeg4ip-1.6.1 PKGNAME= libmp4v2-1.6.1 -PKGREVISION= 4 +PKGREVISION= 5 CATEGORIES= multimedia # distfile at sf is corrupt #MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=mpeg4ip/} @@ -27,9 +27,16 @@ OVERRIDE_DIRDEPTH= 3 # to install mp4* tools BUILD_DIRS= . lib/mp4v2/util -# It's an unmaintained old library +CFLAGS+= -std=gnu89 BUILDLINK_TRANSFORM+= rm:-Werror -CFLAGS+= -Wno-return-type +BUILDLINK_TRANSFORM+= rm:-fpermissive + +# lowercase min,max cannot be used as macros, conflicts with libstdc++6 +SUBST_CLASSES+= minmax +SUBST_STAGE.minmax= post-patch +SUBST_FILES.minmax= common/video/iso-mpeg4/src/* +SUBST_SED.minmax= -e 's,min *(,MIN(,g' -e 's,max *(,MAX(,g' +SUBST_MESSAGE.minmax= replace lowercase min,max with uppercase pre-configure: ${TOUCH} ${WRKSRC}/bootstrapped diff --git a/multimedia/libmp4v2/distinfo b/multimedia/libmp4v2/distinfo index edc14414bcc..81757472434 100644 --- a/multimedia/libmp4v2/distinfo +++ b/multimedia/libmp4v2/distinfo @@ -1,4 +1,4 @@ -$NetBSD: distinfo,v 1.14 2017/04/26 14:38:30 maya Exp $ +$NetBSD: distinfo,v 1.15 2017/05/06 18:12:00 maya Exp $ SHA1 (mpeg4ip-1.6.1.tar.gz) = 2af97fc0da6a5c0bcb7b433c6715967487b80e38 RMD160 (mpeg4ip-1.6.1.tar.gz) = ee8375d9581cccbbf685f730bb36f3866eaf12f7 @@ -25,5 +25,21 @@ SHA1 (patch-as) = 4025cd8e0407c851fa7f8d95e4188bd09dc66711 SHA1 (patch-at) = ce3dfb958e5a5c46e01b8514b412277be01e40d4 SHA1 (patch-au) = f3eee9942c4f5ad716634edfa9535c8c9fda73ba SHA1 (patch-av) = 3b25351b26124c9a546c09d55900fe8df3224f6d -SHA1 (patch-common_video_iso-mpeg4_src_type__basic.cpp) = 0a83438ab4666a0284879b7fe994a58ba945de47 +SHA1 (patch-common_video_iso-mpeg4_include_basic.hpp) = 457aa492ef05abf0af8a17fea202ae18c28f1cc3 +SHA1 (patch-common_video_iso-mpeg4_src_type__basic.cpp) = 01f8b446af8cd7f012d2837bdbb13d13e4e6ac93 SHA1 (patch-doc_mp4v2_MP4.3) = e799c63f63cdb1d360077b6f1410a081c1a49c5a +SHA1 (patch-lib_mp4_ctts.c) = c4d9b1df5b5940e4a0fbed37c0b52d330db9b310 +SHA1 (patch-lib_mp4_funcprotos.h) = 4a6ae557af14ca352bf8b712e52f91243a5f2ed4 +SHA1 (patch-lib_mp4_hinthnti.c) = bbb4f2f7e0b3401668f756252b91109f47382cbf +SHA1 (patch-lib_mp4_hintudta.c) = d567138632559d1dd9311a2868ebc29416be918b +SHA1 (patch-lib_mp4_hnti.c) = 21b1abf140368a8ff48b656e5b7c1297e95ac1c9 +SHA1 (patch-lib_mp4_rtp.c) = 903209c21444a788583be1fa27393c909fbbf65c +SHA1 (patch-lib_mp4_sdp.c) = 9c9e18d84d151ca632c25c9aa52685d476e6435f +SHA1 (patch-lib_mp4_tref.c) = c67a0a7b6fb5079736ef8f5e5aaa3628badecfdd +SHA1 (patch-lib_mp4_udta.c) = af025f404668d1bc02861620b79d6a56fbe18295 +SHA1 (patch-lib_mp4v2_atom__standard.cpp) = 27a2bac270ac4a1fd5169d89d312690a4dcb58ab +SHA1 (patch-lib_mp4v2_mp4atom.cpp) = ad0a1006293d8bea250de695919d8cdc59a7a4fa +SHA1 (patch-lib_rtp_net__udp.c) = 3250d0ebcc0899ec4521eb20bc83f6e8a8bce3c9 +SHA1 (patch-player_lib_audio_faad_config.c) = 6448e02ed9f95fc94bca986958ac61c0bf0ec752 +SHA1 (patch-player_lib_audio_faad_huffdec.c) = 1106e902c3fe95cb76009613ae6641339580adac +SHA1 (patch-player_lib_audio_faad_monopred.c) = 0833f17e10f91b69c63c896c15e98471c62f3025 diff --git a/multimedia/libmp4v2/patches/patch-common_video_iso-mpeg4_include_basic.hpp b/multimedia/libmp4v2/patches/patch-common_video_iso-mpeg4_include_basic.hpp new file mode 100644 index 00000000000..9858dab54f4 --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-common_video_iso-mpeg4_include_basic.hpp @@ -0,0 +1,23 @@ +$NetBSD: patch-common_video_iso-mpeg4_include_basic.hpp,v 1.1 2017/05/06 18:12:00 maya Exp $ + +libstdc++6 disapproves of lowercase min,max macros +use uppercase. + +--- common/video/iso-mpeg4/include/basic.hpp.orig 2005-05-09 21:29:45.000000000 +0000 ++++ common/video/iso-mpeg4/include/basic.hpp +@@ -89,11 +89,11 @@ Revision History: + #define transpPixel CPixel(0,0,0,0) + #define opaquePixel CPixel(255,255,255,255) + +-#ifndef max +-#define max(a,b) (((a) > (b)) ? (a) : (b)) ++#ifndef MAX ++#define MAX(a,b) (((a) > (b)) ? (a) : (b)) + #endif +-#ifndef min +-#define min(a, b) (((a) < (b)) ? (a) : (b)) ++#ifndef MIN ++#define MIN(a, b) (((a) < (b)) ? (a) : (b)) + #endif + #define signOf(x) (((x) > 0) ? 1 : 0) + #define invSignOf(x) ((x) > 0 ? 0 : 1) // see p.22/H.263 diff --git a/multimedia/libmp4v2/patches/patch-common_video_iso-mpeg4_src_type__basic.cpp b/multimedia/libmp4v2/patches/patch-common_video_iso-mpeg4_src_type__basic.cpp index 80ebef1b556..f6dcde7afe5 100644 --- a/multimedia/libmp4v2/patches/patch-common_video_iso-mpeg4_src_type__basic.cpp +++ b/multimedia/libmp4v2/patches/patch-common_video_iso-mpeg4_src_type__basic.cpp @@ -1,8 +1,8 @@ -$NetBSD: patch-common_video_iso-mpeg4_src_type__basic.cpp,v 1.1 2017/04/26 14:38:31 maya Exp $ +$NetBSD: patch-common_video_iso-mpeg4_src_type__basic.cpp,v 1.2 2017/05/06 18:12:00 maya Exp $ -Make GCC 4.5 happier about the prototype +Make GCC 4.5.3 happier - it type errors on this declaration ---- common/video/iso-mpeg4/src/type_basic.cpp.orig 2006-08-07 18:26:58.000000000 +0000 +--- common/video/iso-mpeg4/src/type_basic.cpp.orig 2017-05-06 17:53:07.101492438 +0000 +++ common/video/iso-mpeg4/src/type_basic.cpp @@ -317,7 +317,7 @@ Void CMotionVector::computeMV () iHalfY = m_vctTrueHalfPel.y - iMVY * 2; diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4_ctts.c b/multimedia/libmp4v2/patches/patch-lib_mp4_ctts.c new file mode 100644 index 00000000000..3a24704d928 --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4_ctts.c @@ -0,0 +1,15 @@ +$NetBSD: patch-lib_mp4_ctts.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +Fix return type. we're not returning anything. + +--- lib/mp4/ctts.c.orig 2001-08-01 00:34:00.000000000 +0000 ++++ lib/mp4/ctts.c +@@ -88,7 +88,7 @@ int quicktime_read_ctts(quicktime_t *fil + } + } + +-int quicktime_write_ctts(quicktime_t *file, quicktime_ctts_t *ctts) ++void quicktime_write_ctts(quicktime_t *file, quicktime_ctts_t *ctts) + { + int i; + quicktime_atom_t atom; diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4_funcprotos.h b/multimedia/libmp4v2/patches/patch-lib_mp4_funcprotos.h new file mode 100644 index 00000000000..41cab792b9a --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4_funcprotos.h @@ -0,0 +1,17 @@ +$NetBSD: patch-lib_mp4_funcprotos.h,v 1.1 2017/05/06 18:12:00 maya Exp $ + +Match new return types. + +--- lib/mp4/funcprotos.h.orig 2001-08-01 00:34:00.000000000 +0000 ++++ lib/mp4/funcprotos.h +@@ -67,8 +67,8 @@ int quicktime_trak_init(quicktime_trak_t + int quicktime_trak_init_video(quicktime_t *file, quicktime_trak_t *trak, int frame_w, int frame_h, float frame_rate, int time_scale, char *compressor); + int quicktime_trak_init_audio(quicktime_t *file, quicktime_trak_t *trak, int channels, int sample_rate, int bits, int sample_size, int time_scale, int sample_duration, char *compressor); + int quicktime_trak_init_hint(quicktime_t *file, quicktime_trak_t *trak, quicktime_trak_t *refTrak, int maxPktSize, int time_scale, int sample_duration); +-int quicktime_tref_init(quicktime_tref_t *tref); +-int quicktime_tref_init_hint(quicktime_tref_t *tref, quicktime_trak_t *refTrak); ++void quicktime_tref_init(quicktime_tref_t *tref); ++void quicktime_tref_init_hint(quicktime_tref_t *tref, quicktime_trak_t *refTrak); + int quicktime_udta_init(quicktime_udta_t *udta); + int quicktime_mvhd_init(quicktime_mvhd_t *mvhd); + int quicktime_moov_init(quicktime_moov_t *moov); diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4_hinthnti.c b/multimedia/libmp4v2/patches/patch-lib_mp4_hinthnti.c new file mode 100644 index 00000000000..9990f805b5b --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4_hinthnti.c @@ -0,0 +1,43 @@ +$NetBSD: patch-lib_mp4_hinthnti.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +Fix return type. we're not returning anything. + +--- lib/mp4/hinthnti.c.orig 2001-08-01 00:34:00.000000000 +0000 ++++ lib/mp4/hinthnti.c +@@ -22,23 +22,23 @@ + #include "quicktime.h" + + +-int quicktime_hint_hnti_init(quicktime_hint_hnti_t *hnti) ++void quicktime_hint_hnti_init(quicktime_hint_hnti_t *hnti) + { + quicktime_sdp_init(&(hnti->sdp)); + } + +-int quicktime_hint_hnti_delete(quicktime_hint_hnti_t *hnti) ++void quicktime_hint_hnti_delete(quicktime_hint_hnti_t *hnti) + { + quicktime_sdp_delete(&(hnti->sdp)); + } + +-int quicktime_hint_hnti_dump(quicktime_hint_hnti_t *hnti) ++void quicktime_hint_hnti_dump(quicktime_hint_hnti_t *hnti) + { + printf(" hnti\n"); + quicktime_sdp_dump(&hnti->sdp); + } + +-int quicktime_read_hint_hnti(quicktime_t *file, quicktime_hint_hnti_t *hnti, quicktime_atom_t *parent_atom) ++void quicktime_read_hint_hnti(quicktime_t *file, quicktime_hint_hnti_t *hnti, quicktime_atom_t *parent_atom) + { + quicktime_atom_t leaf_atom; + +@@ -53,7 +53,7 @@ int quicktime_read_hint_hnti(quicktime_t + } while (quicktime_position(file) < parent_atom->end); + } + +-int quicktime_write_hint_hnti(quicktime_t *file, quicktime_hint_hnti_t *hnti) ++void quicktime_write_hint_hnti(quicktime_t *file, quicktime_hint_hnti_t *hnti) + { + quicktime_atom_t atom; + diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4_hintudta.c b/multimedia/libmp4v2/patches/patch-lib_mp4_hintudta.c new file mode 100644 index 00000000000..35391619437 --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4_hintudta.c @@ -0,0 +1,46 @@ +$NetBSD: patch-lib_mp4_hintudta.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +Fix return type. we're not returning anything. + +--- lib/mp4/hintudta.c.orig 2001-08-01 00:34:00.000000000 +0000 ++++ lib/mp4/hintudta.c +@@ -22,26 +22,26 @@ + #include "quicktime.h" + + +-int quicktime_hint_udta_init(quicktime_hint_udta_t *hint_udta) ++void quicktime_hint_udta_init(quicktime_hint_udta_t *hint_udta) + { + quicktime_hinf_init(&(hint_udta->hinf)); + quicktime_hint_hnti_init(&(hint_udta->hnti)); + } + +-int quicktime_hint_udta_delete(quicktime_hint_udta_t *hint_udta) ++void quicktime_hint_udta_delete(quicktime_hint_udta_t *hint_udta) + { + quicktime_hinf_delete(&(hint_udta->hinf)); + quicktime_hint_hnti_delete(&(hint_udta->hnti)); + } + +-int quicktime_hint_udta_dump(quicktime_hint_udta_t *hint_udta) ++void quicktime_hint_udta_dump(quicktime_hint_udta_t *hint_udta) + { + printf(" udta\n"); + quicktime_hinf_dump(&hint_udta->hinf); + quicktime_hint_hnti_dump(&hint_udta->hnti); + } + +-int quicktime_read_hint_udta(quicktime_t *file, quicktime_hint_udta_t *hint_udta, quicktime_atom_t *parent_atom) ++void quicktime_read_hint_udta(quicktime_t *file, quicktime_hint_udta_t *hint_udta, quicktime_atom_t *parent_atom) + { + quicktime_atom_t leaf_atom; + +@@ -66,7 +66,7 @@ int quicktime_read_hint_udta(quicktime_t + } while (quicktime_position(file) < parent_atom->end); + } + +-int quicktime_write_hint_udta(quicktime_t *file, quicktime_hint_udta_t *hint_udta) ++void quicktime_write_hint_udta(quicktime_t *file, quicktime_hint_udta_t *hint_udta) + { + quicktime_atom_t atom; + diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4_hnti.c b/multimedia/libmp4v2/patches/patch-lib_mp4_hnti.c new file mode 100644 index 00000000000..52f8990a94d --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4_hnti.c @@ -0,0 +1,43 @@ +$NetBSD: patch-lib_mp4_hnti.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +Fix return type. we're not returning anything. + +--- lib/mp4/hnti.c.orig 2001-08-30 16:23:13.000000000 +0000 ++++ lib/mp4/hnti.c +@@ -22,23 +22,23 @@ + #include "quicktime.h" + + +-int quicktime_hnti_init(quicktime_hnti_t *hnti) ++void quicktime_hnti_init(quicktime_hnti_t *hnti) + { + quicktime_rtp_init(&(hnti->rtp)); + } + +-int quicktime_hnti_delete(quicktime_hnti_t *hnti) ++void quicktime_hnti_delete(quicktime_hnti_t *hnti) + { + quicktime_rtp_delete(&(hnti->rtp)); + } + +-int quicktime_hnti_dump(quicktime_hnti_t *hnti) ++void quicktime_hnti_dump(quicktime_hnti_t *hnti) + { + printf(" hnti\n"); + quicktime_rtp_dump(&hnti->rtp); + } + +-int quicktime_read_hnti(quicktime_t *file, quicktime_hnti_t *hnti, quicktime_atom_t *parent_atom) ++void quicktime_read_hnti(quicktime_t *file, quicktime_hnti_t *hnti, quicktime_atom_t *parent_atom) + { + quicktime_atom_t leaf_atom; + +@@ -53,7 +53,7 @@ int quicktime_read_hnti(quicktime_t *fil + } while (quicktime_position(file) < parent_atom->end); + } + +-int quicktime_write_hnti(quicktime_t *file, quicktime_hnti_t *hnti) ++void quicktime_write_hnti(quicktime_t *file, quicktime_hnti_t *hnti) + { + quicktime_atom_t atom; + diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4_rtp.c b/multimedia/libmp4v2/patches/patch-lib_mp4_rtp.c new file mode 100644 index 00000000000..8f94b154bd7 --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4_rtp.c @@ -0,0 +1,61 @@ +$NetBSD: patch-lib_mp4_rtp.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +Fix return type. we're not returning anything. + +--- lib/mp4/rtp.c.orig 2001-08-30 16:23:13.000000000 +0000 ++++ lib/mp4/rtp.c +@@ -22,12 +22,12 @@ + #include "quicktime.h" + + +-int quicktime_rtp_init(quicktime_rtp_t *rtp) ++void quicktime_rtp_init(quicktime_rtp_t *rtp) + { + rtp->string = NULL; + } + +-int quicktime_rtp_set(quicktime_rtp_t *rtp, char *string) ++void quicktime_rtp_set(quicktime_rtp_t *rtp, char *string) + { + free(rtp->string); + if (string != NULL) { +@@ -38,7 +38,7 @@ int quicktime_rtp_set(quicktime_rtp_t *r + } + } + +-int quicktime_rtp_append(quicktime_rtp_t *rtp, char *appendString) ++void quicktime_rtp_append(quicktime_rtp_t *rtp, char *appendString) + { + char* newString = malloc(strlen(rtp->string) + strlen(appendString) + 1); + +@@ -48,18 +48,18 @@ int quicktime_rtp_append(quicktime_rtp_t + rtp->string = newString; + } + +-int quicktime_rtp_delete(quicktime_rtp_t *rtp) ++void quicktime_rtp_delete(quicktime_rtp_t *rtp) + { + free(rtp->string); + } + +-int quicktime_rtp_dump(quicktime_rtp_t *rtp) ++void quicktime_rtp_dump(quicktime_rtp_t *rtp) + { + printf(" rtp\n"); + printf(" string %s\n", rtp->string); + } + +-int quicktime_read_rtp(quicktime_t *file, quicktime_rtp_t *rtp, ++void quicktime_read_rtp(quicktime_t *file, quicktime_rtp_t *rtp, + quicktime_atom_t* rtp_atom) + { + int rtpLen = rtp_atom->size - 12; +@@ -70,7 +70,7 @@ int quicktime_read_rtp(quicktime_t *file + rtp->string[rtpLen] = '\0'; + } + +-int quicktime_write_rtp(quicktime_t *file, quicktime_rtp_t *rtp) ++void quicktime_write_rtp(quicktime_t *file, quicktime_rtp_t *rtp) + { + int i; + quicktime_atom_t atom; diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4_sdp.c b/multimedia/libmp4v2/patches/patch-lib_mp4_sdp.c new file mode 100644 index 00000000000..4f89e332578 --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4_sdp.c @@ -0,0 +1,61 @@ +$NetBSD: patch-lib_mp4_sdp.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +Fix return type. we're not returning anything. + +--- lib/mp4/sdp.c.orig 2001-08-01 00:34:00.000000000 +0000 ++++ lib/mp4/sdp.c +@@ -22,12 +22,12 @@ + #include "quicktime.h" + + +-int quicktime_sdp_init(quicktime_sdp_t *sdp) ++void quicktime_sdp_init(quicktime_sdp_t *sdp) + { + sdp->string = NULL; + } + +-int quicktime_sdp_set(quicktime_sdp_t *sdp, char *string) ++void quicktime_sdp_set(quicktime_sdp_t *sdp, char *string) + { + free(sdp->string); + if (string != NULL) { +@@ -38,7 +38,7 @@ int quicktime_sdp_set(quicktime_sdp_t *s + } + } + +-int quicktime_sdp_append(quicktime_sdp_t *sdp, char *appendString) ++void quicktime_sdp_append(quicktime_sdp_t *sdp, char *appendString) + { + char* newString = malloc(strlen(sdp->string) + strlen(appendString) + 1); + +@@ -48,18 +48,18 @@ int quicktime_sdp_append(quicktime_sdp_t + sdp->string = newString; + } + +-int quicktime_sdp_delete(quicktime_sdp_t *sdp) ++void quicktime_sdp_delete(quicktime_sdp_t *sdp) + { + free(sdp->string); + } + +-int quicktime_sdp_dump(quicktime_sdp_t *sdp) ++void quicktime_sdp_dump(quicktime_sdp_t *sdp) + { + printf(" sdp\n"); + printf(" string %s\n", sdp->string); + } + +-int quicktime_read_sdp(quicktime_t *file, quicktime_sdp_t *sdp, ++void quicktime_read_sdp(quicktime_t *file, quicktime_sdp_t *sdp, + quicktime_atom_t* sdp_atom) + { + int sdpLen = sdp_atom->size - 8; +@@ -69,7 +69,7 @@ int quicktime_read_sdp(quicktime_t *file + sdp->string[sdpLen] = '\0'; + } + +-int quicktime_write_sdp(quicktime_t *file, quicktime_sdp_t *sdp) ++void quicktime_write_sdp(quicktime_t *file, quicktime_sdp_t *sdp) + { + int i; + quicktime_atom_t atom; diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4_tref.c b/multimedia/libmp4v2/patches/patch-lib_mp4_tref.c new file mode 100644 index 00000000000..7edc1d66351 --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4_tref.c @@ -0,0 +1,49 @@ +$NetBSD: patch-lib_mp4_tref.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +Fix return type. we're not returning anything. + +--- lib/mp4/tref.c.orig 2001-08-01 00:34:00.000000000 +0000 ++++ lib/mp4/tref.c +@@ -22,28 +22,28 @@ + #include "quicktime.h" + + +-int quicktime_tref_init(quicktime_tref_t *tref) ++void quicktime_tref_init(quicktime_tref_t *tref) + { + quicktime_hint_init(&(tref->hint)); + } + +-int quicktime_tref_init_hint(quicktime_tref_t *tref, quicktime_trak_t *refTrak) ++void quicktime_tref_init_hint(quicktime_tref_t *tref, quicktime_trak_t *refTrak) + { + quicktime_hint_set(&(tref->hint), refTrak); + } + +-int quicktime_tref_delete(quicktime_tref_t *tref) ++void quicktime_tref_delete(quicktime_tref_t *tref) + { + quicktime_hint_delete(&(tref->hint)); + } + +-int quicktime_tref_dump(quicktime_tref_t *tref) ++void quicktime_tref_dump(quicktime_tref_t *tref) + { + printf(" tref\n"); + quicktime_hint_dump(&tref->hint); + } + +-int quicktime_read_tref(quicktime_t *file, quicktime_tref_t *tref, quicktime_atom_t *parent_atom) ++void quicktime_read_tref(quicktime_t *file, quicktime_tref_t *tref, quicktime_atom_t *parent_atom) + { + quicktime_atom_t leaf_atom; + +@@ -58,7 +58,7 @@ int quicktime_read_tref(quicktime_t *fil + } while (quicktime_position(file) < parent_atom->end); + } + +-int quicktime_write_tref(quicktime_t *file, quicktime_tref_t *tref) ++void quicktime_write_tref(quicktime_t *file, quicktime_tref_t *tref) + { + quicktime_atom_t atom; + diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4_udta.c b/multimedia/libmp4v2/patches/patch-lib_mp4_udta.c new file mode 100644 index 00000000000..58c1738fe3e --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4_udta.c @@ -0,0 +1,15 @@ +$NetBSD: patch-lib_mp4_udta.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +Fix return type. we're not returning anything. + +--- lib/mp4/udta.c.orig 2001-08-30 16:23:13.000000000 +0000 ++++ lib/mp4/udta.c +@@ -88,7 +88,7 @@ int quicktime_read_udta(quicktime_t *fil + return result; + } + +-int quicktime_write_udta(quicktime_t *file, quicktime_udta_t *udta) ++void quicktime_write_udta(quicktime_t *file, quicktime_udta_t *udta) + { + quicktime_atom_t atom, subatom; + diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4v2_atom__standard.cpp b/multimedia/libmp4v2/patches/patch-lib_mp4v2_atom__standard.cpp new file mode 100644 index 00000000000..f2001d6d5d9 --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4v2_atom__standard.cpp @@ -0,0 +1,32 @@ +$NetBSD: patch-lib_mp4v2_atom__standard.cpp,v 1.1 2017/05/06 18:12:00 maya Exp $ + +Handle signed char better. 0251 is \xa9 (copyright sign) +but it's truncated if char is signed + +--- lib/mp4v2/atom_standard.cpp.orig 2007-06-04 16:47:36.000000000 +0000 ++++ lib/mp4v2/atom_standard.cpp +@@ -22,15 +22,15 @@ + #include "mp4common.h" + #include "atoms.h" + +-static const char name[5]={0251,'n', 'a', 'm', '\0'}; +-static const char art[5]={0251,'A', 'R', 'T', '\0'}; +-static const char wrt[5]={0251,'w', 'r', 't', '\0'}; +-static const char alb[5]={0251,'a', 'l', 'b', '\0'}; +-static const char day[5]={0251,'d', 'a', 'y', '\0'}; +-static const char too[5]={0251,'t', 'o', 'o', '\0'}; +-static const char cmt[5]={0251,'c', 'm', 't', '\0'}; +-static const char gen[5]={0251,'g', 'e', 'n', '\0'}; +-static const char grp[5]={0251,'g', 'r', 'p', '\0'}; ++static const char name[5]={'\xa9','n', 'a', 'm', '\0'}; ++static const char art[5]={'\xa9','A', 'R', 'T', '\0'}; ++static const char wrt[5]={'\xa9','w', 'r', 't', '\0'}; ++static const char alb[5]={'\xa9','a', 'l', 'b', '\0'}; ++static const char day[5]={'\xa9','d', 'a', 'y', '\0'}; ++static const char too[5]={'\xa9','t', 'o', 'o', '\0'}; ++static const char cmt[5]={'\xa9','c', 'm', 't', '\0'}; ++static const char gen[5]={'\xa9','g', 'e', 'n', '\0'}; ++static const char grp[5]={'\xa9','g', 'r', 'p', '\0'}; + + MP4StandardAtom::MP4StandardAtom (const char *type) : MP4Atom(type) + { diff --git a/multimedia/libmp4v2/patches/patch-lib_mp4v2_mp4atom.cpp b/multimedia/libmp4v2/patches/patch-lib_mp4v2_mp4atom.cpp new file mode 100644 index 00000000000..2ad8ea3971f --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_mp4v2_mp4atom.cpp @@ -0,0 +1,26 @@ +$NetBSD: patch-lib_mp4v2_mp4atom.cpp,v 1.1 2017/05/06 18:12:00 maya Exp $ + +handle signed char better - 0251 is \xa9 (copyright sign) +in signed char, it is truncated. + +--- lib/mp4v2/mp4atom.cpp.orig 2007-04-30 20:29:28.000000000 +0000 ++++ lib/mp4v2/mp4atom.cpp +@@ -263,12 +263,12 @@ MP4Atom* MP4Atom::CreateAtom(const char* + pAtom = new MP4SmiAtom(); + } + break; +- case 0251: +- static const char name[5]={0251,'n', 'a', 'm', '\0'}; +- static const char cmt[5]={0251,'c', 'm', 't', '\0'}; +- static const char cpy[5]={0251,'c', 'p', 'y', '\0'}; +- static const char des[5]={0251,'d', 'e', 's','\0'}; +- static const char prd[5]={0251, 'p', 'r', 'd', '\0'}; ++ case '\xa9': ++ static const char name[5]={'\xa9','n', 'a', 'm', '\0'}; ++ static const char cmt[5]={'\xa9','c', 'm', 't', '\0'}; ++ static const char cpy[5]={'\xa9','c', 'p', 'y', '\0'}; ++ static const char des[5]={'\xa9','d', 'e', 's','\0'}; ++ static const char prd[5]={'\xa9', 'p', 'r', 'd', '\0'}; + if (ATOMID(type) == ATOMID(name) || + ATOMID(type) == ATOMID(cmt) || + ATOMID(type) == ATOMID(cpy) || diff --git a/multimedia/libmp4v2/patches/patch-lib_rtp_net__udp.c b/multimedia/libmp4v2/patches/patch-lib_rtp_net__udp.c new file mode 100644 index 00000000000..b1c7b0db4eb --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-lib_rtp_net__udp.c @@ -0,0 +1,17 @@ +$NetBSD: patch-lib_rtp_net__udp.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +No point in collecting retlen if we're just going to ignore it. + +--- lib/rtp/net_udp.c.orig 2007-09-18 20:52:01.000000000 +0000 ++++ lib/rtp/net_udp.c +@@ -163,9 +163,8 @@ socket_error(const char *msg, ...) + va_end(ap); + rtp_message(LOG_ALERT, "ERROR: %s, (%d - %s)\n", buffer, e, ws_errs[i].errname); + #else +- uint32_t retlen; + va_start(ap, msg); +- retlen = vsnprintf(buffer, blen, msg, ap); ++ (void)vsnprintf(buffer, blen, msg, ap); + va_end(ap); + rtp_message(LOG_ALERT, "%s:%s", buffer, strerror(errno)); + #endif diff --git a/multimedia/libmp4v2/patches/patch-player_lib_audio_faad_config.c b/multimedia/libmp4v2/patches/patch-player_lib_audio_faad_config.c new file mode 100644 index 00000000000..58a0bc8c5a0 --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-player_lib_audio_faad_config.c @@ -0,0 +1,28 @@ +$NetBSD: patch-player_lib_audio_faad_config.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +if 0 possible out of bounds write +Our scratch space is one channel wide, don't treat it +like two if we're doing stereo. + +--- player/lib/audio/faad/config.c.orig 2003-04-09 00:44:38.000000000 +0000 ++++ player/lib/audio/faad/config.c +@@ -628,15 +628,18 @@ static int ch_index(MC_Info *mip, int cp + */ + if (XChans > 0) { + ch = Chans - XChans; /* left scratch channel */ +- mip->ch_info[ch].cpe = cpe; ++ mip->ch_info[ch].cpe = 0; + mip->ch_info[ch].ch_is_left = 1; + mip->ch_info[ch].widx = ch; ++#if 0 /* Possible out of bound write. we only have one scratch channel */ + if (cpe) { + mip->ch_info[ch].paired_ch = ch+1; + mip->ch_info[ch+1].ch_is_left = 0; + mip->ch_info[ch+1].paired_ch = ch; + } ++#endif + } ++ /* XXX Below code never happens, XChans seems to always be 1. Assert? */ + else { + ch = -1; /* error, no scratch space */ + } diff --git a/multimedia/libmp4v2/patches/patch-player_lib_audio_faad_huffdec.c b/multimedia/libmp4v2/patches/patch-player_lib_audio_faad_huffdec.c new file mode 100644 index 00000000000..90e3fac9bd4 --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-player_lib_audio_faad_huffdec.c @@ -0,0 +1,16 @@ +$NetBSD: patch-player_lib_audio_faad_huffdec.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +correct misleading indentation (not changing behaviour) + +--- player/lib/audio/faad/huffdec.c.orig 2003-02-18 18:51:31.000000000 +0000 ++++ player/lib/audio/faad/huffdec.c +@@ -369,7 +369,8 @@ static int getmask(faacDecHandle hDecode + for(b = 0; b < info->nsbk; b = *group++) + for(i = 0; i < info->sfb_per_sbk[b]; i ++) + *mask++ = 1; +- return 2; ++ ++ return 2; + } + + /* otherwise get mask */ diff --git a/multimedia/libmp4v2/patches/patch-player_lib_audio_faad_monopred.c b/multimedia/libmp4v2/patches/patch-player_lib_audio_faad_monopred.c new file mode 100644 index 00000000000..7d877e8c109 --- /dev/null +++ b/multimedia/libmp4v2/patches/patch-player_lib_audio_faad_monopred.c @@ -0,0 +1,19 @@ +$NetBSD: patch-player_lib_audio_faad_monopred.c,v 1.1 2017/05/06 18:12:00 maya Exp $ + +We're ignoring the return value anyway, so don't assign +it to anything. + +--- player/lib/audio/faad/monopred.c.orig 2002-01-11 00:55:17.000000000 +0000 ++++ player/lib/audio/faad/monopred.c +@@ -90,10 +90,9 @@ static void flt_round(float *pf) + static void inv_table_flt_round(float *ftmp) + { + int exp; +- double mnt; + float descale; + +- mnt = frexp((double)*ftmp, &exp); ++ (void)frexp((double)*ftmp, &exp); + descale = (float)ldexp(1.0, exp + 15); + *ftmp += descale; + *ftmp -= descale; |