thunking, the next step
Robert Collins
rbcollins@cygwin.com
Mon Nov 17 11:31:00 GMT 2003
On Mon, 2003-11-17 at 22:21, Corinna Vinschen wrote:
> This would require a decision only on the first time
> a function is called.
There's more to it than that. you MUST NOT hand the A series call longer
paths than MAX_PATH, they /really/ don't like it. And, structures like
the FindNext* details change in definition when UNICODE is defined. I
was trying to avoid all that complexity, which is significant, by
staying in a thunk approach.
> Also we would need a fairly big change to path_conv. It would have to
> create the POSIX path in ascii on 9x and in wide char on NT. If the
> path name creation is done in wide char directly, we neither need a
> strlen, nor an explicit conversion from ascii to wide char.
I agree that moving a lot of the logic into path_conv would be a good
idea. This is orthogonal to whether we use :
> I think this method is preferable over the IOThunkState technique since
> it will have more or less no speed impact. It also has the advantage,
> that the Cygwin code doesn't have to use all new function calls like
> "create_file" instead of using the "real" Win32 function calls directly.
I decided against redefining the 'real' calls because I figured some
areas may want to use the 'real' calls directly, and only the
auto-adjusting parts of cygwin should have the ansi/wide dichotomy.
There is some interesting reading on the issues in the win32 unicode
layer for win9x systems on msdn.
Rob
--
GPG key available at: <http://www.robertcollins.net/keys.txt>.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
URL: <http://cygwin.com/pipermail/cygwin-patches/attachments/20031117/a9fc7f14/attachment.sig>
More information about the Cygwin-patches
mailing list