From 052f8bc620f579271be69a0d0d699b8b4ac5bb14 Mon Sep 17 00:00:00 2001 From: Giles Bathgate Date: Sat, 11 Dec 2010 12:41:23 +0000 Subject: Fix for when the included file doesn't exist. Needed because we will never get an EOF, and so never pop the stack. diff --git a/src/lexer.l b/src/lexer.l index 9e8aaf8..932711b 100644 --- a/src/lexer.l +++ b/src/lexer.l @@ -202,6 +202,7 @@ void includefile() yyin = fopen(finfo.absoluteFilePath().toLocal8Bit(), "r"); if (!yyin) { PRINTA("WARNING: Can't open input file `%1'.", filename); + path_stack.pop(); return; } filename.clear(); diff --git a/testdata/scad/include-test.scad b/testdata/scad/include-test.scad index a9528f5..5db02d7 100644 --- a/testdata/scad/include-test.scad +++ b/testdata/scad/include-test.scad @@ -1,6 +1,9 @@ //Test that the entire path is pushed onto the stack upto the last '/' include +//Test that a non existent path/file doesn't screw things up +include + //Test with empty path include -- cgit v0.10.1