summaryrefslogtreecommitdiff
path: root/libs/ardour/search_paths.cc
diff options
context:
space:
mode:
authorTim Mayberry <mojofunk@gmail.com>2015-08-18 14:44:53 +1000
committerTim Mayberry <mojofunk@gmail.com>2015-08-18 15:33:03 +1000
commita2fbce0e7f31bdebf59bcea5282b4909c9e19837 (patch)
tree2b48333a8a7ce5f46c66b17a93c636900da1216d /libs/ardour/search_paths.cc
parent36e4c11a2ac8e1a2310d948b6f039d28be4cf521 (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.cc16
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);
}
}
}