Browse Source

Ugly workaround for gig/sfz files inside carla-plugin, see #250

tags/1.9.7
falkTX 9 years ago
parent
commit
509fe9bf81
1 changed files with 8 additions and 2 deletions
  1. +8
    -2
      source/backend/engine/CarlaEngine.cpp

+ 8
- 2
source/backend/engine/CarlaEngine.cpp View File

@@ -490,6 +490,12 @@ bool CarlaEngine::addPlugin(const BinaryType btype, const PluginType ptype,
else if (uniqueId == 1397578034 && std::strstr(filename, "/Zebra2.") != nullptr) else if (uniqueId == 1397578034 && std::strstr(filename, "/Zebra2.") != nullptr)
preferBridges = true; preferBridges = true;
} }
// FIXME: linuxsampler inside carla-rack/patchbay plugin has some issues (only last kit makes noise)
else if (getType() == kEngineTypePlugin)
{
if (ptype == PLUGIN_GIG || ptype == PLUGIN_SFZ)
preferBridges = true;
}
} }
# endif # endif


@@ -1674,7 +1680,7 @@ void CarlaEngine::saveProjectInternal(juce::MemoryOutputStream& outStream) const
outStream << "<!DOCTYPE CARLA-PROJECT>\n"; outStream << "<!DOCTYPE CARLA-PROJECT>\n";
outStream << "<CARLA-PROJECT VERSION='2.0'>\n"; outStream << "<CARLA-PROJECT VERSION='2.0'>\n";


const bool isPlugin(std::strcmp(getCurrentDriverName(), "Plugin") == 0);
const bool isPlugin(getType() == kEngineTypePlugin);
const EngineOptions& options(pData->options); const EngineOptions& options(pData->options);


MemoryOutputStream outSettings(1024); MemoryOutputStream outSettings(1024);
@@ -1837,7 +1843,7 @@ bool CarlaEngine::loadProjectInternal(juce::XmlDocument& xmlDoc)
xmlElement = xmlDoc.getDocumentElement(false); xmlElement = xmlDoc.getDocumentElement(false);
CARLA_SAFE_ASSERT_RETURN_ERR(xmlElement != nullptr, "Failed to completely parse project file"); CARLA_SAFE_ASSERT_RETURN_ERR(xmlElement != nullptr, "Failed to completely parse project file");


const bool isPlugin(std::strcmp(getCurrentDriverName(), "Plugin") == 0);
const bool isPlugin(getType() == kEngineTypePlugin);


// engine settings // engine settings
for (XmlElement* elem = xmlElement->getFirstChildElement(); elem != nullptr; elem = elem->getNextElement()) for (XmlElement* elem = xmlElement->getFirstChildElement(); elem != nullptr; elem = elem->getNextElement())


Loading…
Cancel
Save