On 02/28/2012 12:07 PM, Anton Khirnov wrote: > > On Tue, 28 Feb 2012 11:51:09 -0500, Justin Ruggles <[email protected]> > wrote: >> On 02/28/2012 06:25 AM, Anton Khirnov wrote: >> >>> Frame sizes in ID3v2.3 are not synchsafe, they are simply 32be numbers. >>> >>> In practice this bug is not noticeable unless the frame size takes more >>> than 7 bits (which is almost never for text frames). >>> --- >>> libavformat/id3v2enc.c | 26 +++++++++++++++----------- >>> 1 files changed, 15 insertions(+), 11 deletions(-) >>> >>> diff --git a/libavformat/id3v2enc.c b/libavformat/id3v2enc.c >>> index 8666818..58f7797 100644 >>> --- a/libavformat/id3v2enc.c >>> +++ b/libavformat/id3v2enc.c >>> @@ -45,7 +45,7 @@ static int string_is_ascii(const uint8_t *str) >>> * according to encoding (only UTF-8 or UTF-16+BOM supported). >>> * @return number of bytes written or a negative error code. >>> */ >>> -static int id3v2_put_ttag(AVFormatContext *s, const char *str1, const char >>> *str2, >>> +static int id3v2_put_ttag(ID3v2EncContext *id3, AVIOContext *avioc, const >>> char *str1, const char *str2, >>> uint32_t tag, enum ID3v2Encoding enc) >> >> >> Patch looks ok. Changing the function to take an AVIOContext instead of >> AVFormatContext is unrelated to the fix right? It does seem like a >> better choice though. >> > > It's kinda related. It needs ID3v2EncContext to get the id3v2 version so I had > to change signature anyway, so I switched AVFormatContext for AVIOContext > while > I was at it....so yeah, mostly unrelated.
ok. i'm fine with the patch as-is. -Justin _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
