浏览代码

Fixed installing plug-ins via symbolic names.

Sascha Zelzer 10 年之前
父节点
当前提交
e444b57a0c
共有 1 个文件被更改,包括 14 次插入0 次删除
  1. 14 0
      Libs/PluginFramework/ctkPluginFrameworkLauncher.cpp

+ 14 - 0
Libs/PluginFramework/ctkPluginFrameworkLauncher.cpp

@@ -293,6 +293,20 @@ public:
     foreach(const QString& installEntry, installEntries)
     foreach(const QString& installEntry, installEntries)
     {
     {
       QUrl pluginUrl(installEntry);
       QUrl pluginUrl(installEntry);
+      if (pluginUrl.isValid() && pluginUrl.scheme().isEmpty())
+      {
+        // try a local file path
+        QFileInfo installFileInfo(installEntry);
+        if (installFileInfo.exists())
+        {
+          pluginUrl = QUrl::fromLocalFile(installFileInfo.absoluteFilePath());
+        }
+        else
+        {
+          pluginUrl.clear();
+        }
+      }
+
       if (pluginUrl.isValid())
       if (pluginUrl.isValid())
       {
       {
         QSharedPointer<ctkPlugin> plugin = install(pluginUrl, context);
         QSharedPointer<ctkPlugin> plugin = install(pluginUrl, context);