--- parser3/src/classes/memory.C 2012/03/16 09:24:07 1.9 +++ parser3/src/classes/memory.C 2017/12/03 23:56:05 1.13 @@ -1,7 +1,7 @@ /** @file Parser: @b memory parser class. - Copyright (c) 2001-2012 Art. Lebedev Studio (http://www.artlebedev.com) + Copyright (c) 2001-2017 Art. Lebedev Studio (http://www.artlebedev.com) Author: Alexandr Petrosian (http://paf.design.ru) */ @@ -9,7 +9,7 @@ #include "pa_vmemory.h" #include "pa_request.h" -volatile const char * IDENT_MEMORY_C="$Id: memory.C,v 1.9 2012/03/16 09:24:07 moko Exp $" IDENT_PA_VMEMORY_H; +volatile const char * IDENT_MEMORY_C="$Id: memory.C,v 1.13 2017/12/03 23:56:05 moko Exp $" IDENT_PA_VMEMORY_H; class MMemory: public Methoded { public: @@ -21,12 +21,10 @@ public: // Methoded // global variables -DECLARE_CLASS_VAR(memory, 0 /*fictive*/, new MMemory); +DECLARE_CLASS_VAR(memory, new MMemory); -#undef GC_DEBUG #ifdef GC_DEBUG -extern "C" GC_API void GC_print_backtrace(void *); -void *debug_print_backtrace=0; +extern "C" void GC_generate_random_backtrace(); #endif static void _compact(Request& r, MethodParams&) { @@ -36,14 +34,13 @@ static void _compact(Request& r, MethodP int saved=GC_dont_gc; GC_dont_gc=0; GC_gcollect(); - GC_dont_gc=saved; - } #ifdef GC_DEBUG - if(debug_print_backtrace) - GC_print_backtrace(debug_print_backtrace); -#endif + GC_generate_random_backtrace(); #endif + GC_dont_gc=saved; } +#endif +} // constructor