- 26 Oct, 2017 8 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
Fixes the non-Linux build.
-
Max Kellermann authored
-
Max Kellermann authored
This loop was introduced in commit 24c1f463, but -EPIPE is not a possible error condition for snd_pcm_hw_params(). This code does not appear to make sense. Problems with a wrong period_time should be caught before that by snd_pcm_hw_params_set_period_time_near(). This commit removes the last "goto" in MPD! Yay!
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
- 24 Oct, 2017 2 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
Apparently, connecting a socket to a loopback address can block on Windows, and a non-blocking socket will return WSAEINPROGRESS. This broken PoorSocketPair() in commit 2119e4fd, which made the socket non-blocking right from the start. This fix postpones the ioctlsocket(FIONBIO) call until after the connect(). Closes #134
-
- 18 Oct, 2017 9 commits
-
-
Max Kellermann authored
release v0.20.11
-
Max Kellermann authored
-
Max Kellermann authored
Turns out that using CP_ACP is a lousy idea, because only very few Unicode characters can be represented by it. Instead, switch to UTF-8 (which every sane person on other operating system already uses). Closes #102
-
Max Kellermann authored
-
Max Kellermann authored
Applies the improvements from the previous commit to the "seek" commands, which are also capable of switching songs. Closes #119
-
Max Kellermann authored
Our previous use of Queue::SwapOrders() could cause surprising results: - sometimes, the old "current" song would be played again (if the newly selected song had not been played already) - sometimes, the old "current" song would not be played again (if the newly selected song had already been played) This is inconsistent, because it should not depend on whether the newly selected song had already been played. So instead of Queue::SwapOrders() we now use Queue::MoveOrderAfter() and Queue::MoveOrderBefore(), which is more expensive, but also more consistent. It attempts to retain as much from the previous order list as possible, and only moves the newly selected song around.
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
- 27 Sep, 2017 2 commits
-
-
Max Kellermann authored
If an early exception gets caught (e.g. from AllocatedPath::FromUTF8Throw()) before DecoderControl::CommandFinishedLocked() is called, the decoder thread would go in an endless loop, because DecoderCommand::START is still set. Closes #118
-
John Regan authored
GME starts all track indexes at zero, but subtune prefixes start at one. This fixes an off-by-one error during track enumeration.
-
- 26 Sep, 2017 2 commits
-
-
John Regan authored
GME starts all track indexes at zero, but subtune prefixes start at one. This fixes an off-by-one error during track enumeration.
-
John Regan authored
If you load an NSFE file (which has embedded track titles), then attempt to load an M3U file, it causes GME to lose all information found in the NSFE file. This adds a check that the M3U file exists before attempting to load.
-
- 22 Sep, 2017 2 commits
-
-
Max Kellermann authored
-
John Regan authored
-
- 21 Sep, 2017 15 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-