Reorganizing msvcrt related dlls implementation

Piotr Caban piotr at
Mon Mar 29 08:34:11 CDT 2010


Recently I was working on some msvcrt/msvcr90 functions.

I found few problems related to how the implementation is organized:
  - Some of the functions are invoking invalid_parameter, msvcrt is not 
allowing to change it, msvcr90 exports _set_invalid_parameter_handler.
  - create_locale (not available on msvcrt) needs almost exactly the 
same internal functions as set_locale.

I see few ways of implementing this functions:
  - Copy implementations of functions that are invoking 
invalid_parameter_handler to msvcr90. This will introduce lots of code 
duplication in future (currently most of functions that should invoke 
invalid_parameter_handler are not implemented or are not calling it). 
Almost whole locale.c file will be copied.
  - Create wine specific dll, forward msvcrt and msvcr90 calls to it.
  - Move implementation of some functions from msvcrt to msvcr90. It'll 
probably introduce similar problems when newer msvcrXX appears.

What solution is preferred? Any other ideas?


More information about the wine-devel mailing list