--- parser3/src/classes/hashfile.C 2012/03/16 09:24:07 1.53 +++ parser3/src/classes/hashfile.C 2016/09/29 18:49:42 1.58 @@ -1,7 +1,7 @@ /** @file Parser: @b hashfile parser class. - Copyright (c) 2001-2012 Art. Lebedev Studio (http://www.artlebedev.com) + Copyright (c) 2001-2015 Art. Lebedev Studio (http://www.artlebedev.com) Author: Alexandr Petrosian (http://paf.design.ru) */ @@ -12,7 +12,7 @@ #include "pa_vhashfile.h" #include "pa_vhash.h" -volatile const char * IDENT_HASHFILE_C="$Id: hashfile.C,v 1.53 2012/03/16 09:24:07 moko Exp $"; +volatile const char * IDENT_HASHFILE_C="$Id: hashfile.C,v 1.58 2016/09/29 18:49:42 moko Exp $"; // class @@ -25,7 +25,7 @@ public: // global variable -DECLARE_CLASS_VAR(hashfile, new MHashfile, 0); +DECLARE_CLASS_VAR(hashfile, new MHashfile); // defines for statics @@ -99,14 +99,14 @@ static bool one_foreach_cycle( Foreach_info& info=*static_cast(ainfo); if(info.key_var_name){ VString* vkey=new VString(*new String(key, String::L_TAINTED)); - info.var_context->put_element(*info.key_var_name, vkey, false); + info.r->put_element(*info.var_context, *info.key_var_name, vkey); } if(info.value_var_name){ VString* vvalue=new VString(value); - info.var_context->put_element(*info.value_var_name, vvalue, false); + info.r->put_element(*info.var_context, *info.value_var_name, vvalue); } - StringOrValue sv_processed=info.r->process(*info.body_code); + Value& sv_processed=info.r->process(*info.body_code); Request::Skip lskip=info.r->get_skip(); info.r->set_skip(Request::SKIP_NOTHING); const String* s_processed=sv_processed.get_string();