aboutsummaryrefslogtreecommitdiffstats
path: root/src/tag_ape.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* copyright year 2011Max Kellermann2011-01-291-1/+1
|
* tag_ape: support multiple valuesMax Kellermann2010-11-241-1/+15
| | | | One APE tag may contain more than one value, separated by null bytes.
* tag_ape: move code to ape.cMax Kellermann2010-11-181-93/+19
| | | | Generic library for scanning APE tags. Eliminated one "goto"!
* tag_ape: remove duplicate entries in the tag name tableMax Kellermann2010-05-311-13/+5
| | | | Reuse the function tag_name_parse_i().
* tag_ape: move code to tag_ape_name_parse()Max Kellermann2010-05-311-1/+7
|
* tag_ape: move table lookup to tag_table.hMax Kellermann2010-05-301-9/+9
| | | | Allow code sharing.
* tag_ape: support album artist, MusicBrainz tagsMax Kellermann2010-05-301-1/+8
| | | | | | | | | | I took these tag names from a MusePack sample file I got from a user. These are not documented in the APE specification: http://wiki.hydrogenaudio.org/index.php?title=APE_key People seem to be using undocumented extensions to the specification anyway, and the best we can do is attempt to support them.
* tag_{id3,ape}: explicitly open files in binary modeMax Kellermann2010-05-201-1/+1
| | | | Add the flag "b" to fopen(). Windows compatibility.
* Update copyright notices.Avuton Olrich2009-12-311-1/+1
|
* include config.h in all sourcesMax Kellermann2009-11-121-0/+1
| | | | | | After we've been hit by Large File Support problems several times in the past week (which only occur on 32 bit platforms, which I don't have), this is yet another attempt to fix the issue.
* tag: removed the "_ITEM_" suffix from the enum namesMax Kellermann2009-10-131-7/+7
|
* Merged release 0.15.2 from branch 'v0.15.x'Max Kellermann2009-08-151-4/+8
|\ | | | | | | | | | | | | Conflicts: NEWS configure.ac
| * ape: added protection against large memory allocationsMax Kellermann2009-07-191-0/+3
| | | | | | | | | | | | The function tag_ape_load() retrieves a 32 bit unsigned integer from the input file, and passes it to g_malloc(). This is dangerous, and may be used for a denial of service attack on MPD.
| * tag_ape: removed redundant length checkMax Kellermann2009-07-191-3/+4
| | | | | | | | | | Extend the tagLen check after reading it. Removed the second (redundant) check after the subtraction.
| * ape: check the tag size (fixes integer underflow)Max Kellermann2009-07-181-1/+1
| | | | | | | | | | | | | | The expression "tagLen - size > 0" may result in an integer underflow and a buffer overflow, when "size" is larger than "tagLen". "size" is read from the input file, and must not be trusted. This patch changes the expression to "tagLen > size", which is a lot safer.
* | tag_ape: simplified the apeItems arrayMax Kellermann2009-07-191-22/+12
| | | | | | | | | | Make "enum tag_type" the array index, and convert apeItems to a sparse array.
* | tag_ape: moved code to tag_ape_import_item()Max Kellermann2009-07-191-12/+22
| | | | | | | | Improve code readability.
* | tag_ape: converted apeItems and tagItems to global varsMax Kellermann2009-07-191-20/+20
|/ | | | Don't initialize those arrays each time tag_ape_load() is called.
* tag: use g_ascii_strcasecmp() instead of strcasecmp()Max Kellermann2009-04-281-1/+1
| | | | | strcasecmp() is locale dependent, making it a bad choice for internal string comparisons.
* all: Update copyright header.Avuton Olrich2009-03-131-3/+4
| | | | | | | | This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
* tag: moved APE code to tag_ape.cMax Kellermann2009-02-281-0/+145