Marcus Crestani <crestani(a)informatik.uni-tuebingen.de> writes:
 HN>> + memset (&mc_allocator_globals, '\0', sizeof
 HN>> (mc_allocator_globals_type));
 HN> This shouldn't be necessary unless init_mc_allocator is called
 HN> twice (which it shouldn't be, judging by the comments and the
 HN> code).  A global variable is 0-initialized by default and calling
 HN> memset doesn't accomplish anything.
 An uninitialized lookup table is the only thing I can currently
 think of that may cause the reported failure.  Although, I was quite
 surprised that this bug didn't hit earlier and more often.  I'll
 keep on investigating.  Do you want me to revert this change? 
It doesn't hurt to have it in, so let's wait for feedback.  If the
change doesn't help (which I think it won't because of the reasons
stated above), then revert it.
Maybe it would help for Alexey to look at other local variables?