skeezix
Internal Development
If you prefer Allegro, use it? Or do you think it is the source of the crashes?
Add a lot more debugging in, even if just plain old fprintf(stderr,...) logs. (Another good trick is to keep an array of char streings (like char logbuf[][] sort, to save you malloc'ing each line); then your logprintf() type routine can just strdup or strncpy into the buffer, incrementing the log line each time; then make sure you insert like: logbuf [ line % MAXSIZE ] so its looping around inside the buffer; log crazy verhbosely there; then when a crash occurs, if you get a coredump, you can just open it up in gdb and look at the logbuf and the line counter, and you'll know the last few lines of log, without having filled up the 'disk' with log files...
Anyway, g'luck, always a drag when it crashes for everyone _else_
(maybe a crash that only occurs in optimized mode, not debug mode? If so, if the crash goes awya with -g, then almost always means a buffer overrun, even if only by 1 byte for trailing \0's...)
jeff
Add a lot more debugging in, even if just plain old fprintf(stderr,...) logs. (Another good trick is to keep an array of char streings (like char logbuf[][] sort, to save you malloc'ing each line); then your logprintf() type routine can just strdup or strncpy into the buffer, incrementing the log line each time; then make sure you insert like: logbuf [ line % MAXSIZE ] so its looping around inside the buffer; log crazy verhbosely there; then when a crash occurs, if you get a coredump, you can just open it up in gdb and look at the logbuf and the line counter, and you'll know the last few lines of log, without having filled up the 'disk' with log files...
Anyway, g'luck, always a drag when it crashes for everyone _else_
(maybe a crash that only occurs in optimized mode, not debug mode? If so, if the crash goes awya with -g, then almost always means a buffer overrun, even if only by 1 byte for trailing \0's...)
jeff