This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: handle_to_fn question
- From: Christopher Faylor <cgf at redhat dot com>
- To: cygwin at cygwin dot com
- Date: Tue, 4 Jun 2002 14:07:12 -0400
- Subject: Re: handle_to_fn question
- References: <9929150115.20020604182833@syntrex.com>
- Reply-to: cygwin at cygwin dot com
On Tue, Jun 04, 2002 at 06:28:33PM +0200, Pavel Tsekov wrote:
>Hello, there! :)
>
>I may be wrong but this code from handle_to_fn seems wrong to me:
>
>static char *
>handle_to_fn (HANDLE h, char *posix_fn)
>{
> OBJECT_NAME_INFORMATION *ntfn;
> char fnbuf[32768];
>
> memset (fnbuf, 0, sizeof (fnbuf));
> ntfn = (OBJECT_NAME_INFORMATION *) fnbuf;
>
> // If I'm right for the case below this should read sizeof (fnbuf) -
> // sizeof (OBJECT_NAME_INFORMATION).
> ntfn->Name.MaximumLength = sizeof (fnbuf);
>
> // I think that the right hand of the assignment is incorrect and it should be
> // (WCHAR *) (ntfn + 1). Now it seems like ntfn->Name.Buffer will be
> // assigned the addres of ntfn->Name.MaximumLength.
> ntfn->Name.Buffer = (WCHAR *) ntfn + 1;
It's easy enough to test your theories by running this in a debugger.
Have you done so?
cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/