Hi all,

instead of doing
            FIXME( "FATAL: Need to relocate %s, but no relocation records present 
(%s). Try to run that file directly !\n",
                   filename,
                   (nt->FileHeader.Characteristics&IMAGE_FILE_RELOCS_STRIPPED)?
                   "stripped during link" : "unknown reason" );

we really ought to do
            FIXME_FILE(1234, filename, 
(nt->FileHeader.Characteristics&IMAGE_FILE_RELOCS_STRIPPED)?, "stripped during link" : 
"unknown reason" );

And have FIXME_FILE() look up error code 1234 in maybe wine_err.ini.
I don't think we should use the registry for this purpose; ini files
are much easier to modify, I think.

And of course WARN_FILE() and ERR_FILE().

wine_err.ini should contain something like:
[Contact]
1=Wine Devel Mailing List <[EMAIL PROTECTED]>
2=Andreas Mohr <[EMAIL PROTECTED]>
3=Marcus Meissner <[EMAIL PROTECTED]>
4=Lionel Ulmer <[EMAIL PROTECTED]>
5=Ulrich Weigand <[EMAIL PROTECTED]>
...

[1234]
Error=FATAL: Need to relocate %s, but no relocation records present (%s). Try to run 
that file directly !
Desc=This error message tells us that... Do that and that to circumvent it... bla bla
Author=2
Contact=1, 2, 3, 5

And FIXME_FILE() would do:
Upon the first time *only*:
One or more Wine execution error(s) occurred ! Look up the error number given
in file ~/.wine/wine_err.ini for further explanations !

And the error message would be:
Wine error 1234: FATAL: Need to relocate MYAPP.EXE, but no relocation records present 
(stripped during link). Try to run that file directly !

I don't know whether/how it's possible to printf() these string params %s
integrated in wine_err.ini.

The whole concept would allow for:
1. getting many more very happy users.
2. *much* improved error handling/details.
3. a job (documenting error messages) for not-so-experienced developers
(i.e.  experienced Wine users)
4. reducing Wine size.

After all we're *not* Microsoft ! We really should be able to do better
than them and *document* our errors as soon as they occur.

And the ultimate achievement would be that it cuts down dramatically the number
of FLAME mails on wine-devel ;-)))

And YES, we should do this or a slightly altered concept NOW !

Andreas Mohr

Reply via email to