diff options
| author | Daniel Stenberg <daniel@haxx.se> | 2002-09-16 10:14:56 +0000 |
|---|---|---|
| committer | Daniel Stenberg <daniel@haxx.se> | 2002-09-16 10:14:56 +0000 |
| commit | f9a46c1cda57be492eb4cf562222900a5d4cf260 (patch) | |
| tree | 46791de937a5c3bd11496e7fe2faf2ae03e0d692 | |
| parent | 9fe53cda9a0cc7608b6ef32184cfd59f42f2e91e (diff) | |
| download | rockbox-f9a46c1cda57be492eb4cf562222900a5d4cf260.zip rockbox-f9a46c1cda57be492eb4cf562222900a5d4cf260.tar.gz rockbox-f9a46c1cda57be492eb4cf562222900a5d4cf260.tar.bz2 rockbox-f9a46c1cda57be492eb4cf562222900a5d4cf260.tar.xz | |
When getting tag contents, we might read a tag which has a part of it within
our buffer and part outside. This adjusts so that we only attempt to read
the part of the tag that is inside the buffer. Magnus Holmgren helped out
here!
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2297 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | firmware/id3.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/firmware/id3.c b/firmware/id3.c index 96b1b51..e70c288 100644 --- a/firmware/id3.c +++ b/firmware/id3.c @@ -225,9 +225,9 @@ static void setid3v2title(int fd, struct mp3entry *entry) (header[5]); } - /* Continue if the frame length seems bad */ - if(headerlen > size) - continue; + /* Get only the part of the header that is within our buffer */ + if(headerlen > (size-readsize)) + headerlen = (size - readsize); /* Check for certain frame headers */ if(!strncmp(header, "TPE1", strlen("TPE1")) || |