Branch: Tag:

2013-07-02

2013-07-02 19:00:46 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Compiler: Fixed NULL-deref by docode().

Call fix_type_field() before calling docode() in eval_low() to
ensure that the parsetree node types have been properly set.

This fixes a NULL-deref in docode() when compiling the line:

string system_module_path=master()->system_module_path[-1];

(The F_ARROW node in the rvalue had a NULL type).
docode() requires that the parsetree node types h

This fixes a NULL-deref in docode() when compiling the line
(from lib/modules/Tools.pmod/Standalone.pmod/module.pmod:28):

string system_module_path=master()->system_module_path[-1];

(The F_ARROW node in the rvalue had a NULL type).

5236:    }   #endif    +  fix_type_field(n); +     if(Pike_compiler->num_parse_error) {    return -1;    }