Open byron-hawkins opened 9 years ago
Something about your machine results in a pre-existing (at our late injection point) alloc already there when it's not on other machines. But basically the test is flaky. Originally all of those accesses were trying to test the crtdbg redzones, and I think 48 was the size we had to exceed. Probably such an access outside of the redzone should just be removed from the test.
This has started failing on Appveyor every once in a while:
https://ci.appveyor.com/project/DynamoRIO/drmemory/build/1.0.65/job/3033i1n94qyvkn8g
wrap_wincrt => stderr failed to match "~~Dr\.M~~ 5 unique, 5 total unaddressable
access\(es\)", found "~~Dr.M~~ 4 unique, 4 total unaddressable access(es)"
instead
This is now failing very frequently on Appveyor:
https://ci.appveyor.com/project/DynamoRIO/drmemory/build/1.0.164
The first intended error does not occur in
wincrt.cpp
for any of the Windows builds. The erroneous statement over-reads the 8-byte allocationfoo
by 40 bytes. The log shows that a second allocation occupies the region accessed by the (undetected) over-read:The app's allocation at
0x004e2208
has the normal typeMALLOC_ALLOCATOR_NEW
for an app allocation. The allocation at0x004e2228
has typeMALLOC_ALLOCATOR_UNKNOWN
occurs viamalloc_interface_t.malloc_add
on this call stack:The first error (which is missing) should be:
Logs and test results can be found on my website: http://www.hawkinssoftware.net/drmemory/i1741/