| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
04205039f24ea6e71d2ce94c7cb7e1395f95179e was not enough to
fix the ordered list issue introduced by
26f0033ebb5f8e7c204a042709e3dfa885eac868.
heap.Pop uses Swap internally which modifies as songs index.
We fix the broken indices by overriding them after the ordered list
was created.
|
| |
|
|
|
|
|
|
|
|
|
| |
Since 26f0033ebb5f8e7c204a042709e3dfa885eac868 and using Song pointers
the copied Playlist in OrderedList actually holds the same
Songs as the originally one.
This and the side effects in Playlist.Pop (setting the index to -1)
breaks the heap because all songs in the original queue now
have a invalid index (-1).
This is fixed by removing the side effect in Playlist.Pop().
|
| |
|
|
|
|
| |
Go's copy builtin does only copy min(len(dest), len(src)) elements,
since we create an empty destination slice with a big enough capacity
copy does not actually copy anything.
|
| |
|
|
|
|
|
|
|
|
|
| |
Storing song objects in the Songs slice and using pointers to the
underlying array slots breaks if the underlying array must be grown.
When the array is grown the objects are copied to the new array and
the pointers used in queue point to the old objects.
This causes that Playlist.applyTimeBonus may not correctly apply
to the most recent list of songs.
This is fixed by always using Song pointers.
|
| | |
|
| |
|
|
| |
This ensures that the initial reported song array is in order.
|
| | |
|
| |
|
|
|
|
|
| |
Mirror more closely the fmt interface and reduce the verbosity
of the log call sites.
Additionally the log message is only created if we are actually going
to log it.
|
| |
|
|
|
|
|
|
| |
The 'local' backend is able to serve the music from a path specified
by '-server-music-dir'.
Add command line options to select the server port as well as a list
of backends.
|
| | |
|
| | |
|
| |
|