Re: kernel32: Implement most of CopyFileEx

2007-05-11 Thread Dan Kegel
On 5/10/07, Kevin Koltzau <[EMAIL PROTECTED]> wrote: On Monday 07 May 2007 11:50 pm, Dan Kegel wrote: > You don't have a conformance test, nor was there one for CopyFile. > Maybe you should consider writing one, and making sure it passes > both on Wine and Windows. There is a test for CopyFile i

Re: kernel32: Implement most of CopyFileEx

2007-05-10 Thread Kevin Koltzau
On Monday 07 May 2007 11:50 pm, Dan Kegel wrote: > You don't have a conformance test, nor was there one for CopyFile. > Maybe you should consider writing one, and making sure it passes > both on Wine and Windows. There is a test for CopyFile in kernel32/tests/file.c, if I can find some time I pla

Re: kernel32: Implement most of CopyFileEx

2007-05-08 Thread Dan Kegel
On 5/7/07, Andrey Turkin <[EMAIL PROTECTED]> wrote: Dan, CopyFileA does not leaks a string (note BOOL flags). Instead first call use static TEB-based buffer so this is OK, given that recursion is impossible in this case. Whoops! Sorry, I should have remembered that. (And I meant to insert "see

Re: kernel32: Implement most of CopyFileEx

2007-05-08 Thread Kevin Koltzau
On Tuesday 08 May 2007 2:39 am, Andrey Turkin wrote: > Kevin, you are setting file size before copy starts. I'm not sure > Windows does so; also how would that work if destination file system > does not support sparse files? This is what windows does (at least XP) SetEndOfFile does not create a s

Re: kernel32: Implement most of CopyFileEx

2007-05-07 Thread Andrey Turkin
Sorry for jumping in, but I have some comments as well. Dan, CopyFileA does not leaks a string (note BOOL flags). Instead first call use static TEB-based buffer so this is OK, given that recursion is impossible in this case. Kevin, you are setting file size before copy starts. I'm not sure Wind

re: kernel32: Implement most of CopyFileEx

2007-05-07 Thread Dan Kegel
Nice to see somebody filling in the gaps like this. A few nits based on a superficial reading: CopyFileA leaks a string. (I know, it did before your change, too.) copy_file_open_dest's interface comment has the wrong name. +for(i = 0; i < sizeof(flags) / sizeof(flags[0]); i++) +{ +