aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-05-03 15:38:46 +0200
committerMichael Niedermayer <michaelni@gmx.at>2013-05-03 15:50:01 +0200
commit760f7d3a90bf4ab7ca396c62aa239b75c7ac6f59 (patch)
treeb6970fed9789f0e2d78a997dbf213e3ada29ef49
parent0966623604a92bc7fa6213e7dfb9c03d007ab3e9 (diff)
parent769d921f3e4d3808320238f4f33b47cd492f1c04 (diff)
downloadffmpeg-760f7d3a90bf4ab7ca396c62aa239b75c7ac6f59.tar.gz
Merge remote-tracking branch 'qatar/master'
* qatar/master: compat: msvc: Make sure the object files are included when linking statically id3v2: check for end of file while unescaping tags Conflicts: configure libavformat/id3v2.c Note, ffmpeg is not affected by the out of buffer write bug Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rwxr-xr-xconfigure5
-rw-r--r--libavformat/id3v2.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/configure b/configure
index e78d1bad76..f646d55885 100755
--- a/configure
+++ b/configure
@@ -4614,6 +4614,11 @@ if enabled yasm; then
printf '' >$TMPASM
fi
+if enabled msvc && ! enabled shared; then
+ echo '#pragma comment(linker, "/include:"EXTERN_PREFIX"avpriv_strtod")' >> $TMPH
+ echo '#pragma comment(linker, "/include:"EXTERN_PREFIX"avpriv_snprintf")' >> $TMPH
+fi
+
mkdir -p doc
echo "@c auto-generated by configure" > doc/config.texi
diff --git a/libavformat/id3v2.c b/libavformat/id3v2.c
index 46d579f466..3b02f95553 100644
--- a/libavformat/id3v2.c
+++ b/libavformat/id3v2.c
@@ -720,9 +720,11 @@ static void id3v2_parse(AVFormatContext *s, int len, uint8_t version,
uint8_t *b;
b = buffer;
- while (avio_tell(s->pb) < end && b - buffer < tlen) {
+ while (avio_tell(s->pb) < end && b - buffer < tlen && !s->pb->eof_reached) {
*b++ = avio_r8(s->pb);
- if (*(b - 1) == 0xff && avio_tell(s->pb) < end - 1 && b - buffer < tlen) {
+ if (*(b - 1) == 0xff && avio_tell(s->pb) < end - 1 &&
+ b - buffer < tlen &&
+ !s->pb->eof_reached ) {
uint8_t val = avio_r8(s->pb);
*b++ = val ? val : avio_r8(s->pb);
}