diff options
author | Robin Gareus <robin@gareus.org> | 2014-03-09 19:34:53 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2014-03-09 20:32:52 +0100 |
commit | ba0ae4818a887f39d5feac7446b09055b93fc08f (patch) | |
tree | ee8a718c2bc616c6eacd63ea8450c1a133793466 /libs/ardour/vst_info_file.cc | |
parent | da73b0f670625e142f7784a60fa31e1eeb0666b3 (diff) |
[VST] scan timeout display and per plugin timeout override.
Diffstat (limited to 'libs/ardour/vst_info_file.cc')
-rw-r--r-- | libs/ardour/vst_info_file.cc | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/libs/ardour/vst_info_file.cc b/libs/ardour/vst_info_file.cc index 1db9afbbc4..fe434909f3 100644 --- a/libs/ardour/vst_info_file.cc +++ b/libs/ardour/vst_info_file.cc @@ -916,7 +916,15 @@ vstfx_get_info (const char* dllpath, enum ARDOUR::PluginType type, enum VSTScanM return infos; } else { int timeout = PLUGIN_SCAN_TIMEOUT; - while (scanner.is_running() && --timeout) { + bool no_timeout = (timeout <= 0); + ARDOUR::PluginScanTimeout(timeout); + while (scanner.is_running() && (no_timeout || timeout > 0)) { + if (!no_timeout && !ARDOUR::PluginManager::instance().no_timeout()) { + if (timeout%5 == 0) { + ARDOUR::PluginScanTimeout(timeout); + } + --timeout; + } ARDOUR::GUIIdle(); Glib::usleep (100000); |