diff options
Diffstat (limited to 'src/extension/extension.cpp')
| -rw-r--r-- | src/extension/extension.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/extension/extension.cpp b/src/extension/extension.cpp index e0f4ed3fe..fedd0facc 100644 --- a/src/extension/extension.cpp +++ b/src/extension/extension.cpp @@ -125,14 +125,16 @@ Extension::Extension(Inkscape::XML::Node *in_repr, Implementation::Implementatio } else if (!strcmp(chname, "script")) { // TODO: should these be parsed in their respective Implementation? for (Inkscape::XML::Node *child = child_repr->firstChild(); child != nullptr; child = child->next()) { if (child->type() == Inkscape::XML::ELEMENT_NODE) { // skip non-element nodes (see LP #1372200) - _deps.push_back(new Dependency(child, this)); + const char *interpreted = child->attribute("interpreter"); + Dependency::type_t type = interpreted ? Dependency::TYPE_FILE : Dependency::TYPE_EXECUTABLE; + _deps.push_back(new Dependency(child, this, type)); break; } } } else if (!strcmp(chname, "xslt")) { // TODO: should these be parsed in their respective Implementation? for (Inkscape::XML::Node *child = child_repr->firstChild(); child != nullptr; child = child->next()) { if (child->type() == Inkscape::XML::ELEMENT_NODE) { // skip non-element nodes (see LP #1372200) - _deps.push_back(new Dependency(child, this)); + _deps.push_back(new Dependency(child, this, Dependency::TYPE_FILE)); break; } } |
