diff options
author | Robin Gareus <robin@gareus.org> | 2014-06-23 12:16:35 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2014-06-23 12:16:35 +0200 |
commit | 07fafac36e4599738009d49ce1ccac8cfa2a7450 (patch) | |
tree | b612840b1ad4129ce466104b7656d23b72e1c21d /libs/backends/dummy | |
parent | fb51bdb892fcb7ffe74a01becda566fd6bc9a431 (diff) |
don't let enumerated device list strings go out of scope.
Diffstat (limited to 'libs/backends/dummy')
-rw-r--r-- | libs/backends/dummy/dummy_audiobackend.cc | 8 | ||||
-rw-r--r-- | libs/backends/dummy/dummy_audiobackend.h | 1 |
2 files changed, 6 insertions, 3 deletions
diff --git a/libs/backends/dummy/dummy_audiobackend.cc b/libs/backends/dummy/dummy_audiobackend.cc index dc53010443..3a969aa479 100644 --- a/libs/backends/dummy/dummy_audiobackend.cc +++ b/libs/backends/dummy/dummy_audiobackend.cc @@ -33,6 +33,7 @@ using namespace ARDOUR; static std::string s_instance_name; size_t DummyAudioBackend::_max_buffer_size = 8192; std::vector<std::string> DummyAudioBackend::_midi_options; +std::vector<AudioBackend::DeviceStatus> DummyAudioBackend::_device_status; DummyAudioBackend::DummyAudioBackend (AudioEngine& e, AudioBackendInfo& info) : AudioBackend (e, info) @@ -76,9 +77,10 @@ DummyAudioBackend::is_realtime () const std::vector<AudioBackend::DeviceStatus> DummyAudioBackend::enumerate_devices () const { - std::vector<AudioBackend::DeviceStatus> s; - s.push_back (DeviceStatus (_("Dummy"), true)); - return s; + if (_device_status.empty()) { + _device_status.push_back (DeviceStatus (_("Dummy"), true)); + } + return _device_status; } std::vector<float> diff --git a/libs/backends/dummy/dummy_audiobackend.h b/libs/backends/dummy/dummy_audiobackend.h index 638bb9f312..70aec34ecd 100644 --- a/libs/backends/dummy/dummy_audiobackend.h +++ b/libs/backends/dummy/dummy_audiobackend.h @@ -293,6 +293,7 @@ class DummyAudioBackend : public AudioBackend { private: std::string _instance_name; static std::vector<std::string> _midi_options; + static std::vector<AudioBackend::DeviceStatus> _device_status; bool _running; bool _freewheeling; |