summaryrefslogtreecommitdiff
path: root/orkaudio/OrkAudio.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'orkaudio/OrkAudio.cpp')
-rw-r--r--orkaudio/OrkAudio.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/orkaudio/OrkAudio.cpp b/orkaudio/OrkAudio.cpp
index 83bd2ec..5e7cad3 100644
--- a/orkaudio/OrkAudio.cpp
+++ b/orkaudio/OrkAudio.cpp
@@ -58,8 +58,10 @@ void LoadPlugins(std::list<ACE_DLL>& pluginDlls)
{
#ifdef WIN32
CStdString pluginDirectory = "./plugins/";
+ CStdString pluginExtension = ".dll";
#else
CStdString pluginDirectory = "/usr/lib/orkaudio/plugins/";
+ CStdString pluginExtension = ".so";
#endif
CStdString pluginPath;
ACE_DLL dll;
@@ -74,7 +76,10 @@ void LoadPlugins(std::list<ACE_DLL>& pluginDlls)
dirent* dirEntry = NULL;
while(dirEntry = ACE_OS::readdir(dir))
{
- if (ACE_OS::strstr(dirEntry->d_name, ".dll"))
+ CStdString dirEntryFilename = dirEntry->d_name;
+ int extensionPos = dirEntryFilename.Find(pluginExtension);
+
+ if ( extensionPos != -1 && (dirEntryFilename.size() - extensionPos) == pluginExtension.size() )
{
pluginPath = pluginDirectory + dirEntry->d_name;
dll.open((PCSTR)pluginPath);