diff options
author | clifford <clifford@b57f626f-c46c-0410-a088-ec61d464b74c> | 2010-02-28 13:48:04 (GMT) |
---|---|---|
committer | clifford <clifford@b57f626f-c46c-0410-a088-ec61d464b74c> | 2010-02-28 13:48:04 (GMT) |
commit | d3329838b4d948455277caa3c24df4b7b50fabb2 (patch) | |
tree | c132e689fbf28bc5d607461c83afdeb79b0adfa2 /src/lexer.l | |
parent | b12deeff5be0ce76af25d557480f29b0ed849dd6 (diff) |
Clifford Wolf:
Implemented 'use' statement
git-svn-id: http://svn.clifford.at/openscad/trunk@459 b57f626f-c46c-0410-a088-ec61d464b74c
Diffstat (limited to 'src/lexer.l')
-rw-r--r-- | src/lexer.l | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lexer.l b/src/lexer.l index 24ec83b..c4406b6 100644 --- a/src/lexer.l +++ b/src/lexer.l @@ -89,7 +89,12 @@ use[ \t\r\n>]*"<"[^ \t\r\n>]+">" { QString filename(yytext); filename.remove(QRegExp("^use[ \t\r\n>]*<")); filename.remove(QRegExp(">$")); - parserlval.text = strdup(filename.toLocal8Bit()); + QFileInfo finfo(QDir(parser_source_path), filename); + if (!finfo.exists()) { + finfo = QFileInfo(QDir(librarydir), filename); + } + handle_dep(finfo.absoluteFilePath()); + parserlval.text = strdup(finfo.absoluteFilePath().toLocal8Bit()); return TOK_USE; } |