diff options
author | Tim Mayberry <mojofunk@gmail.com> | 2015-08-18 14:44:53 +1000 |
---|---|---|
committer | Tim Mayberry <mojofunk@gmail.com> | 2015-08-18 15:33:03 +1000 |
commit | a2fbce0e7f31bdebf59bcea5282b4909c9e19837 (patch) | |
tree | 2b48333a8a7ce5f46c66b17a93c636900da1216d /libs/ardour/search_paths.cc | |
parent | 36e4c11a2ac8e1a2310d948b6f039d28be4cf521 (diff) |
Change return type and name of get_win_special_folder
Rename it get_win_special_folder_path to indicate what it is returning
Move documentation for the function into the header and use doxygen style
comments.
Fixes a couple of memory leaks in ArdourVideoToolPaths class although it looks
as if there are more.
Diffstat (limited to 'libs/ardour/search_paths.cc')
-rw-r--r-- | libs/ardour/search_paths.cc | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/libs/ardour/search_paths.cc b/libs/ardour/search_paths.cc index 6b54ff566c..d9e3bf7bc9 100644 --- a/libs/ardour/search_paths.cc +++ b/libs/ardour/search_paths.cc @@ -196,11 +196,11 @@ vst_search_path () if (p == 0) { char *pVSTx86 = 0; - char *pProgFilesX86 = PBD::get_win_special_folder (CSIDL_PROGRAM_FILESX86); + std::string pProgFilesX86 = PBD::get_win_special_folder_path (CSIDL_PROGRAM_FILESX86); - if (pProgFilesX86) { + if (!pProgFilesX86.empty()) { // Look for a VST folder under C:\Program Files (x86) - if ((pVSTx86 = g_build_filename (pProgFilesX86, "Steinberg", "VSTPlugins", NULL))) + if ((pVSTx86 = g_build_filename (pProgFilesX86.c_str(), "Steinberg", "VSTPlugins", NULL))) { if (Glib::file_test (pVSTx86, Glib::FILE_TEST_EXISTS)) if (Glib::file_test (pVSTx86, Glib::FILE_TEST_IS_DIR)) @@ -208,25 +208,21 @@ vst_search_path () g_free (pVSTx86); } - - g_free (pProgFilesX86); } if (p == 0) { // Look for a VST folder under C:\Program Files char *pVST = 0; - char *pProgFiles = PBD::get_win_special_folder (CSIDL_PROGRAM_FILES); + std::string pProgFiles = PBD::get_win_special_folder_path (CSIDL_PROGRAM_FILES); - if (pProgFiles) { - if ((pVST = g_build_filename (pProgFiles, "Steinberg", "VSTPlugins", NULL))) { + if (!pProgFiles.empty()) { + if ((pVST = g_build_filename (pProgFiles.c_str(), "Steinberg", "VSTPlugins", NULL))) { if (Glib::file_test (pVST, Glib::FILE_TEST_EXISTS)) if (Glib::file_test (pVST, Glib::FILE_TEST_IS_DIR)) p = g_build_filename (pVST, NULL); g_free (pVST); } - - g_free (pProgFiles); } } } |