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
Max Kellermann
f3ffdaf21f
lib/dbus/Glue: singleton for global initialization
2018-06-03 09:28:04 +02:00
Max Kellermann
3aade67046
basic udisks2 support
...
To get udisks2 support started, this commit contains the configure.ac
option and a "neighbor" plugin which shows block devices. Later, this
will allow mounting removable media with a new storage plugin.
2018-06-02 19:44:46 +02:00
Max Kellermann
201210cfe1
neighbor/Plugin: std::unique_ptr<NeighborExplorer>
2018-01-02 17:04:23 +01:00
Max Kellermann
cd6de3b24e
neighbor/{Explorer,Listener}: add "noexcept"
2018-01-02 16:58:14 +01:00
Max Kellermann
1fd8d46064
lib/upnp/ClientInit: return UpnpClient_Handle
2018-01-02 12:22:44 +01:00
Max Kellermann
914df18bf9
Main, ...: catch any exception, not just std::runtime_error
2017-12-19 10:56:23 +01:00
Max Kellermann
732f6aaa30
neighbor/Explorer: add "noexcept"
2017-08-25 10:09:34 +02:00
Max Kellermann
dd422c7b8b
neighbor/plugins/*: remove redundant "virtual"
2017-08-25 10:07:32 +02:00