CVSROOT:        /var/cvs/freesci
Module name:    freesci
Changes by:     jameson 2002/10/01 23:47:17 GMT

Modified files:
        .              : ChangeLog reconf 
        src            : main.c 
        src/engine     : game.c 
        src/include    : resource.h 
        src/scicore    : resource.c tools.c vocab.c vocab_debug.c 

Log message:
* Fixed file-not-found bug on Win32/UNIX
* Enhanced Resource Manager to be able to run without any resource.* files
(just on patches)
* Reduced number of resource dependancies and improved error handling

Right now, we only depend on three files: Any font.*, vocab.997 and
script.000 (of course). vocab.997 contains the selector name table; getting
rid of that would break a number of kernel functions, so getting an
alternative mode to work for that seems like too much work right now.
font.* might be fixed soon, but not right now (it's used for the "About
FreeSCI" menu item).

While patching the resource manager, I realized that this thing is far from
being thread-safe. Calling it directly from a separate thread (sound server
etc.) will quite definitely break something eventually (I'm not even sure
if it's completely thread-safe).
Ignoring this issue will cause rare hard-to-trace bugs in practice.

-- Christoph


Reply via email to