Fix an issue with mkfiledir.

This commit is contained in:
Daniel Jones 2014-08-05 18:28:00 -07:00
parent 49fdbebf48
commit 53634f87d8

View file

@ -64,6 +64,7 @@ func parse(input string, name string, path string) *ruleSet {
func parseInto(input string, name string, rules *ruleSet, path string) {
l, tokens := lex(input)
p := &parser{l, name, path, []token{}, rules}
oldmkfiledir := p.rules.vars["mkfiledir"]
p.rules.vars["mkfiledir"] = []string{filepath.Dir(path)}
state := parseTopLevel
for t := range tokens {
@ -79,6 +80,8 @@ func parseInto(input string, name string, rules *ruleSet, path string) {
// rules to finish.
state = state(p, token{tokenNewline, "\n", l.line, l.col})
p.rules.vars["mkfiledir"] = oldmkfiledir
// TODO: Error when state != parseTopLevel
}