Skip to content

Merge 0.23.4#1

Merged
ideonaudio merged 189 commits into
ideonaudio:masterfrom
MusicPlayerDaemon:master
Nov 5, 2021
Merged

Merge 0.23.4#1
ideonaudio merged 189 commits into
ideonaudio:masterfrom
MusicPlayerDaemon:master

Conversation

@ideonaudio
Copy link
Copy Markdown
Owner

No description provided.

MaxKellermann and others added 30 commits September 24, 2021 11:33
This way, we know whether we're explicitly "paused" or "not yet
activated because the ring buffer hasn't been filled yet".
This should translate to ACK_ERROR_ARG instead of ACK_ERROR_UNKNOWN.
This way, URI schemes supported by arbitrary storage plugins are
allowed.

Closes #1270
This reverts commit 6ed4aff.  The
Meson wrap is broken on non-x86, because it unconditionally includes
<cpuid.h> which is an x86 only header.
Eliminates lots of implicit std::string temporaries.
Skip the LookupRemoteTag() call if the MoveId() call fails.
…e song

Validate early, so we avoid the rollback if an error occurs.
A similar feature was present long ago in MPD, but was deprecated in
version 0.16 because the implementation was broken.  This commit
re-adds the feature in a way that's well-defined and not broken.

Close #1221
Now, "+0" means "right after the current song" and "-0" means "right
before the current song".  Mnemonic: there are zero songs between the
current song and the newly added song.
The existing implementation has been utterly broken forever; I cannot
explain what it actually does, but it doesn't do what the
documentation says.
…tself

This was a no-op previously, but this operation makes no sense.
MaxKellermann and others added 29 commits October 26, 2021 12:55
Unlike GetFilenameSuffix(), uri_get_suffix() removes the query string
first, which breaks file names with question marks in the name.
Therefore, uri_get_suffix() shall only be applied to remote URIs.

Closes #1316
This uncomments the code which had been present already in the first
Snapcast commit (copied from the "httpd" output plugin), but I
commented it because I did not know whether I needed to send silence
samples to all Snapcast clients.

As a side effect, this fixes playback when no Snapcast client is
connected; this was broken because Pause() always returned a positive
value when there were no clients.

Closes #1310
With the "wave" encoder, this has no effect, but it's more correct.
…rt()

Fixes assertion failure when the EventLoop gets destructed before
Run() was ever called.

Fixes https://bugs.debian.org/998310
Signed-off-by: Shen-Ta Hsieh <ibmibmibm.tw@gmail.com>
Signed-off-by: Shen-Ta Hsieh <ibmibmibm.tw@gmail.com>
This way, MPD can reliably detect whether it was started as systemd
service, which is better than checking sd_booted(), which only checks
whether systemd manages all services, but still MPD could be started
manually.
Commit 552c30e caused problems for those people who still had a
"pid_file" setting (even though that is obsolete with systemd),
because now /run/mpd is owned by root:root (our mpd.service has no
User=mpd directive, so systemd starts MPD as root).

To work around this problem, and to be able to keep
RuntimeDirectory=mpd (which solved a problem of other MPD users), the
best compromise seems to just ignore the "pid_file" setting when it is
of no use.
@ideonaudio ideonaudio merged commit cf92db6 into ideonaudio:master Nov 5, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants