Max Kellermann
67c7116f05
Merge branch 'v0.21.x' into master
2020-09-04 18:35:21 +02:00
Max Kellermann
2fc4802886
neighbor/smbclient: remove mutex locking
...
This is no longer necessary with the new API.
2020-07-20 22:32:59 +02:00
Max Kellermann
f6dc9bcad6
*/smbclient: use the new API with SMBCCTX parameter
...
As a side effect, the input plugin closes the SMB/CIFS connection
after closing the file.
This solves one part of
https://github.com/MusicPlayerDaemon/MPD/issues/916
2020-07-20 22:05:05 +02:00
Max Kellermann
3c745b4bc6
neighbor/smbclient: remove obsolete commented code
2020-07-20 18:13:38 +02:00
Max Kellermann
c3cfb5fe16
Merge branch 'v0.21.x'
2020-07-06 20:56:52 +02:00
Max Kellermann
39d6816a6d
neighbor/upnp: roll back changes if DoOpen() fails
2020-07-06 16:23:58 +02:00
Max Kellermann
6517b2d2ac
neighbor/upnp: remove D-Bus filter and match in Close()
...
Fixes use-after-free crash bug during MPD shutdown.
2020-07-06 16:15:18 +02:00
Max Kellermann
8cd5e79fbd
event/*, ...: make GetEventLoop() const
2020-03-26 17:19:13 +01:00
Rosen Penev
97425d56e7
remove gcc_unused
...
[[maybe_unused]] (introduced in C++17) is standard C++.
https://clang.llvm.org/docs/AttributeReference.html#maybe-unused-unused
says that this is equivalent to the GNU unused attribute.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-03-16 00:08:21 -07:00
Rosen Penev
f00f8b002a
[clang-tidy] use nodiscard
...
Introduced in C++17. It replaces gcc's warn_unused_result.
Found with modernize-use-nodiscard.
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-03-12 12:59:16 -07:00
Max Kellermann
7646866a32
neighbor/smbclient: make iterators non-const to enable the std::move()
2020-02-20 16:47:32 +01:00
Rosen Penev
a4eed3e330
[clang-tidy] use forward instead of move
...
Found with bugprone-move-forwarding-reference
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-02-04 18:31:00 -08:00
Rosen Penev
15fa780c99
[clang-tidy] convert several loops to range based ones
...
Found with modernize-loop-convert
Signed-off-by: Rosen Penev <rosenp@gmail.com>
2020-02-01 19:46:50 -08:00
Max Kellermann
bc6eca2115
*: add explicit
2020-02-01 14:02:43 +01:00
Max Kellermann
4c52001a35
*: use defaulted destructors
2020-02-01 13:47:16 +01:00
Max Kellermann
2817bf9e95
copyright year 2020
2020-01-18 19:23:49 +01:00
Max Kellermann
496f43e25d
Merge branch 'v0.21.x'
2019-11-04 15:07:46 +01:00
Max Kellermann
ebb952c4ad
neighbor/meson.build: disable if -Ddatabase=false
...
Fixes yet another build failure (which however only affects the 0.22
branch).
Closes https://github.com/MusicPlayerDaemon/MPD/issues/666
2019-11-04 14:18:48 +01:00
Max Kellermann
d663f81420
include cleanups (powered by iwyu)
2019-07-05 09:59:58 +02:00
Max Kellermann
a139279575
Copyright year 2019
2019-06-17 11:17:30 +02:00
Max Kellermann
92022658f9
thread/Cond: add wait() overload which takes a unique_lock<>
...
Just like std::condition_variable, which however has no way to specify
the std::mutex directly.
2019-04-26 11:51:45 +02:00
Max Kellermann
b51bae5500
thread/*Cond: rename methods to match std::condition_variable
2019-04-25 19:46:43 +02:00
Max Kellermann
d38a079ba1
neighbor/smbclient: use std::lock_guard
2019-04-25 19:44:59 +02:00
Max Kellermann
c75a0f7c75
neighbor/smbclient: call Run() with locked mutex
2019-04-25 19:43:45 +02:00
Max Kellermann
7d814cc899
neighbor/smbclient: fix double smbc_closedir() call
...
There is already one call in ReadServers(), which is the correct place
to do it.
2019-04-18 09:40:56 +02:00
Max Kellermann
d28307e082
neighbor/smbclient: fix double smbc_closedir() call
...
There is already one call in ReadServers(), which is the correct place
to do it.
2019-04-16 20:07:48 +02:00
Max Kellermann
aa5c5bf14f
neighbor/smbclient: add noexcept
2019-04-16 20:05:14 +02:00
Max Kellermann
2e80477218
neighbor/smbclient: make Server attributes "const"
2019-04-16 20:05:11 +02:00
Max Kellermann
8b9df85daa
neighbor/smbclient: remove unused attribute "alive"
2019-04-16 20:04:53 +02:00
Max Kellermann
093bf5d859
event/*, ...: make GetEventLoop() const
2019-04-04 20:07:57 +02:00
Max Kellermann
ce49d99c2f
check.h: remove obsolete header
...
Since we switched from autotools to Meson in commit
94592c1406
, we don't need to include
`config.h` early to properly enable large file support. Meson passes
the required macros on the compiler command line instead of defining
them in `config.h`.
This means we can include `config.h` at any time, whenever we want to
check its macros, and there are no ordering constraints.
2018-11-19 16:33:49 +01:00
Max Kellermann
f5c9071494
*: copyright year 2018
2018-10-31 17:54:59 +01:00
Max Kellermann
94592c1406
build with Meson instead of autotools
...
So long, autotools! This is my last MPD related project to migrate
away from it. It has its strengths, but also very obvious weaknesses
and weirdnesses. Today, many of its quirks are not needed anymore,
and are cumbersome and slow. Now welcome our new Meson overlords!
2018-10-14 23:41:38 +02:00
Max Kellermann
931b571e3d
neighbor/udisks: add this->
to work around GCC 6 bug
...
Since `this` was captured, it does not need to be specified, but GCC 6
can't do it. Since we want to support the standard compiler from
Debian Stretch (stable), we need to work around this problem:
src/neighbor/plugins/UdisksNeighborPlugin.cxx:239:12: error: cannot call member function 'void UdisksNeighborExplorer::Insert(UDisks2::Object&&)' without object
Insert(std::move(o));
~~~~~~^~~~~~~~~~~~~~
This fixes #300 which I previously thought was a different bug.
2018-09-02 08:12:51 +02:00
Max Kellermann
ec54754e22
Compiler.h: move to util/
2018-08-20 16:19:17 +02:00
Max Kellermann
9ff2606bb8
config/Data: use std::forward_list to manage params and blocks
2018-07-18 11:03:19 +02:00
Max Kellermann
4f678aa244
neighbor/Glue: use struct ConfigData
2018-07-17 23:11:33 +02:00
Max Kellermann
5b192beaa5
config/Global: remove ConfigBlock::SetUsed() call, let caller do that
...
This fixes an old bug which caused the "unused" warnings to be
unreliable; only the first block in the list was marked as being
"used", no matter if it was really used, and the rest was never marked
as "used", suppressing all warnings for them.
2018-07-17 21:08:41 +02:00
Max Kellermann
816603fd9a
config/Config*: rename files, drop "Config" prefix
2018-07-16 19:50:07 +02:00
Max Kellermann
7eee79c145
neighbor/udisks: move code to class UDisks2::ParseObjects(ODBus::Message)
2018-06-04 21:50:34 +02:00
Max Kellermann
9626523420
neighbor/udisks: move code to class UDisks2::ParseObjects(ReadMessageIter)
2018-06-04 21:41:51 +02:00
Max Kellermann
03c89c9cec
neighbor/udisks: move ParseObject() to UDisks2.cxx
2018-06-04 17:23:55 +02:00
Max Kellermann
640de5518b
neighbor/udisks: move struct UdisksObject to UDisks2.hxx
2018-06-04 17:23:55 +02:00
Max Kellermann
a159299a4b
lib/dbus/AsyncRequest: new helper class
2018-06-04 12:21:17 +02:00
Max Kellermann
aea6d354b7
lib/dbus/ObjectManager: use TypeTraits instead of CPP macro
2018-06-03 20:30:08 +02:00
Max Kellermann
8d49c2d028
neighbor/udisks: show only filesystems, hide raw drives
2018-06-03 20:20:37 +02:00
Max Kellermann
e560f6bc63
lib/dbus/ReadIter: add ForEachProperty()
2018-06-03 20:18:46 +02:00
Max Kellermann
6c81fa1ec5
neighbor/udisks: move code to ForEachInterface()
2018-06-03 14:47:12 +02:00
Max Kellermann
32064a23c1
neighbor/udisks2: move Open()/Close() calls into the I/O thread
...
Fixes assertion failure.
2018-06-03 10:08:11 +02:00
Max Kellermann
c60b50b1ae
neighbor/udisks2: use SafeSingleton for managing the ODBus::Glue instance
...
Allows other objects to use the same single instance as well.
2018-06-03 09:58:34 +02:00