summaryrefslogtreecommitdiff
path: root/src/surface.cc
diff options
context:
space:
mode:
authorkintel <kintel@b57f626f-c46c-0410-a088-ec61d464b74c>2010-02-23 20:47:54 (GMT)
committerkintel <kintel@b57f626f-c46c-0410-a088-ec61d464b74c>2010-02-23 20:47:54 (GMT)
commitf3d16e23b959be4eb05c50e09a880b1e642f3432 (patch)
tree9e27ce8f230fa3c8645c363a3823d82649839261 /src/surface.cc
parent64c3be3fd7734f94f1057825ad66ba4ac2393134 (diff)
Multiple non-MDI assumptions were made, setting CWD and assuming it didn't change. Fix required to pass more context to nodes (functions). It's not totally clean, but it's a start. Fixes bugs: opening multiple files simultaneously only loaded the first file, refreshing an scad file referencing an external file failed if another scad file was opened in the meantime.
git-svn-id: http://svn.clifford.at/openscad/trunk@451 b57f626f-c46c-0410-a088-ec61d464b74c
Diffstat (limited to 'src/surface.cc')
-rw-r--r--src/surface.cc2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/surface.cc b/src/surface.cc
index b2abbed..ddcd3a6 100644
--- a/src/surface.cc
+++ b/src/surface.cc
@@ -64,7 +64,7 @@ AbstractNode *SurfaceModule::evaluate(const Context *ctx, const ModuleInstantiat
Context c(ctx);
c.args(argnames, argexpr, inst->argnames, inst->argvalues);
- node->filename = c.lookup_variable("file").text;
+ node->filename = c.get_absolute_path(c.lookup_variable("file").text);
Value center = c.lookup_variable("center", true);
if (center.type == Value::BOOL) {
contact: Jan Huwald // Impressum