Unified · Split
| @@ -57,6 +57,11 @@ static int daud_write_header(struct AVFormatContext *s) · 56 unmodified lines | ||
| 57 | 57 | |
| 58 | 58 | static int daud_write_packet(struct AVFormatContext *s, AVPacket *pkt) |
| 59 | 59 | { |
| 60 | + if (pkt->size > 65535) { | |
| 61 | + av_log(s, AV_LOG_ERROR, | |
| 62 | + "Packet size too large for s302m. (%d > 65535)\n", pkt->size); | |
| 63 | + return -1; | |
| 64 | + } | |
| 60 | 65 | avio_wb16(s->pb, pkt->size); |
| 61 | 66 | avio_wb16(s->pb, 0x8010); // unknown |
| 62 | 67 | avio_write(s->pb, pkt->data, pkt->size); |