Sfoglia il codice sorgente

sink_details: std::move std::function instances

Given std::function is allowed to potentially allocate, these should be
std::move'd to prevent potential reallocation (should that ever happen).
Lioncash 8 anni fa
parent
commit
89ebef6571
1 ha cambiato i file con 2 aggiunte e 1 eliminazioni
  1. 2 1
      src/audio_core/sink_details.h

+ 2 - 1
src/audio_core/sink_details.h

@@ -6,6 +6,7 @@
 
 #include <functional>
 #include <memory>
+#include <utility>
 #include <vector>
 
 namespace AudioCore {
@@ -15,7 +16,7 @@ class Sink;
 struct SinkDetails {
     SinkDetails(const char* id_, std::function<std::unique_ptr<Sink>(std::string)> factory_,
                 std::function<std::vector<std::string>()> list_devices_)
-        : id(id_), factory(factory_), list_devices(list_devices_) {}
+        : id(id_), factory(std::move(factory_)), list_devices(std::move(list_devices_)) {}
 
     /// Name for this sink.
     const char* id;