diff --git a/src/bindings/php/hammer.i b/src/bindings/php/hammer.i index 44d4fd8..895a1ac 100644 --- a/src/bindings/php/hammer.i +++ b/src/bindings/php/hammer.i @@ -206,11 +206,13 @@ } HParser* hammer_action(HParser *parser, const char *name) { - return h_action(parser, call_action, (void*)name); + const char *fname = strdup(name); + return h_action(parser, call_action, (void*)fname); } HParser* hammer_predicate(HParser *parser, const char *name) { - return h_attr_bool(parser, call_predicate, (void*)name); + const char *fname = strdup(name); + return h_attr_bool(parser, call_predicate, (void*)fname); } }