diff options
author | Marius Kintel <marius@kintel.net> | 2012-09-02 17:17:14 (GMT) |
---|---|---|
committer | Marius Kintel <marius@kintel.net> | 2012-09-02 17:17:14 (GMT) |
commit | 502ecbb6caa900520409bf85ad3ed1754248492d (patch) | |
tree | e58bf1ad80a20567cc8433fe4ad956e3d40559a0 /src/module.h | |
parent | aab3c36f90977c6a20253b1742b741eb22b8fd1c (diff) |
Block recursion on circular or recursive inclusions. Fixes #187
Diffstat (limited to 'src/module.h')
-rw-r--r-- | src/module.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/module.h b/src/module.h index cd25287..879d249 100644 --- a/src/module.h +++ b/src/module.h @@ -59,7 +59,7 @@ public: class Module : public AbstractModule { public: - Module() { } + Module() : is_handling_dependencies(false) { } virtual ~Module(); virtual AbstractNode *evaluate(const Context *ctx, const ModuleInstantiation *inst) const; virtual std::string dump(const std::string &indent, const std::string &name) const; @@ -71,6 +71,7 @@ public: void registerInclude(const std::string &filename); typedef boost::unordered_map<std::string, time_t> IncludeContainer; IncludeContainer includes; + bool is_handling_dependencies; bool handleDependencies(); std::vector<std::string> assignments_var; |