Author: cwittich
Date: Thu Aug 20 11:41:42 2009
New Revision: 42790
URL:
http://svn.reactos.org/svn/reactos?rev=42790&view=rev
Log:
sync cabinet winetest with wine 1.1.27
Modified:
trunk/rostests/winetests/cabinet/fdi.c
Modified: trunk/rostests/winetests/cabinet/fdi.c
URL:
http://svn.reactos.org/svn/reactos/trunk/rostests/winetests/cabinet/fdi.c?r…
==============================================================================
--- trunk/rostests/winetests/cabinet/fdi.c [iso-8859-1] (original)
+++ trunk/rostests/winetests/cabinet/fdi.c [iso-8859-1] Thu Aug 20 11:41:42 2009
@@ -287,10 +287,9 @@
static void create_test_files(void)
{
- int len;
-
- GetCurrentDirectoryA(MAX_PATH, CURR_DIR);
- len = lstrlenA(CURR_DIR);
+ DWORD len;
+
+ len = GetCurrentDirectoryA(MAX_PATH, CURR_DIR);
if(len && (CURR_DIR[len-1] == '\\'))
CURR_DIR[len-1] = 0;
@@ -609,8 +608,6 @@
char name[] = "extract.cab";
char path[MAX_PATH + 1];
- GetCurrentDirectoryA(MAX_PATH, path);
-
set_cab_parameters(&cabParams);
hfci = FCICreate(&erf, file_placed, mem_alloc, mem_free, fci_open,
@@ -622,6 +619,31 @@
FCIDestroy(hfci);
+ lstrcpyA(path, CURR_DIR);
+
+ /* path doesn't have a trailing backslash */
+ if (lstrlenA(path) > 2)
+ {
+ hfdi = FDICreate(fdi_alloc, fdi_free, fdi_open, fdi_read,
+ fdi_write, fdi_close, fdi_seek,
+ cpuUNKNOWN, &erf);
+
+ SetLastError(0xdeadbeef);
+ ret = FDICopy(hfdi, name, path, 0, CopyProgress, NULL, 0);
+ ok(ret == FALSE, "Expected FALSE, got %d\n", ret);
+ todo_wine
+ {
+ ok(GetLastError() == ERROR_INVALID_HANDLE,
+ "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
+ }
+
+ FDIDestroy(hfdi);
+ }
+ else
+ skip("Running on a root drive directory.\n");
+
+ lstrcatA(path, "\\");
+
hfdi = FDICreate(fdi_alloc, fdi_free, fdi_open, fdi_read,
fdi_write, fdi_close, fdi_seek,
cpuUNKNOWN, &erf);
@@ -629,14 +651,12 @@
/* cabinet with no files or folders */
SetLastError(0xdeadbeef);
ret = FDICopy(hfdi, name, path, 0, CopyProgress, NULL, 0);
- ok(ret == FALSE, "Expected FALSE, got %d\n", ret);
todo_wine
- {
- ok(GetLastError() == ERROR_INVALID_HANDLE,
- "Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
- }
-
- FDIDestroy(hfdi);
+ ok(ret == TRUE, "Expected TRUE, got %d\n", ret);
+ ok(GetLastError() == 0, "Expected 0f, got %d\n", GetLastError());
+
+ FDIDestroy(hfdi);
+
DeleteFileA(name);
}