"Robert Shearman" R.J.Shearman@warwick.ac.uk writes:
However, couldn't we just replace the libwine_unicode function with an appropriate (well-documented) kernel32 string function: strcatW -> lstrcatW strcmpW -> lstrcmpW strcpyW -> lstrcpyW strlenW -> lstrlenW ... etc It may add a little bit of overhead in Wine (which we could possibly solve by adding #define's for e.g. lstrcatW -> strcatW), but it would solve the problem.
Yes, this is something I've been wanting to do for a long time. Not so much because of libwine_unicode, but because a lot of places use the lstr* functions for no reason, and this slows things down quite a bit. The problem is that some places do rely on the exception handling that the lstr* functions do, so we'd first need to go through every call to check whether we need to add an exception handler in the caller.