Commit 8bc25b24 authored by Zebediah Figura's avatar Zebediah Figura Committed by Alexandre Julliard

setupapi: Don't fail a queued copy if no copy was necessary.

This fixes a regression introduced by 3e5c9798. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47219Signed-off-by: 's avatarZebediah Figura <z.figura12@gmail.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent a748f685
......@@ -1309,7 +1309,7 @@ static BOOL queue_copy_file( const WCHAR *source, const WCHAR *dest,
if (op->dst_path && !create_full_pathW(op->dst_path))
return FALSE;
if (do_file_copyW(source, dest, op->style, handler, context))
if (do_file_copyW(source, dest, op->style, handler, context) || GetLastError() == ERROR_SUCCESS)
return TRUE;
/* try to extract it from the cabinet file */
......
......@@ -1468,6 +1468,16 @@ static void test_need_media(void)
ok(got_need_media == 1, "Got %u callbacks.\n", got_need_media);
ok(delete_file("dst/one.txt"), "Destination file should exist.\n");
got_need_media = 0;
queue = SetupOpenFileQueue();
ok(queue != INVALID_HANDLE_VALUE, "Failed to open queue, error %#x.\n", GetLastError());
ret = SetupQueueCopyA(queue, "src", NULL, "one.txt", "File One", NULL,
"dst", NULL, SP_COPY_WARNIFSKIP | SP_COPY_REPLACEONLY);
ok(ret, "Failed to queue copy, error %#x.\n", GetLastError());
run_queue(queue, need_media_cb);
ok(got_need_media == 1, "Got %u callbacks.\n", got_need_media);
ok(!file_exists("dst/one.txt"), "Destination file should exist.\n");
/* Test with a subdirectory. */
got_need_media = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment