Fix invalid error message when selecting directories/folders in Import dialog
authorTim Mayberry <mojofunk@gmail.com>
Fri, 4 Sep 2015 01:24:56 +0000 (11:24 +1000)
committerTim Mayberry <mojofunk@gmail.com>
Fri, 4 Sep 2015 01:50:08 +0000 (11:50 +1000)
On linux SndFileSource::get_soundfile_info was being called with an empty path
value when clicking on a folder in the left side part of the file browser which
resulted in an unnecessary error message.

On Windows every time a directory was selected in the Import dialog,
SndFileSource::get_soundfile_info would fail to open the directory in read only
mode and produce an error, but as we don't want to query/open soundfile info
for directories anyway just test and return if the path is a directory.

libs/ardour/sndfilesource.cc

index 7dc2803a65a311157d71e72c21dd42859af93cf3..8df88a2732f5a9648dcb85e5e4fdcaa11c43a536 100644 (file)
@@ -937,6 +937,10 @@ SndFileSource::get_soundfile_info (const string& path, SoundFileInfo& info, stri
 
        sf_info.format = 0; // libsndfile says to clear this before sf_open().
 
+       if (path.empty() || Glib::file_test(path, Glib::FILE_TEST_IS_DIR)) {
+               return false;
+       }
+
 #ifdef PLATFORM_WINDOWS
        int fd = g_open (path.c_str(), O_RDONLY, 0444);
 #else