AmigaPorts / ACE

Amiga C Engine
Mozilla Public License 2.0
155 stars 26 forks source link

Fix logfile writing #135

Closed timfel closed 3 years ago

timfel commented 3 years ago

I noticed this hangs on Linux when the logfile is opened for writing if the calls are in the previous order.

tehKaiN commented 3 years ago

Uhhh, it's not that simple. The idea is to have some kind of logging to have output from systemCreate. Since file logging may and will crash before OS is initialized, it should use UAE console, if ACE is configured to use UAE console logging. This should be handled by log manager - if log file handle is null, it will use only console, if available. If log file handle is non-null, it should use both console and the file.

It's strange that on Linux this gives a problem. Can you give me more details on it?

timfel commented 3 years ago

It'll create the logfile and then hang forever. I tried checking with the FS-UAE console debugger, but wasn't sure what I was looking for. The only thing I tried is "fi" which says to step forward until it reaches RTS, RTD or RTE. It never did stop again, so I suspect it's actually stuck in an infinite loop

tehKaiN commented 3 years ago

Aw crap, I've got the pull request backwards! I was certain that currently the log file gets created after systemCreate(). Indeed, this pull request is valid and I completely missed the erratic behavior because I use NULL log file name, so it's skipped and only console is used for logging.

Sorry for confusion and thanks for fixing!