diff options
author | Uwe L. Korn <uwelk@xhochy.com> | 2014-05-31 20:37:25 +0100 |
---|---|---|
committer | Martin Storsjö <martin@martin.st> | 2014-06-01 23:30:33 +0300 |
commit | 3b18857ab301d2a0b3e86e9d85eed76f0798a29c (patch) | |
tree | f94a6fd034908efc74b221c0f67425999a37d1c8 /libavformat/rtmppkt.c | |
parent | a1859032e39d96352687186fd179e1559dea2aca (diff) | |
download | ffmpeg-3b18857ab301d2a0b3e86e9d85eed76f0798a29c.tar.gz |
rtmppkt: Add method to read an AMF string that is not prefixed by its type
Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavformat/rtmppkt.c')
-rw-r--r-- | libavformat/rtmppkt.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/libavformat/rtmppkt.c b/libavformat/rtmppkt.c index 306a243941..37fbb5fc16 100644 --- a/libavformat/rtmppkt.c +++ b/libavformat/rtmppkt.c @@ -102,13 +102,11 @@ int ff_amf_read_number(GetByteContext *bc, double *val) return 0; } -int ff_amf_read_string(GetByteContext *bc, uint8_t *str, - int strsize, int *length) +int ff_amf_get_string(GetByteContext *bc, uint8_t *str, + int strsize, int *length) { int stringlen = 0; int readsize; - if (bytestream2_get_byte(bc) != AMF_DATA_TYPE_STRING) - return AVERROR_INVALIDDATA; stringlen = bytestream2_get_be16(bc); if (stringlen + 1 > strsize) return AVERROR(EINVAL); @@ -122,6 +120,14 @@ int ff_amf_read_string(GetByteContext *bc, uint8_t *str, return 0; } +int ff_amf_read_string(GetByteContext *bc, uint8_t *str, + int strsize, int *length) +{ + if (bytestream2_get_byte(bc) != AMF_DATA_TYPE_STRING) + return AVERROR_INVALIDDATA; + return ff_amf_get_string(bc, str, strsize, length); +} + int ff_amf_read_null(GetByteContext *bc) { if (bytestream2_get_byte(bc) != AMF_DATA_TYPE_NULL) |