| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Allocate the frame pointers only when actually decoding the file.
|
|
|
|
|
|
|
|
|
| |
Wildcard matches are directly applied to all filenames in
subdirectories without any attempt at matching relative paths.
This change is based on the following feature request:
http://bugs.musicpd.org/view.php?id=3729
|
|
|
|
|
|
|
|
|
| |
Use the first INDEX in each TRACK section, instead of the last, for the
start time. This preserves the original CD layout (including gaps
between tracks), and avoids skipping sections of songs in more exotic
cuesheets (eg musical suite tracks).
Fixes 0004355 and 0003359
|
| |
|
|
|
|
|
| |
This was lost in commit 8ead8f7ea, because this was never implemented
for the new API.
|
|
|
|
|
| |
Drop support for misencoded tags. People should not be using ID3v1
anyway.
|
|
|
|
| |
Always write UTF-8 to the log file.
|
|\ |
|
| | |
|
| |
| |
| |
| | |
Fixes missing SongBorder() call, which causes "single" mode breakage.
|
| |
| |
| |
| |
| |
| |
| | |
If the song tag comes from a stream, and MPD playback restarts, MPD
would believe the tag should override the newly received tag. This
makes the previous tag appear stuck. This change passes the song tag
only if it's authoritative - i.e. if it's a song file.
|
| |
| |
| |
| |
| |
| | |
Right after booting, the monotonic clock starts with a very small
value, and AudioOutput::LockUpdate() may believe that the fail_timer
has not recovered yet.
|
| |
| |
| |
| |
| | |
When seeking to the beginning of a packet, skip the samples that come
before the desired time stamp.
|
| |
| |
| |
| | |
Fixes deadlock on small responses.
|
| |
| |
| |
| |
| |
| | |
The Connect method can be called between Schedule and lock. In that case, when
locked, the state is already set to CONNECTING of READY and the condition won't
be signaled anymore.
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Not initialising granulepos leads to it having arbitrary values in the
encoded stream including possibly negative values which are not valid
and confuse opusdec. Explicitly initialise opus_encoder::granulepos
to avoid that problem.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Requiring this prefix makes the client's intention very clear, but it
was too hard to understand why this prefix was needed. Initially, my
intention was to differentiate from broken clients which prefix relate
URIs with a slash; once MPD allowed that. In the past few years
however, MPD has disallowed that, and there was no significant
breakage (except for the "add /" special case which some clients
apparently still do). So I figure it's about time to define that an
URI that begins with a slash points to an arbitrary file on the file
system.
|
|\| |
|
| | |
|
| |\ |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
This is Darwin specific: the previous implementation was causing an integer
overflow when base.numer is very large. On PPC Darwin, the timebase info is 1000000000/33330116 and this is too large for integer arithmetic.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The file handle is never reset to INVALID_HANDLE_VALUE, and thus the
destructor will assume the operation shall be cancelled and will
delete the temporary file.
This was a major breakage for saving the database file and the state
file.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Build a table of pre-existing tag types before adding new items. The
old way would check HasType() each time, which would return true after
the first instance of that tag type had been added, preventing
duplicate tag types to be merged.
This broke duplicate tag types loaded from the state file, because
this code path uses TagBuilder::Complement().
|
| | | |
|
|\| | |
|
| | |
| | |
| | |
| | |
| | | |
This is Darwin specific: the previous implementation was causing an integer
overflow when base.numer is very large. On PPC Darwin, the timebase info is 1000000000/33330116 and this is too large for integer arithmetic.
|
| | |
| | |
| | |
| | |
| | | |
A bug report was submitted with a 600 kB ID3 tag that could not be
read by MPD.
|
|\| | |
|
| |\| |
|
| | | |
|
| | |
| | |
| | |
| | | |
Fixes gcc5 warning.
|
| | | |
|
| | |
| | |
| | |
| | | |
This can eliminate the ad-hoc "#ifdef WIN32" and can also support other platforms lacking it as well (including Darwin 9).
|
| | |
| | |
| | |
| | |
| | | |
Caused a build failure with uClibc because snprintf() was not
available.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
|\| | |
|
| | | |
|
| |\| |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | | |
The Linux feature allows writing new files to an invisible file, and
then replace the old file. This preserves the old file if we get
interrupted by some event.
|
|\| | |
|