soundsource*::ParseHeader discrepancies
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Mixxx |
Fix Released
|
Undecided
|
fenugrec | ||
1.7 |
Won't Fix
|
Medium
|
fenugrec |
Bug Description
This patch fixes all kinds of differences in the ::ParseHeader functions
of the sound proxies. The behaviour should now be:
A) returning ERR means the file is invalid, but does *not* imply it has (in)valid tags.
B) setHeaderParsed is set to TRUE at the end of ::ParseHeader to indicate that
1) the file has been succesfully opened (although not necessarily playable)
2) tags, *if present*, have been read
The upper levels should call ParseHeader conditionally (i.e. only if getHeaderParsed
returns false) to avoid useless filesystem activity.
Different proxies handle empty tag fields differently (i.e. writing "" or just
not writing anything);
but since each item (artis, title, etc.) should be NULL initially (?), this is
irrelevant.
The initial patch I'm including is based on 1.7 trunk (as of rev ~ 2535) and touches
the following files:
soundsourcem4a.cpp
soundsourcemp3.cpp
soundsourceoggv
soundsourcesndf
the patch also fixes some handles not being closed before returning ERR.
Changed in mixxx: | |
status: | New → In Progress |
assignee: | nobody → C. Stewart (fenugrec) |
Changed in mixxx: | |
status: | In Progress → Fix Committed |
Changed in mixxx: | |
status: | Fix Committed → Fix Released |
no audio, no start