On 2014-03-21 9:36 AM, Etienne wrote:
With ptop= 03D8F030, pbot= 03E4F030

They both point invalid memory. It looks like a really wide range too,
the usual would be 037CCB80 -> 037CCBA0 or such. I don't know how to
find out where they come from... Maybe I could do an assert on that
specific value in druntime

Looks like the range of the string[] keys array, it gets pretty big after adding 10000s of strings.

+GC.addRange(p = 03EA0AB0, sz = 0x38), p + sz = 03EA0AE8
set: 209499732595 => ¨98303126
+GC.addRange(p = 03EA0B40, sz = 0x38), p + sz = 03EA0B78
set: 6491851329 => ¨50107378
+GC.addRange(p = 03EA0BD0, sz = 0x38), p + sz = 03EA0C08
set: 262797465895 => ¨14438090
+GC.addRange(p = 03EA0C60, sz = 0x38), p + sz = 03EA0C98
set: 95992076217 => ¨65000864
+GC.addRange(p = 03EA0CF0, sz = 0x38), p + sz = 03EA0D28
+GC.addRange(p = 03EA0D50, sz = 0x30000), p + sz = 03ED0D50

It crashes when sz approaches 0x180000, it looks like (my best guess) the resized array doesn't get allocated but the GC still tries to scan it.

Reply via email to