From 773947ba76c575abc01ba128206c87440dad40ec Mon Sep 17 00:00:00 2001 From: Anton Khirnov Date: Wed, 2 Mar 2011 17:48:45 +0100 Subject: [PATCH] lavf: deprecate get_strz() in favor of avio_get_str Signed-off-by: Ronald S. Bultje (cherry picked from commit e16ead0716c2f988d1e26369a4c67b354ff86134) --- libavformat/avio.h | 7 ++++++- libavformat/aviobuf.c | 13 +++---------- libavformat/cafdec.c | 4 ++-- libavformat/ffmdec.c | 3 ++- libavformat/mov.c | 2 +- 5 files changed, 14 insertions(+), 15 deletions(-) diff --git a/libavformat/avio.h b/libavformat/avio.h index fd4839c789..fba98e318f 100644 --- a/libavformat/avio.h +++ b/libavformat/avio.h @@ -548,7 +548,12 @@ int avio_get_str(AVIOContext *pb, int maxlen, char *buf, int buflen); int avio_get_str16le(AVIOContext *pb, int maxlen, char *buf, int buflen); int avio_get_str16be(AVIOContext *pb, int maxlen, char *buf, int buflen); -char *get_strz(AVIOContext *s, char *buf, int maxlen); +#if FF_API_OLD_AVIO +/** + * @deprecated use avio_get_str instead + */ +attribute_deprecated char *get_strz(AVIOContext *s, char *buf, int maxlen); +#endif unsigned int avio_rb16(AVIOContext *s); unsigned int avio_rb24(AVIOContext *s); unsigned int avio_rb32(AVIOContext *s); diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c index 5b2f9c0fe7..9807c467d4 100644 --- a/libavformat/aviobuf.c +++ b/libavformat/aviobuf.c @@ -675,20 +675,13 @@ unsigned int avio_rb32(AVIOContext *s) return val; } +#if FF_API_OLD_AVIO char *get_strz(AVIOContext *s, char *buf, int maxlen) { - int i = 0; - char c; - - while ((c = avio_r8(s))) { - if (i < maxlen-1) - buf[i++] = c; - } - - buf[i] = 0; /* Ensure null terminated, but may be truncated */ - + avio_get_str(s, INT_MAX, buf, maxlen); return buf; } +#endif int ff_get_line(AVIOContext *s, char *buf, int maxlen) { diff --git a/libavformat/cafdec.c b/libavformat/cafdec.c index d98c4bf095..a43c34496b 100644 --- a/libavformat/cafdec.c +++ b/libavformat/cafdec.c @@ -185,8 +185,8 @@ static void read_info_chunk(AVFormatContext *s, int64_t size) for (i = 0; i < nb_entries; i++) { char key[32]; char value[1024]; - get_strz(pb, key, sizeof(key)); - get_strz(pb, value, sizeof(value)); + avio_get_str(pb, INT_MAX, key, sizeof(key)); + avio_get_str(pb, INT_MAX, value, sizeof(value)); av_metadata_set2(&s->metadata, key, value, 0); } } diff --git a/libavformat/ffmdec.c b/libavformat/ffmdec.c index bcfc1658e2..7dd567ed7f 100644 --- a/libavformat/ffmdec.c +++ b/libavformat/ffmdec.c @@ -325,7 +325,8 @@ static int ffm_read_header(AVFormatContext *s, AVFormatParameters *ap) codec->qcompress = avio_rb16(pb) / 10000.0; codec->qblur = avio_rb16(pb) / 10000.0; codec->bit_rate_tolerance = avio_rb32(pb); - codec->rc_eq = av_strdup(get_strz(pb, rc_eq_buf, sizeof(rc_eq_buf))); + avio_get_str(pb, INT_MAX, rc_eq_buf, sizeof(rc_eq_buf)); + codec->rc_eq = av_strdup(rc_eq_buf); codec->rc_max_rate = avio_rb32(pb); codec->rc_min_rate = avio_rb32(pb); codec->rc_buffer_size = avio_rb32(pb); diff --git a/libavformat/mov.c b/libavformat/mov.c index 537b9c6fb4..ad5bada180 100644 --- a/libavformat/mov.c +++ b/libavformat/mov.c @@ -2331,7 +2331,7 @@ static void mov_read_chapters(AVFormatContext *s) avio_get_str16le(sc->pb, len, title, title_len); else { AV_WB16(title, ch); - get_strz(sc->pb, title + 2, len - 1); + avio_get_str(sc->pb, len - 2, title + 2, title_len - 2); } ff_new_chapter(s, i, st->time_base, sample->timestamp, end, title);