setupapi: add SPFILENOTIFY_TARGETNEWER support to
SetupDefaultQueueCallback
Alexandre Julliard
julliard at winehq.org
Sat Dec 16 10:01:04 CST 2006
Robert Reif <reif at earthlink.net> writes:
> Index: dlls/setupapi/queue.c
> ===================================================================
> RCS file: /home/wine/wine/dlls/setupapi/queue.c,v
> retrieving revision 1.24
> diff -p -u -r1.24 queue.c
> --- dlls/setupapi/queue.c 14 Nov 2006 11:15:45 -0000 1.24
> +++ dlls/setupapi/queue.c 15 Dec 2006 16:38:56 -0000
> @@ -1379,6 +1379,28 @@ UINT WINAPI SetupDefaultQueueCallbackA(
> case SPFILENOTIFY_NEEDMEDIA:
> TRACE( "need media\n" );
> return FILEOP_SKIP;
> + case SPFILENOTIFY_TARGETNEWER:
> + TRACE( "target newer? Source: %s Target: %s\n",
> + debugstr_a(paths->Source), debugstr_a(paths->Target) );
> + {
> + WIN32_FILE_ATTRIBUTE_DATA Source, Target;
> +
> + if (GetFileAttributesExA(paths->Source, GetFileExInfoStandard, &Source))
> + {
> + if (GetFileAttributesExA(paths->Target, GetFileExInfoStandard, &Target))
> + {
> + TRACE( "Target = 0x%08x%08x, Source = 0x%08x%08x\n",
> + Target.ftCreationTime.dwHighDateTime, Target.ftCreationTime.dwLowDateTime,
> + Source.ftCreationTime.dwHighDateTime, Source.ftCreationTime.dwLowDateTime );
> +
> + if (CompareFileTime(&Target.ftCreationTime, &Source.ftCreationTime) == 1)
> + return TRUE;
> +
> + return FALSE;
> + }
> + }
> + }
That doesn't make sense to me. At this point the file is known to be
newer from the version info, why would you want to check creation
time and overwrite a newer file?
--
Alexandre Julliard
julliard at winehq.org
More information about the wine-devel
mailing list