ignore the top half of the stack.
this one occurred inside of the gutter code.
0xdddddddd means "memory already freed".
nowadays, these are the only more-or-less random crashes i'm hitting.
stephen, any chance you could recruit andy or someone else to write that
sledgehammer debugging code?
NTDLL! DbgBreakPoint@0 address 0x77fa018c
_CrtDbgBreak() line 126
_CrtDbgReport(int 2, const char * 0x102571f4 `string', int 1044, const
char * 0x00000000, const char * 0x10257314 `string') line 353
_free_dbg_lk(void * 0xdddddddd, int 1) line 1044 + 40 bytes
_free_dbg(void * 0xdddddddd, int 1) line 1001 + 13 bytes
free(void * 0xdddddddd) line 956 + 11 bytes
xfree_1(void * 0xdddddddd) line 294 + 10 bytes
Dynarr_free(void * 0x0259ce90) line 221 + 17 bytes
free_display_line(display_line * 0x028580e0) line 6982 + 12 bytes
free_display_lines(display_line_dynarr * 0x02757900) line 7010 + 19 bytes
free_display_structs(window_mirror * 0x02757898) line 7029 + 12 bytes
free_window_mirror(window_mirror * 0x02757898) line 506 + 9 bytes
update_mirror_internal(long 21569800, window_mirror * 0x02867000) line
383 + 9 bytes
update_mirror_internal(long 24684568, window_mirror * 0x017fb358) line
394 + 41 bytes
update_frame_window_mirror(frame * 0x017b4ce8) line 490 + 88 bytes
window_display_buffer(window * 0x0178a818) line 608 + 31 bytes
output_display_line(window * 0x0178a818, display_line_dynarr *
0x02310880, display_line_dynarr * 0x023108c8, int 0, int -1, int -1)
line 579 + 9 bytes
output_gutter(frame * 0x017b4ce8, int 0, int 1) line 444 + 25 bytes
redraw_exposed_gutter(frame * 0x017b4ce8, int 0, int 645, int 24, int
16, int 692) line 685 + 15 bytes
redraw_exposed_gutters(frame * 0x017b4ce8, int 645, int 24, int 16, int
692) line 700 + 29 bytes
mswindows_redraw_exposed_area(frame * 0x017b4ce8, int 645, int 24, int
16, int 692) line 863 + 25 bytes
mswindows_handle_paint(frame * 0x017b4ce8) line 1855 + 25 bytes
mswindows_wnd_proc(HWND__ * 0x00330344, unsigned int 15, unsigned int 0,
long 0) line 2923 + 37 bytes
intercepted_wnd_proc(HWND__ * 0x00330344, unsigned int 15, unsigned int
0, long 0) line 2451
USER32! 77e11b60()
USER32! 77e12f29()
USER32! 77e12f4f()
NTDLL! KiUserCallbackDispatcher@12 + 19 bytes
USER32! 77e12ef6()
USER32! 77e11ddf()
USER32! 77e24675()
USER32! 77e37262()
USER32! 77e36c9b()
USER32! 77e37883()
USER32! 77e37803()
USER32! 77e37790()
__crtMessageBoxA(const char * 0x0082b870, const char * 0x102579a0
`string', unsigned int 73746) line 65
CrtMessageWindow(int 2, const char * 0x102571f4 `string', const char *
0x0082c9a4, const char * 0x00000000, const char * 0x0082e9c8) line 520 +
22 bytes
_CrtDbgReport(int 2, const char * 0x102571f4 `string', int 1044, const
char * 0x00000000, const char * 0x10257314 `string') line 419 + 76 bytes
_free_dbg_lk(void * 0xdddddddd, int 1) line 1044 + 40 bytes
_free_dbg(void * 0xdddddddd, int 1) line 1001 + 13 bytes
free(void * 0xdddddddd) line 956 + 11 bytes
xfree_1(void * 0xdddddddd) line 294 + 10 bytes
Dynarr_free(void * 0x0259ce90) line 221 + 17 bytes
free_display_line(display_line * 0x028580e0) line 6982 + 12 bytes
free_display_lines(display_line_dynarr * 0x02757900) line 7010 + 19 bytes
free_display_structs(window_mirror * 0x02757898) line 7029 + 12 bytes
free_window_mirror(window_mirror * 0x02757898) line 506 + 9 bytes
update_mirror_internal(long 21569800, window_mirror * 0x02867000) line
383 + 9 bytes
update_mirror_internal(long 24684568, window_mirror * 0x017fb358) line
394 + 41 bytes
update_frame_window_mirror(frame * 0x017b4ce8) line 490 + 88 bytes
window_display_buffer(window * 0x0178a818) line 608 + 31 bytes
output_display_line(window * 0x0178a818, display_line_dynarr *
0x02310880, display_line_dynarr * 0x023108c8, int 0, int -1, int -1)
line 579 + 9 bytes
output_gutter(frame * 0x017b4ce8, int 0, int 0) line 444 + 25 bytes
update_frame_gutters(frame * 0x017b4ce8) line 637 + 15 bytes
redisplay_frame(frame * 0x017b4ce8, int 1) line 6401 + 9 bytes
redisplay_device(device * 0x021274f8, int 1) line 6486 + 11 bytes
redisplay_without_hooks() line 6573 + 11 bytes
redisplay() line 6636
Fnext_event(long 39314212, long 21569800) line 2238
Fcommand_loop_1() line 575 + 15 bytes
command_loop_1(long 21569800) line 497
condition_case_1(long 21565624, long (long)* 0x01077b69
command_loop_1(long), long 21569800, long (long, long)* 0x010774bc
cmd_error(long, long), long 21569800) line 1692 + 7 bytes
command_loop_3() line 258 + 35 bytes
command_loop_2(long 21569800) line 271
internal_catch(long 21343048, long (long)* 0x0107760c
command_loop_2(long), long 21569800, int * volatile 0x00000000) line
1317 + 7 bytes
initial_command_loop(long 21569800) line 307 + 25 bytes
STACK_TRACE_EYE_CATCHER(int 1, char * * 0x00e52610, char * * 0x00e52b00,
int 0) line 2310
main(int 1, char * * 0x00e52610, char * * 0x00e52b00) line 2686
mainCRTStartup() line 338 + 17 bytes
KERNEL32! 77e8d326()