I have a program consisting of ~30k lines of code. It's made up of a few different .dll files in that 30k. It's all my code, but some of it's old and not all my documentation is top-notch.
After a recent change, there is a very rare crash that occurs. In the limited time I have available, I'm unable to recreate the crash. But then, I'll come back to my PC having forgotten about the crash and I'll run the program to see where I was at, take an action, and then it'll crash. As I wasn't running it through GDB, I have no idea what happened.
It's a 64bit app compiled with MingW64 on windows. Because of this, the only available JIT debugger that I know of is Dr Memory, which doesn't work for 64bit.
I'm sure the crash is memory related (aren't they always), so I was wondering, is it possible to manipulate memory to make the crash more likely?
For example, if I was writing past the end of an array or something, can I whack in some new
calls somewhere to make it more likely that the write will cause a crash?
It's very rare that this crashes; I've only seen it happen twice, both times when I wasn't debugging.