[WINESYNC] msi/tests: Build without -DWINE_NO_LONG_TYPES.

Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>

wine commit id 54b8c8c7eaafd19780cb4d91b763fe2f20327f50 by Hans Leidekker <hans@codeweavers.com>
This commit is contained in:
winesync 2022-03-14 21:24:16 +01:00 committed by Mark Jansen
parent 02f995b22e
commit 1b4acd3c65
No known key found for this signature in database
GPG key ID: B39240EE84BEAE8B
13 changed files with 2579 additions and 2576 deletions

View file

@ -44,7 +44,8 @@ add_typelib(typelib.idl)
target_compile_definitions(msi_winetest PRIVATE __WINESRC__ USE_WINE_TODOS) target_compile_definitions(msi_winetest PRIVATE __WINESRC__ USE_WINE_TODOS)
if(CMAKE_C_COMPILER_ID STREQUAL "GNU") if(CMAKE_C_COMPILER_ID STREQUAL "GNU")
target_compile_options(msi_winetest PRIVATE -Wno-format-overflow) target_compile_options(msi_winetest PRIVATE -Wno-format-overflow -Wno-format)
target_compile_options(custom PRIVATE -Wno-format)
endif() endif()
# msi_winetest.rc: let rc.exe find custom.dll in its subdirectory, i.e. Debug. # msi_winetest.rc: let rc.exe find custom.dll in its subdirectory, i.e. Debug.

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -1141,7 +1141,7 @@ static void test_invalid_functions(MSIHANDLE hinst)
r = MsiEnableUIPreview(db, &preview); r = MsiEnableUIPreview(db, &preview);
ok(hinst, r == ERROR_INVALID_HANDLE, "got %u\n", r); ok(hinst, r == ERROR_INVALID_HANDLE, "got %u\n", r);
sprintf(package_name, "#%u", db); sprintf(package_name, "#%lu", db);
r = MsiOpenPackageA(package_name, &package); r = MsiOpenPackageA(package_name, &package);
ok(hinst, r == ERROR_INVALID_HANDLE, "got %u\n", r); ok(hinst, r == ERROR_INVALID_HANDLE, "got %u\n", r);

View file

@ -548,7 +548,7 @@ static void test_msidecomposedesc(void)
comp[0] = 0x55; comp[0] = 0x55;
r = pMsiDecomposeDescriptorA(desc, prod, feature, comp, &len); r = pMsiDecomposeDescriptorA(desc, prod, feature, comp, &len);
ok(r == ERROR_SUCCESS, "returned an error\n"); ok(r == ERROR_SUCCESS, "returned an error\n");
ok(len == 41, "got %u\n", len); ok(len == 41, "got %lu\n", len);
ok(!strcmp(prod,"{90110409-6000-11D3-8CFE-0150048383C9}"), "got '%s'\n", prod); ok(!strcmp(prod,"{90110409-6000-11D3-8CFE-0150048383C9}"), "got '%s'\n", prod);
ok(!strcmp(feature,"FollowTheWhiteRabbit"), "got '%s'\n", feature); ok(!strcmp(feature,"FollowTheWhiteRabbit"), "got '%s'\n", feature);
ok(!comp[0], "got '%s'\n", comp); ok(!comp[0], "got '%s'\n", comp);
@ -558,7 +558,7 @@ static void test_msidecomposedesc(void)
comp[0] = 0x55; comp[0] = 0x55;
r = pMsiDecomposeDescriptorA("yh1BVN)8A$!!!!!MKKSkAlwaysInstalledIntl_1033<", prod, feature, comp, &len); r = pMsiDecomposeDescriptorA("yh1BVN)8A$!!!!!MKKSkAlwaysInstalledIntl_1033<", prod, feature, comp, &len);
ok(r == ERROR_SUCCESS, "got %u\n", r); ok(r == ERROR_SUCCESS, "got %u\n", r);
ok(len == 45, "got %u\n", len); ok(len == 45, "got %lu\n", len);
ok(!strcmp(prod, "{90150000-006E-0409-0000-0000000FF1CE}"), "got '%s'\n", prod); ok(!strcmp(prod, "{90150000-006E-0409-0000-0000000FF1CE}"), "got '%s'\n", prod);
ok(!strcmp(feature, "AlwaysInstalledIntl_1033"), "got '%s'\n", feature); ok(!strcmp(feature, "AlwaysInstalledIntl_1033"), "got '%s'\n", feature);
ok(!comp[0], "got '%s'\n", comp); ok(!comp[0], "got '%s'\n", comp);
@ -907,7 +907,7 @@ static void test_viewmodify(void)
err = MsiViewGetErrorA( hview, buffer, &sz ); err = MsiViewGetErrorA( hview, buffer, &sz );
ok(err == MSIDBERROR_NOERROR, "got %d\n", err); ok(err == MSIDBERROR_NOERROR, "got %d\n", err);
ok(!buffer[0], "got \"%s\"\n", buffer); ok(!buffer[0], "got \"%s\"\n", buffer);
ok(sz == 0, "got size %u\n", sz); ok(sz == 0, "got size %lu\n", sz);
r = MsiViewExecute(hview, 0); r = MsiViewExecute(hview, 0);
ok(r == ERROR_SUCCESS, "MsiViewExecute failed\n"); ok(r == ERROR_SUCCESS, "MsiViewExecute failed\n");
@ -928,7 +928,7 @@ static void test_viewmodify(void)
err = MsiViewGetErrorA( hview, buffer, &sz ); err = MsiViewGetErrorA( hview, buffer, &sz );
ok(err == MSIDBERROR_NOERROR, "got %d\n", err); ok(err == MSIDBERROR_NOERROR, "got %d\n", err);
ok(!buffer[0], "got \"%s\"\n", buffer); ok(!buffer[0], "got \"%s\"\n", buffer);
ok(sz == 0, "got size %u\n", sz); ok(sz == 0, "got size %lu\n", sz);
r = MsiCloseHandle(hrec); r = MsiCloseHandle(hrec);
ok(r == ERROR_SUCCESS, "failed to close record\n"); ok(r == ERROR_SUCCESS, "failed to close record\n");
@ -960,7 +960,7 @@ static void test_viewmodify(void)
err = MsiViewGetErrorA( hview, buffer, &sz ); err = MsiViewGetErrorA( hview, buffer, &sz );
ok(err == MSIDBERROR_DUPLICATEKEY, "got %d\n", err); ok(err == MSIDBERROR_DUPLICATEKEY, "got %d\n", err);
ok(!strcmp(buffer, "id"), "got \"%s\"\n", buffer); ok(!strcmp(buffer, "id"), "got \"%s\"\n", buffer);
ok(sz == 2, "got size %u\n", sz); ok(sz == 2, "got size %lu\n", sz);
/* insert the same thing again */ /* insert the same thing again */
r = MsiViewExecute(hview, 0); r = MsiViewExecute(hview, 0);
@ -1809,7 +1809,7 @@ static void test_streamtable(void)
memset(buf, 0, MAX_PATH); memset(buf, 0, MAX_PATH);
r = MsiRecordReadStream( rec, 2, buf, &size ); r = MsiRecordReadStream( rec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "Failed to get stream: %d\n", r); ok( r == ERROR_SUCCESS, "Failed to get stream: %d\n", r);
ok( !lstrcmpA(buf, "test.txt\n"), "Expected 'test.txt\\n', got '%s' (%d)\n", buf, size); ok( !lstrcmpA(buf, "test.txt\n"), "Expected 'test.txt\\n', got '%s' (%lu)\n", buf, size);
MsiCloseHandle( rec ); MsiCloseHandle( rec );
/* open a handle to the "data" stream (and keep it open during removal) */ /* open a handle to the "data" stream (and keep it open during removal) */
@ -1841,7 +1841,7 @@ static void test_streamtable(void)
memset(buf, 0, MAX_PATH); memset(buf, 0, MAX_PATH);
r = MsiRecordReadStream( rec, 2, buf, &size ); r = MsiRecordReadStream( rec, 2, buf, &size );
ok( r == ERROR_SUCCESS, "Failed to get stream: %d\n", r); ok( r == ERROR_SUCCESS, "Failed to get stream: %d\n", r);
todo_wine ok( size == 0, "Expected empty buffer, got %d bytes\n", size); todo_wine ok( size == 0, "Expected empty buffer, got %lu bytes\n", size);
MsiCloseHandle( rec ); MsiCloseHandle( rec );
MsiCloseHandle( hdb ); MsiCloseHandle( hdb );
@ -2246,7 +2246,8 @@ static void test_suminfo_import(void)
{ {
MSIHANDLE hdb, hsi, view = 0; MSIHANDLE hdb, hsi, view = 0;
LPCSTR query; LPCSTR query;
UINT r, count, size, type; UINT r, count, type;
DWORD size;
char str_value[50]; char str_value[50];
INT int_value; INT int_value;
FILETIME ft_value; FILETIME ft_value;
@ -2284,7 +2285,7 @@ static void test_suminfo_import(void)
r = MsiSummaryInfoGetPropertyA(hsi, PID_TITLE, &type, NULL, NULL, str_value, &size); r = MsiSummaryInfoGetPropertyA(hsi, PID_TITLE, &type, NULL, NULL, str_value, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
ok(type == VT_LPSTR, "Expected VT_LPSTR, got %u\n", type); ok(type == VT_LPSTR, "Expected VT_LPSTR, got %u\n", type);
ok(size == 18, "Expected 18, got %u\n", size); ok(size == 18, "Expected 18, got %lu\n", size);
ok(!strcmp(str_value, "Installer Database"), ok(!strcmp(str_value, "Installer Database"),
"Expected \"Installer Database\", got %s\n", str_value); "Expected \"Installer Database\", got %s\n", str_value);
@ -2980,7 +2981,7 @@ static void generate_transform_manual(void)
STGM_WRITE | STGM_SHARE_EXCLUSIVE, 0, 0, &stm ); STGM_WRITE | STGM_SHARE_EXCLUSIVE, 0, 0, &stm );
if (FAILED(r)) if (FAILED(r))
{ {
ok(0, "failed to create stream %08x\n", r); ok(0, "failed to create stream %#lx\n", r);
continue; continue;
} }
@ -3068,7 +3069,7 @@ static UINT package_from_db(MSIHANDLE hdb, MSIHANDLE *handle)
CHAR szPackage[12]; CHAR szPackage[12];
MSIHANDLE hPackage; MSIHANDLE hPackage;
sprintf(szPackage, "#%u", hdb); sprintf(szPackage, "#%lu", hdb);
res = MsiOpenPackageA(szPackage, &hPackage); res = MsiOpenPackageA(szPackage, &hPackage);
if (res != ERROR_SUCCESS) if (res != ERROR_SUCCESS)
return res; return res;
@ -3512,7 +3513,7 @@ static void test_join(void)
i++; i++;
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 5, "Expected 5 rows, got %d\n", i ); ok( i == 5, "Expected 5 rows, got %lu\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
MsiViewClose(hview); MsiViewClose(hview);
@ -3533,7 +3534,7 @@ static void test_join(void)
i++; i++;
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 24, "Expected 24 rows, got %d\n", i ); ok( i == 24, "Expected 24 rows, got %lu\n", i );
MsiViewClose(hview); MsiViewClose(hview);
MsiCloseHandle(hview); MsiCloseHandle(hview);
@ -3555,7 +3556,7 @@ static void test_join(void)
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 2, "Expected 2 rows, got %d\n", i ); ok( i == 2, "Expected 2 rows, got %lu\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
MsiViewClose(hview); MsiViewClose(hview);
@ -3578,7 +3579,7 @@ static void test_join(void)
i++; i++;
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 2, "Expected 2 rows, got %d\n", i ); ok( i == 2, "Expected 2 rows, got %lu\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
MsiViewClose(hview); MsiViewClose(hview);
@ -3601,7 +3602,7 @@ static void test_join(void)
i++; i++;
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 1, "Expected 1 rows, got %d\n", i ); ok( i == 1, "Expected 1 rows, got %lu\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
MsiViewClose(hview); MsiViewClose(hview);
@ -3625,7 +3626,7 @@ static void test_join(void)
i++; i++;
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 1, "Expected 1 rows, got %d\n", i ); ok( i == 1, "Expected 1 rows, got %lu\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
MsiViewClose(hview); MsiViewClose(hview);
@ -3648,7 +3649,7 @@ static void test_join(void)
i++; i++;
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 6, "Expected 6 rows, got %d\n", i ); ok( i == 6, "Expected 6 rows, got %lu\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
MsiViewClose(hview); MsiViewClose(hview);
@ -3672,7 +3673,7 @@ static void test_join(void)
i++; i++;
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 3, "Expected 3 rows, got %d\n", i ); ok( i == 3, "Expected 3 rows, got %lu\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
MsiViewClose(hview); MsiViewClose(hview);
@ -3693,7 +3694,7 @@ static void test_join(void)
i++; i++;
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 6, "Expected 6 rows, got %d\n", i ); ok( i == 6, "Expected 6 rows, got %lu\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
MsiViewClose(hview); MsiViewClose(hview);
@ -3714,7 +3715,7 @@ static void test_join(void)
i++; i++;
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 6, "Expected 6 rows, got %d\n", i ); ok( i == 6, "Expected 6 rows, got %lu\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
MsiViewClose(hview); MsiViewClose(hview);
@ -3736,7 +3737,7 @@ static void test_join(void)
i++; i++;
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
} }
ok( i == 6, "Expected 6 rows, got %d\n", i ); ok( i == 6, "Expected 6 rows, got %lu\n", i );
ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r ); ok( r == ERROR_NO_MORE_ITEMS, "expected no more items: %d\n", r );
MsiViewClose(hview); MsiViewClose(hview);
@ -4240,21 +4241,21 @@ static void test_integers(void)
ok(r == 8, "record count wrong: %d\n", r); ok(r == 8, "record count wrong: %d\n", r);
i = MsiRecordGetInteger(rec, 1); i = MsiRecordGetInteger(rec, 1);
ok(i == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", i); ok(i == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %lu\n", i);
i = MsiRecordGetInteger(rec, 3); i = MsiRecordGetInteger(rec, 3);
ok(i == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %d\n", i); ok(i == MSI_NULL_INTEGER, "Expected MSI_NULL_INTEGER, got %lu\n", i);
i = MsiRecordGetInteger(rec, 2); i = MsiRecordGetInteger(rec, 2);
ok(i == 2, "Expected 2, got %d\n", i); ok(i == 2, "Expected 2, got %lu\n", i);
i = MsiRecordGetInteger(rec, 4); i = MsiRecordGetInteger(rec, 4);
ok(i == 4, "Expected 4, got %d\n", i); ok(i == 4, "Expected 4, got %lu\n", i);
i = MsiRecordGetInteger(rec, 5); i = MsiRecordGetInteger(rec, 5);
ok(i == 5, "Expected 5, got %d\n", i); ok(i == 5, "Expected 5, got %lu\n", i);
i = MsiRecordGetInteger(rec, 6); i = MsiRecordGetInteger(rec, 6);
ok(i == 6, "Expected 6, got %d\n", i); ok(i == 6, "Expected 6, got %lu\n", i);
i = MsiRecordGetInteger(rec, 7); i = MsiRecordGetInteger(rec, 7);
ok(i == 7, "Expected 7, got %d\n", i); ok(i == 7, "Expected 7, got %lu\n", i);
i = MsiRecordGetInteger(rec, 8); i = MsiRecordGetInteger(rec, 8);
ok(i == 8, "Expected 8, got %d\n", i); ok(i == 8, "Expected 8, got %lu\n", i);
MsiCloseHandle(rec); MsiCloseHandle(rec);
MsiViewClose(view); MsiViewClose(view);
@ -5714,65 +5715,65 @@ static void test_stringtable(void)
MultiByteToWideChar(CP_ACP, 0, msifile, -1, name, 0x20); MultiByteToWideChar(CP_ACP, 0, msifile, -1, name, 0x20);
hr = StgOpenStorage(name, NULL, mode, NULL, 0, &stg); hr = StgOpenStorage(name, NULL, mode, NULL, 0, &stg);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(stg != NULL, "Expected non-NULL storage\n"); ok(stg != NULL, "Expected non-NULL storage\n");
hr = IStorage_OpenStream(stg, moo, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm); hr = IStorage_OpenStream(stg, moo, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(stm != NULL, "Expected non-NULL stream\n"); ok(stm != NULL, "Expected non-NULL stream\n");
hr = IStream_Read(stm, data, MAX_PATH, &read); hr = IStream_Read(stm, data, MAX_PATH, &read);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(read == 4, "Expected 4, got %d\n", read); ok(read == 4, "Expected 4, got %lu\n", read);
todo_wine ok(!memcmp(data, data10, read), "Unexpected data\n"); todo_wine ok(!memcmp(data, data10, read), "Unexpected data\n");
hr = IStream_Release(stm); hr = IStream_Release(stm);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
hr = IStorage_OpenStream(stg, aar, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm); hr = IStorage_OpenStream(stg, aar, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(stm != NULL, "Expected non-NULL stream\n"); ok(stm != NULL, "Expected non-NULL stream\n");
hr = IStream_Read(stm, data, MAX_PATH, &read); hr = IStream_Read(stm, data, MAX_PATH, &read);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(read == 8, "Expected 8, got %d\n", read); ok(read == 8, "Expected 8, got %lu\n", read);
todo_wine todo_wine
{ {
ok(!memcmp(data, data11, read), "Unexpected data\n"); ok(!memcmp(data, data11, read), "Unexpected data\n");
} }
hr = IStream_Release(stm); hr = IStream_Release(stm);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
hr = IStorage_OpenStream(stg, stringdata, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm); hr = IStorage_OpenStream(stg, stringdata, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(stm != NULL, "Expected non-NULL stream\n"); ok(stm != NULL, "Expected non-NULL stream\n");
hr = IStream_Read(stm, buffer, MAX_PATH, &read); hr = IStream_Read(stm, buffer, MAX_PATH, &read);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(read == 24, "Expected 24, got %d\n", read); ok(read == 24, "Expected 24, got %lu\n", read);
ok(!memcmp(buffer, data12, read), "Unexpected data\n"); ok(!memcmp(buffer, data12, read), "Unexpected data\n");
hr = IStream_Release(stm); hr = IStream_Release(stm);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
hr = IStorage_OpenStream(stg, stringpool, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm); hr = IStorage_OpenStream(stg, stringpool, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(stm != NULL, "Expected non-NULL stream\n"); ok(stm != NULL, "Expected non-NULL stream\n");
hr = IStream_Read(stm, data, MAX_PATH, &read); hr = IStream_Read(stm, data, MAX_PATH, &read);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
todo_wine todo_wine
{ {
ok(read == 64, "Expected 64, got %d\n", read); ok(read == 64, "Expected 64, got %lu\n", read);
ok(!memcmp(data, data13, read), "Unexpected data\n"); ok(!memcmp(data, data13, read), "Unexpected data\n");
} }
hr = IStream_Release(stm); hr = IStream_Release(stm);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
hr = IStorage_Release(stg); hr = IStorage_Release(stg);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
DeleteFileA(msifile); DeleteFileA(msifile);
} }
@ -5895,7 +5896,7 @@ static void enum_stream_names(IStorage *stg)
memset(check, 'a', MAX_PATH); memset(check, 'a', MAX_PATH);
hr = IStorage_EnumElements(stg, 0, NULL, 0, &stgenum); hr = IStorage_EnumElements(stg, 0, NULL, 0, &stgenum);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
n = 0; n = 0;
while(TRUE) while(TRUE)
@ -5906,12 +5907,12 @@ static void enum_stream_names(IStorage *stg)
break; break;
ok(!lstrcmpW(stat.pwcsName, database_table_data[n].name), ok(!lstrcmpW(stat.pwcsName, database_table_data[n].name),
"Expected table %d name to match\n", n); "Expected table %lu name to match\n", n);
stm = NULL; stm = NULL;
hr = IStorage_OpenStream(stg, stat.pwcsName, NULL, hr = IStorage_OpenStream(stg, stat.pwcsName, NULL,
STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm); STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(stm != NULL, "Expected non-NULL stream\n"); ok(stm != NULL, "Expected non-NULL stream\n");
CoTaskMemFree(stat.pwcsName); CoTaskMemFree(stat.pwcsName);
@ -5919,22 +5920,22 @@ static void enum_stream_names(IStorage *stg)
sz = MAX_PATH; sz = MAX_PATH;
memset(data, 'a', MAX_PATH); memset(data, 'a', MAX_PATH);
hr = IStream_Read(stm, data, sz, &count); hr = IStream_Read(stm, data, sz, &count);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(count == database_table_data[n].size, ok(count == database_table_data[n].size,
"Expected %d, got %d\n", database_table_data[n].size, count); "Expected %lu, got %lu\n", database_table_data[n].size, count);
if (!database_table_data[n].size) if (!database_table_data[n].size)
ok(!memcmp(data, check, MAX_PATH), "data should not be changed\n"); ok(!memcmp(data, check, MAX_PATH), "data should not be changed\n");
else else
ok(!memcmp(data, database_table_data[n].data, database_table_data[n].size), ok(!memcmp(data, database_table_data[n].data, database_table_data[n].size),
"Expected table %d data to match\n", n); "Expected table %lu data to match\n", n);
IStream_Release(stm); IStream_Release(stm);
n++; n++;
} }
ok(n == 3, "Expected 3, got %d\n", n); ok(n == 3, "Expected 3, got %lu\n", n);
IEnumSTATSTG_Release(stgenum); IEnumSTATSTG_Release(stgenum);
} }
@ -5957,7 +5958,7 @@ static void test_defaultdatabase(void)
MsiCloseHandle(hdb); MsiCloseHandle(hdb);
hr = StgOpenStorage(msifileW, NULL, STGM_READ | STGM_SHARE_DENY_WRITE, NULL, 0, &stg); hr = StgOpenStorage(msifileW, NULL, STGM_READ | STGM_SHARE_DENY_WRITE, NULL, 0, &stg);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(stg != NULL, "Expected non-NULL stg\n"); ok(stg != NULL, "Expected non-NULL stg\n");
enum_stream_names(stg); enum_stream_names(stg);
@ -7188,7 +7189,7 @@ static void test_storages_table(void)
r = MsiRecordReadStream(hrec, 2, buf, &size); r = MsiRecordReadStream(hrec, 2, buf, &size);
ok(r == ERROR_INVALID_DATA, "Expected ERROR_INVALID_DATA, got %d\n", r); ok(r == ERROR_INVALID_DATA, "Expected ERROR_INVALID_DATA, got %d\n", r);
ok(!lstrcmpA(buf, "apple"), "Expected buf to be unchanged, got %s\n", buf); ok(!lstrcmpA(buf, "apple"), "Expected buf to be unchanged, got %s\n", buf);
ok(size == 0, "Expected 0, got %d\n", size); ok(size == 0, "Expected 0, got %lu\n", size);
MsiCloseHandle(hrec); MsiCloseHandle(hrec);
@ -7204,23 +7205,23 @@ static void test_storages_table(void)
MultiByteToWideChar(CP_ACP, 0, msifile, -1, name, MAX_PATH); MultiByteToWideChar(CP_ACP, 0, msifile, -1, name, MAX_PATH);
hr = StgOpenStorage(name, NULL, STGM_DIRECT | STGM_READ | hr = StgOpenStorage(name, NULL, STGM_DIRECT | STGM_READ |
STGM_SHARE_DENY_WRITE, NULL, 0, &stg); STGM_SHARE_DENY_WRITE, NULL, 0, &stg);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(stg != NULL, "Expected non-NULL storage\n"); ok(stg != NULL, "Expected non-NULL storage\n");
MultiByteToWideChar(CP_ACP, 0, "stgname", -1, name, MAX_PATH); MultiByteToWideChar(CP_ACP, 0, "stgname", -1, name, MAX_PATH);
hr = IStorage_OpenStorage(stg, name, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, hr = IStorage_OpenStorage(stg, name, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE,
NULL, 0, &inner); NULL, 0, &inner);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(inner != NULL, "Expected non-NULL storage\n"); ok(inner != NULL, "Expected non-NULL storage\n");
MultiByteToWideChar(CP_ACP, 0, "storage.bin", -1, name, MAX_PATH); MultiByteToWideChar(CP_ACP, 0, "storage.bin", -1, name, MAX_PATH);
hr = IStorage_OpenStream(inner, name, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm); hr = IStorage_OpenStream(inner, name, NULL, STGM_READ | STGM_SHARE_EXCLUSIVE, 0, &stm);
ok(hr == S_OK, "Expected S_OK, got %08x\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(stm != NULL, "Expected non-NULL stream\n"); ok(stm != NULL, "Expected non-NULL stream\n");
hr = IStream_Read(stm, buf, MAX_PATH, &size); hr = IStream_Read(stm, buf, MAX_PATH, &size);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
ok(size == 8, "Expected 8, got %d\n", size); ok(size == 8, "Expected 8, got %lu\n", size);
ok(!lstrcmpA(buf, "stgdata"), "Expected \"stgdata\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, "stgdata"), "Expected \"stgdata\", got \"%s\"\n", buf);
IStream_Release(stm); IStream_Release(stm);
@ -7248,7 +7249,7 @@ static void test_dbtopackage(void)
create_custom_action_table(hdb); create_custom_action_table(hdb);
add_custom_action_entry(hdb, "'SetProp', 51, 'MYPROP', 'grape'"); add_custom_action_entry(hdb, "'SetProp', 51, 'MYPROP', 'grape'");
sprintf(package, "#%u", hdb); sprintf(package, "#%lu", hdb);
r = MsiOpenPackageA(package, &hpkg); r = MsiOpenPackageA(package, &hpkg);
if (r == ERROR_INSTALL_PACKAGE_REJECTED) if (r == ERROR_INSTALL_PACKAGE_REJECTED)
{ {
@ -7263,7 +7264,7 @@ static void test_dbtopackage(void)
r = MsiGetPropertyA(hpkg, "MYPROP", buf, &size); r = MsiGetPropertyA(hpkg, "MYPROP", buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(size == 0, "Expected 0, got %d\n", size); ok(size == 0, "Expected 0, got %lu\n", size);
/* run the custom action to set the property */ /* run the custom action to set the property */
r = MsiDoActionA(hpkg, "SetProp"); r = MsiDoActionA(hpkg, "SetProp");
@ -7275,7 +7276,7 @@ static void test_dbtopackage(void)
r = MsiGetPropertyA(hpkg, "MYPROP", buf, &size); r = MsiGetPropertyA(hpkg, "MYPROP", buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, "grape"), "Expected \"grape\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, "grape"), "Expected \"grape\", got \"%s\"\n", buf);
ok(size == 5, "Expected 5, got %d\n", size); ok(size == 5, "Expected 5, got %lu\n", size);
MsiCloseHandle(hpkg); MsiCloseHandle(hpkg);
@ -7291,7 +7292,7 @@ static void test_dbtopackage(void)
todo_wine todo_wine
{ {
ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(size == 0, "Expected 0, got %d\n", size); ok(size == 0, "Expected 0, got %lu\n", size);
} }
MsiCloseHandle(hdb); MsiCloseHandle(hdb);
@ -7308,7 +7309,7 @@ static void test_dbtopackage(void)
create_custom_action_table(hdb); create_custom_action_table(hdb);
add_custom_action_entry(hdb, "'SetProp', 51, 'MYPROP', 'grape'"); add_custom_action_entry(hdb, "'SetProp', 51, 'MYPROP', 'grape'");
sprintf(package, "#%u", hdb); sprintf(package, "#%lu", hdb);
r = MsiOpenPackageA(package, &hpkg); r = MsiOpenPackageA(package, &hpkg);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
@ -7318,7 +7319,7 @@ static void test_dbtopackage(void)
r = MsiGetPropertyA(hpkg, "MYPROP", buf, &size); r = MsiGetPropertyA(hpkg, "MYPROP", buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(size == 0, "Expected 0, got %d\n", size); ok(size == 0, "Expected 0, got %lu\n", size);
/* run the custom action to set the property */ /* run the custom action to set the property */
r = MsiDoActionA(hpkg, "SetProp"); r = MsiDoActionA(hpkg, "SetProp");
@ -7330,7 +7331,7 @@ static void test_dbtopackage(void)
r = MsiGetPropertyA(hpkg, "MYPROP", buf, &size); r = MsiGetPropertyA(hpkg, "MYPROP", buf, &size);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, "grape"), "Expected \"grape\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, "grape"), "Expected \"grape\", got \"%s\"\n", buf);
ok(size == 5, "Expected 5, got %d\n", size); ok(size == 5, "Expected 5, got %lu\n", size);
MsiCloseHandle(hpkg); MsiCloseHandle(hpkg);
@ -7346,7 +7347,7 @@ static void test_dbtopackage(void)
todo_wine todo_wine
{ {
ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(size == 0, "Expected 0, got %d\n", size); ok(size == 0, "Expected 0, got %lu\n", size);
} }
MsiCloseHandle(hpkg); MsiCloseHandle(hpkg);
@ -8583,7 +8584,8 @@ static void test_embedded_nulls(void)
"s72\tL0\n" "s72\tL0\n"
"Control\tDialog\n" "Control\tDialog\n"
"LicenseAgreementDlg\ttext\x11\x19text\0text"; "LicenseAgreementDlg\ttext\x11\x19text\0text";
UINT r, sz; UINT r;
DWORD sz;
MSIHANDLE hdb, hrec; MSIHANDLE hdb, hrec;
char buffer[32]; char buffer[32];
@ -9208,7 +9210,7 @@ static void test_view_get_error(void)
sz = 0; sz = 0;
err = MsiViewGetErrorA(0, NULL, &sz); err = MsiViewGetErrorA(0, NULL, &sz);
ok(err == MSIDBERROR_INVALIDARG, "got %d\n", err); ok(err == MSIDBERROR_INVALIDARG, "got %d\n", err);
ok(sz == 0, "got size %u\n", sz); ok(sz == 0, "got size %lu\n", sz);
err = MsiViewGetErrorA(view, NULL, NULL); err = MsiViewGetErrorA(view, NULL, NULL);
ok(err == MSIDBERROR_INVALIDARG, "got %d\n", err); ok(err == MSIDBERROR_INVALIDARG, "got %d\n", err);
@ -9216,21 +9218,21 @@ static void test_view_get_error(void)
sz = 0; sz = 0;
err = MsiViewGetErrorA(view, NULL, &sz); err = MsiViewGetErrorA(view, NULL, &sz);
ok(err == MSIDBERROR_NOERROR, "got %d\n", err); ok(err == MSIDBERROR_NOERROR, "got %d\n", err);
ok(sz == 0, "got size %u\n", sz); ok(sz == 0, "got size %lu\n", sz);
sz = 0; sz = 0;
strcpy(buffer, "x"); strcpy(buffer, "x");
err = MsiViewGetErrorA(view, buffer, &sz); err = MsiViewGetErrorA(view, buffer, &sz);
ok(err == MSIDBERROR_MOREDATA, "got %d\n", err); ok(err == MSIDBERROR_MOREDATA, "got %d\n", err);
ok(!strcmp(buffer, "x"), "got \"%s\"\n", buffer); ok(!strcmp(buffer, "x"), "got \"%s\"\n", buffer);
ok(sz == 0, "got size %u\n", sz); ok(sz == 0, "got size %lu\n", sz);
sz = 1; sz = 1;
strcpy(buffer, "x"); strcpy(buffer, "x");
err = MsiViewGetErrorA(view, buffer, &sz); err = MsiViewGetErrorA(view, buffer, &sz);
ok(err == MSIDBERROR_NOERROR, "got %d\n", err); ok(err == MSIDBERROR_NOERROR, "got %d\n", err);
ok(!buffer[0], "got \"%s\"\n", buffer); ok(!buffer[0], "got \"%s\"\n", buffer);
ok(sz == 0, "got size %u\n", sz); ok(sz == 0, "got size %lu\n", sz);
rec = MsiCreateRecord(2); rec = MsiCreateRecord(2);
MsiRecordSetInteger(rec, 1, 1); MsiRecordSetInteger(rec, 1, 1);
@ -9243,14 +9245,14 @@ static void test_view_get_error(void)
err = MsiViewGetErrorA(view, buffer, &sz); err = MsiViewGetErrorA(view, buffer, &sz);
ok(err == MSIDBERROR_DUPLICATEKEY, "got %d\n", err); ok(err == MSIDBERROR_DUPLICATEKEY, "got %d\n", err);
ok(!strcmp(buffer, "A"), "got \"%s\"\n", buffer); ok(!strcmp(buffer, "A"), "got \"%s\"\n", buffer);
ok(sz == 1, "got size %u\n", sz); ok(sz == 1, "got size %lu\n", sz);
sz = 2; sz = 2;
strcpy(buffer, "x"); strcpy(buffer, "x");
err = MsiViewGetErrorA(view, buffer, &sz); err = MsiViewGetErrorA(view, buffer, &sz);
todo_wine ok(err == MSIDBERROR_NOERROR, "got %d\n", err); todo_wine ok(err == MSIDBERROR_NOERROR, "got %d\n", err);
todo_wine ok(!buffer[0], "got \"%s\"\n", buffer); todo_wine ok(!buffer[0], "got \"%s\"\n", buffer);
todo_wine ok(sz == 0, "got size %u\n", sz); todo_wine ok(sz == 0, "got size %lu\n", sz);
r = MsiViewModify(view, MSIMODIFY_VALIDATE_NEW, rec); r = MsiViewModify(view, MSIMODIFY_VALIDATE_NEW, rec);
ok(r == ERROR_INVALID_DATA, "got %u\n", r); ok(r == ERROR_INVALID_DATA, "got %u\n", r);
@ -9260,14 +9262,14 @@ static void test_view_get_error(void)
err = MsiViewGetErrorA(view, buffer, &sz); err = MsiViewGetErrorA(view, buffer, &sz);
ok(err == MSIDBERROR_MOREDATA, "got %d\n", err); ok(err == MSIDBERROR_MOREDATA, "got %d\n", err);
ok(!buffer[0], "got \"%s\"\n", buffer); ok(!buffer[0], "got \"%s\"\n", buffer);
ok(sz == 1, "got size %u\n", sz); ok(sz == 1, "got size %lu\n", sz);
sz = 1; sz = 1;
strcpy(buffer, "x"); strcpy(buffer, "x");
err = MsiViewGetErrorA(view, buffer, &sz); err = MsiViewGetErrorA(view, buffer, &sz);
todo_wine ok(err == MSIDBERROR_NOERROR, "got %d\n", err); todo_wine ok(err == MSIDBERROR_NOERROR, "got %d\n", err);
ok(!buffer[0], "got \"%s\"\n", buffer); ok(!buffer[0], "got \"%s\"\n", buffer);
todo_wine ok(sz == 0, "got size %u\n", sz); todo_wine ok(sz == 0, "got size %lu\n", sz);
r = MsiViewModify(view, MSIMODIFY_VALIDATE_NEW, rec); r = MsiViewModify(view, MSIMODIFY_VALIDATE_NEW, rec);
ok(r == ERROR_INVALID_DATA, "got %u\n", r); ok(r == ERROR_INVALID_DATA, "got %u\n", r);
@ -9277,14 +9279,14 @@ static void test_view_get_error(void)
err = MsiViewGetErrorA(view, buffer, &sz); err = MsiViewGetErrorA(view, buffer, &sz);
ok(err == MSIDBERROR_MOREDATA, "got %d\n", err); ok(err == MSIDBERROR_MOREDATA, "got %d\n", err);
ok(!strcmp(buffer, "x"), "got \"%s\"\n", buffer); ok(!strcmp(buffer, "x"), "got \"%s\"\n", buffer);
ok(sz == 1, "got size %u\n", sz); ok(sz == 1, "got size %lu\n", sz);
sz = 0; sz = 0;
strcpy(buffer, "x"); strcpy(buffer, "x");
err = MsiViewGetErrorA(view, buffer, &sz); err = MsiViewGetErrorA(view, buffer, &sz);
ok(err == MSIDBERROR_MOREDATA, "got %d\n", err); ok(err == MSIDBERROR_MOREDATA, "got %d\n", err);
ok(!strcmp(buffer, "x"), "got \"%s\"\n", buffer); ok(!strcmp(buffer, "x"), "got \"%s\"\n", buffer);
todo_wine ok(sz == 0, "got size %u\n", sz); todo_wine ok(sz == 0, "got size %lu\n", sz);
MsiCloseHandle(rec); MsiCloseHandle(rec);
MsiCloseHandle(view); MsiCloseHandle(view);

View file

@ -35,7 +35,7 @@ static UINT package_from_db(MSIHANDLE hdb, MSIHANDLE *handle)
CHAR szPackage[12]; CHAR szPackage[12];
MSIHANDLE hPackage; MSIHANDLE hPackage;
sprintf(szPackage, "#%u", hdb); sprintf(szPackage, "#%lu", hdb);
res = MsiOpenPackageA(szPackage, &hPackage); res = MsiOpenPackageA(szPackage, &hPackage);
if (res != ERROR_SUCCESS) if (res != ERROR_SUCCESS)
return res; return res;
@ -205,7 +205,7 @@ static void test_formatrecord(void)
sz = 123; sz = 123;
r = MsiFormatRecordA(0, hrec, NULL, &sz); r = MsiFormatRecordA(0, hrec, NULL, &sz);
ok( r == ERROR_SUCCESS, "format failed with empty buffer\n"); ok( r == ERROR_SUCCESS, "format failed with empty buffer\n");
ok( sz == 2, "size wrong (%i)\n",sz); ok( sz == 2, "size wrong (%lu)\n",sz);
sz = sizeof buffer; sz = sizeof buffer;
buffer[0] = 'x'; buffer[0] = 'x';
buffer[1] = 0; buffer[1] = 0;
@ -296,7 +296,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 30, "size wrong %i\n",sz); ok( sz == 30, "size wrong %lu\n",sz);
ok( 0 == strcmp(buffer,"1: boo 2: hoo 3: 4: 5: 6: "), ok( 0 == strcmp(buffer,"1: boo 2: hoo 3: 4: 5: 6: "),
"wrong output(%s)\n",buffer); "wrong output(%s)\n",buffer);
@ -308,7 +308,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 31, "size wrong %i\n",sz); ok( sz == 31, "size wrong %lu\n",sz);
ok( 0 == strcmp(buffer,"1: 123 2: 4567 3: 4: 5: 6: "), ok( 0 == strcmp(buffer,"1: 123 2: 4567 3: 4: 5: 6: "),
"wrong output(%s)\n",buffer); "wrong output(%s)\n",buffer);
@ -322,7 +322,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 7, "size wrong,(%i)\n",sz); ok( sz == 7, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"hey hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"hey hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "[[1]] [2]"); r = MsiRecordSetStringA(hrec, 0, "[[1]] [2]");
@ -334,7 +334,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 9, "size wrong,(%i)\n",sz); ok( sz == 9, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"[[2]] hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"[[2]] hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "[[[3]]] [2]"); r = MsiRecordSetStringA(hrec, 0, "[[[3]]] [2]");
@ -348,7 +348,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 7, "size wrong,(%i)\n",sz); ok( sz == 7, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"hey hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"hey hey"), "wrong output (%s)\n",buffer);
r = MsiCloseHandle(hrec); r = MsiCloseHandle(hrec);
@ -369,7 +369,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 7, "size wrong,(%i)\n",sz); ok( sz == 7, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"big hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"big hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "[[3][4][1]] [2]"); r = MsiRecordSetStringA(hrec, 0, "[[3][4][1]] [2]");
@ -387,7 +387,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 7, "size wrong,(%i)\n",sz); ok( sz == 7, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"big hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"big hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "[[3][[4]][1]] [2]"); r = MsiRecordSetStringA(hrec, 0, "[[3][[4]][1]] [2]");
@ -405,7 +405,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 10, "size wrong,(%i)\n",sz); ok( sz == 10, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"[1[]2] hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"[1[]2] hey"), "wrong output (%s)\n",buffer);
/* incorrect formats */ /* incorrect formats */
@ -424,7 +424,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 18, "size wrong,(%i)\n",sz); ok( sz == 18, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"[[[3][[4]][1]] [2]"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"[[[3][[4]][1]] [2]"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "[[3][[4]][1]] [2]]"); r = MsiRecordSetStringA(hrec, 0, "[[3][[4]][1]] [2]]");
@ -442,7 +442,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 11, "size wrong,(%i)\n",sz); ok( sz == 11, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"[1[]2] hey]"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"[1[]2] hey]"), "wrong output (%s)\n",buffer);
@ -463,7 +463,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 6, "size wrong,(%i)\n",sz); ok( sz == 6, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"12 hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"12 hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "[{[3][1]}] [2]"); r = MsiRecordSetStringA(hrec, 0, "[{[3][1]}] [2]");
@ -481,10 +481,9 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 8, "size wrong,(%i)\n",sz); ok( sz == 8, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"[12] hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"[12] hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{test} [2]"); r = MsiRecordSetStringA(hrec, 0, "{test} [2]");
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiRecordSetStringA(hrec, 1, "2"); r = MsiRecordSetStringA(hrec, 1, "2");
@ -500,7 +499,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 10, "size wrong,(%i)\n",sz); ok( sz == 10, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{test} hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{test} hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{[test]} [2]"); r = MsiRecordSetStringA(hrec, 0, "{[test]} [2]");
@ -518,7 +517,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 12, "size wrong,(%i)\n",sz); ok( sz == 12, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{[test]} hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{[test]} hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{[1][2][3][4]} [2]"); r = MsiRecordSetStringA(hrec, 0, "{[1][2][3][4]} [2]");
@ -536,7 +535,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 4, "size wrong,(%i)\n",sz); ok( sz == 4, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer," hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer," hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{[1][2][3][dummy]} [2]"); r = MsiRecordSetStringA(hrec, 0, "{[1][2][3][dummy]} [2]");
@ -554,7 +553,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 18, "size wrong,(%i)\n",sz); ok( sz == 18, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{2hey1[dummy]} hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{2hey1[dummy]} hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{[1][2][3][4][dummy]} [2]"); r = MsiRecordSetStringA(hrec, 0, "{[1][2][3][4][dummy]} [2]");
@ -572,7 +571,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 18, "size wrong,(%i)\n",sz); ok( sz == 18, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{2hey1[dummy]} hey"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{2hey1[dummy]} hey"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{{[1][2]}[3][4][dummy]}"); r = MsiRecordSetStringA(hrec, 0, "{{[1][2]}[3][4][dummy]}");
@ -590,7 +589,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 16, "size wrong,(%i)\n",sz); ok( sz == 16, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{{2hey}1[dummy]}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{{2hey}1[dummy]}"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{{[1][2]}[3]{[4][dummy]}}"); r = MsiRecordSetStringA(hrec, 0, "{{[1][2]}[3]{[4][dummy]}}");
@ -608,7 +607,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong,(%i)\n",sz); ok( sz == 0, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{{[1][2]}[3]} {[1][2]}"); r = MsiRecordSetStringA(hrec, 0, "{{[1][2]}[3]} {[1][2]}");
@ -626,7 +625,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 12, "size wrong,(%i)\n",sz); ok( sz == 12, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{{12}3} {12}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{{12}3} {12}"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{[1][2]} {{[1][2]}[3]} {[1][2]}"); r = MsiRecordSetStringA(hrec, 0, "{[1][2]} {{[1][2]}[3]} {[1][2]}");
@ -644,7 +643,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 15, "size wrong,(%i)\n",sz); ok( sz == 15, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"12 {{12}3} {12}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"12 {{12}3} {12}"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{[4]}{[1][2]} {{[1][2]}[3]} {[1][2]}"); r = MsiRecordSetStringA(hrec, 0, "{[4]}{[1][2]} {{[1][2]}[3]} {[1][2]}");
@ -662,7 +661,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 15, "size wrong,(%i)\n",sz); ok( sz == 15, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"12 {{12}3} {12}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"12 {{12}3} {12}"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{blah} {[4]}{[1][2]} {{[1][2]}[3]} {[1][2]}"); r = MsiRecordSetStringA(hrec, 0, "{blah} {[4]}{[1][2]} {{[1][2]}[3]} {[1][2]}");
@ -680,7 +679,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 22, "size wrong,(%i)\n",sz); ok( sz == 22, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{blah} 12 {{12}3} {12}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{blah} 12 {{12}3} {12}"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{{[1]}[2]} {[4]}{[1][2]}"); r = MsiRecordSetStringA(hrec, 0, "{{[1]}[2]} {[4]}{[1][2]}");
@ -698,7 +697,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 13, "size wrong,(%i)\n",sz); ok( sz == 13, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{{1}2} {}{12}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{{1}2} {}{12}"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{{[1]}} {[4]}{[1][2]}"); r = MsiRecordSetStringA(hrec, 0, "{{[1]}} {[4]}{[1][2]}");
@ -716,7 +715,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 3, "size wrong,(%i)\n",sz); ok( sz == 3, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer," 12"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer," 12"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "{{{[1]}} {[4]}{[1][2]}"); r = MsiRecordSetStringA(hrec, 0, "{{{[1]}} {[4]}{[1][2]}");
@ -735,10 +734,10 @@ static void test_formatrecord(void)
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
todo_wine{ todo_wine{
ok( sz == 3, "size wrong,(%i)\n",sz); ok( sz == 3, "size wrong,(%lu)\n",sz);
ok( 0 == strcmp(buffer," 12"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer," 12"), "wrong output (%s)\n",buffer);
} }
/* now put play games with escaping */ /* now put play games with escaping */
r = MsiRecordSetStringA(hrec, 0, "[1] [2] [\\3asdf]"); r = MsiRecordSetStringA(hrec, 0, "[1] [2] [\\3asdf]");
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
@ -770,7 +769,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 4, "size wrong: %d\n", sz); ok( sz == 4, "size wrong: %lu\n", sz);
ok( 0 == strcmp(buffer,"[\\x]"), "wrong output: %s\n", buffer); ok( 0 == strcmp(buffer,"[\\x]"), "wrong output: %s\n", buffer);
r = MsiRecordSetStringA(hrec, 0, "{\\x}"); r = MsiRecordSetStringA(hrec, 0, "{\\x}");
@ -778,7 +777,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 4, "size wrong: %d\n", sz); ok( sz == 4, "size wrong: %lu\n", sz);
ok( 0 == strcmp(buffer,"{\\x}"), "wrong output: %s\n", buffer); ok( 0 == strcmp(buffer,"{\\x}"), "wrong output: %s\n", buffer);
r = MsiRecordSetStringA(hrec, 0, "[abc\\x]"); r = MsiRecordSetStringA(hrec, 0, "[abc\\x]");
@ -786,7 +785,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 7, "size wrong: %d\n", sz); ok( sz == 7, "size wrong: %lu\n", sz);
ok( 0 == strcmp(buffer,"[abc\\x]"), "wrong output: %s\n", buffer); ok( 0 == strcmp(buffer,"[abc\\x]"), "wrong output: %s\n", buffer);
r = MsiRecordSetStringA(hrec, 0, "[\\[]Bracket Text[\\]]"); r = MsiRecordSetStringA(hrec, 0, "[\\[]Bracket Text[\\]]");
@ -794,7 +793,7 @@ static void test_formatrecord(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 20, "size wrong: %d\n", sz); ok( sz == 20, "size wrong: %lu\n", sz);
ok( 0 == strcmp(buffer,"[\\[]Bracket Text[\\]]"), "wrong output: %s\n", buffer); ok( 0 == strcmp(buffer,"[\\[]Bracket Text[\\]]"), "wrong output: %s\n", buffer);
/* now try other formats without a package */ /* now try other formats without a package */
@ -1091,7 +1090,7 @@ static void test_formatrecord(void)
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 4, "Expected 4, got %d\n", sz); ok(sz == 4, "Expected 4, got %lu\n", sz);
ok(!lstrcmpA(buffer, "[\\[]"), "Expected \"[\\[]\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "[\\[]"), "Expected \"[\\[]\", got \"%s\"\n", buffer);
r = MsiRecordSetStringA(hrec, 0, "[foo]"); r = MsiRecordSetStringA(hrec, 0, "[foo]");
@ -1329,7 +1328,7 @@ static void test_formatrecord(void)
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
todo_wine todo_wine
{ {
ok( sz == 12, "size wrong: got %u, expected 12\n", sz); ok( sz == 12, "size wrong: got %lu, expected 12\n", sz);
ok( 0 == strcmp(buffer,"{[1{{boo}}]}"), "wrong output: got %s, expected [1]\n", buffer); ok( 0 == strcmp(buffer,"{[1{{boo}}]}"), "wrong output: got %s, expected [1]\n", buffer);
} }
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
@ -1340,7 +1339,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( sz == 6, "size wrong: got %u, expected 3\n", sz); ok( sz == 6, "size wrong: got %lu, expected 3\n", sz);
ok( 0 == strcmp(buffer,"{{hoo}"), "wrong output: got %s, expected [1]\n", buffer); ok( 0 == strcmp(buffer,"{{hoo}"), "wrong output: got %s, expected [1]\n", buffer);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
@ -1525,7 +1524,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 6, "size wrong(%i)\n",sz); ok( sz == 6, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{abcd}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{abcd}"), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1533,7 +1532,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 23, "size wrong(%i)\n",sz); ok( sz == 23, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{a[one]bc[two]de[one]f}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{a[one]bc[two]de[one]f}"), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1541,7 +1540,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 23, "size wrong(%i)\n",sz); ok( sz == 23, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{a[one]bc[bad]de[two]f}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{a[one]bc[bad]de[two]f}"), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1549,7 +1548,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 7, "size wrong(%i)\n",sz); ok( sz == 7, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{[bad]}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{[bad]}"), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1557,7 +1556,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 14, "size wrong(%i)\n",sz); ok( sz == 14, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{abc{d[one]ef}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{abc{d[one]ef}"), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1565,7 +1564,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 15, "size wrong(%i)\n",sz); ok( sz == 15, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{abc{d[one]ef}}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{abc{d[one]ef}}"), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1573,7 +1572,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 5, "size wrong(%i)\n",sz); ok( sz == 5, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{abc}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{abc}"), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1581,7 +1580,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong(%i)\n",sz); ok( sz == 0, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1589,7 +1588,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong(%i)\n",sz); ok( sz == 0, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1599,7 +1598,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
todo_wine todo_wine
{ {
ok( sz == 7, "size wrong(%i)\n",sz); ok( sz == 7, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"hi{jk}}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"hi{jk}}"), "wrong output (%s)\n",buffer);
} }
@ -1610,7 +1609,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
todo_wine todo_wine
{ {
ok( sz == 1, "size wrong(%i)\n",sz); ok( sz == 1, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"}"), "wrong output (%s)\n",buffer);
} }
@ -1619,7 +1618,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong(%i)\n",sz); ok( sz == 0, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1627,7 +1626,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong(%i)\n",sz); ok( sz == 0, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1635,7 +1634,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 7, "size wrong(%i)\n",sz); ok( sz == 7, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{a{b}c}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{a{b}c}"), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1643,7 +1642,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 6, "size wrong(%i)\n",sz); ok( sz == 6, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{a{b}}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{a{b}}"), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1651,7 +1650,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 6, "size wrong(%i)\n",sz); ok( sz == 6, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{{b}c}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{{b}c}"), "wrong output (%s)\n",buffer);
sz = sizeof buffer; sz = sizeof buffer;
@ -1661,7 +1660,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
todo_wine todo_wine
{ {
ok( sz == 2, "size wrong(%i)\n",sz); ok( sz == 2, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"}}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"}}"), "wrong output (%s)\n",buffer);
} }
@ -1672,7 +1671,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 8, "size wrong(%i)\n",sz); ok( sz == 8, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"100 -100"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"100 -100"), "wrong output (%s)\n",buffer);
sz = sizeof(buffer); sz = sizeof(buffer);
@ -1682,7 +1681,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 33, "Expected 33, got %d\n",sz); ok(sz == 33, "Expected 33, got %lu\n",sz);
ok(!lstrcmpA(buffer, "one {[noprop] [twoprop]} {abcdef}"), ok(!lstrcmpA(buffer, "one {[noprop] [twoprop]} {abcdef}"),
"Expected \"one {[noprop] [twoprop]} {abcdef}\", got \"%s\"\n", buffer); "Expected \"one {[noprop] [twoprop]} {abcdef}\", got \"%s\"\n", buffer);
@ -1693,7 +1692,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 29, "Expected 29, got %d\n",sz); ok(sz == 29, "Expected 29, got %lu\n",sz);
ok(!lstrcmpA(buffer, "one {[noprop] [one]} {abcdef}"), ok(!lstrcmpA(buffer, "one {[noprop] [one]} {abcdef}"),
"Expected \"one {[noprop] [one]} {abcdef}\", got \"%s\"\n", buffer); "Expected \"one {[noprop] [one]} {abcdef}\", got \"%s\"\n", buffer);
@ -1704,7 +1703,7 @@ static void test_formatrecord(void)
ok( r == ERROR_SUCCESS, "set string failed\n"); ok( r == ERROR_SUCCESS, "set string failed\n");
r = MsiFormatRecordA(0, hrec, buffer, &sz); r = MsiFormatRecordA(0, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 20, "Expected 20, got %d\n",sz); ok(sz == 20, "Expected 20, got %lu\n",sz);
ok(!lstrcmpA(buffer, "one {[one]} {abcdef}"), ok(!lstrcmpA(buffer, "one {[one]} {abcdef}"),
"Expected \"one {[one]} {abcdef}\", got \"%s\"\n", buffer); "Expected \"one {[one]} {abcdef}\", got \"%s\"\n", buffer);
@ -1766,7 +1765,7 @@ static void test_formatrecord_package(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed with empty buffer (%i)\n",r); ok( r == ERROR_SUCCESS, "format failed with empty buffer (%i)\n",r);
ok( sz == 51, "size wrong (%i)\n",sz); ok( sz == 51, "size wrong (%lu)\n",sz);
ok( 0 == strcmp(buffer,"1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: "), "wrong output(%s)\n",buffer); ok( 0 == strcmp(buffer,"1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: "), "wrong output(%s)\n",buffer);
r = MsiSetPropertyA(package, "prop", "val"); r = MsiSetPropertyA(package, "prop", "val");
@ -1789,7 +1788,7 @@ static void test_formatrecord_package(void)
ok( r == ERROR_SUCCESS, "format failed with empty buffer (%i)\n",r); ok( r == ERROR_SUCCESS, "format failed with empty buffer (%i)\n",r);
todo_wine todo_wine
{ {
ok( sz == 66, "size wrong (%i)\n",sz); ok( sz == 66, "size wrong (%lu)\n",sz);
ok( !lstrcmpA(buffer, ok( !lstrcmpA(buffer,
"1: [2] 2: stuff 3: prop 4: val 5: 6: 7: 8: 9: 10: 11: 12: "), "1: [2] 2: stuff 3: prop 4: val 5: 6: 7: 8: 9: 10: 11: 12: "),
"wrong output(%s)\n",buffer); "wrong output(%s)\n",buffer);
@ -1805,7 +1804,7 @@ static void test_formatrecord_package(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 9, "size wrong(%i)\n",sz); ok( sz == 9, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"boo hoo 3"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"boo hoo 3"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "[1] [2] [\\x]"); r = MsiRecordSetStringA(hrec, 0, "[1] [2] [\\x]");
@ -1817,77 +1816,77 @@ static void test_formatrecord_package(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 9, "size wrong(%i)\n",sz); ok( sz == 9, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"boo hoo x"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"boo hoo x"), "wrong output (%s)\n",buffer);
MsiRecordSetStringA(hrec, 0, "[\\x]"); MsiRecordSetStringA(hrec, 0, "[\\x]");
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 1, "size wrong: %d\n", sz); ok( sz == 1, "size wrong: %lu\n", sz);
ok( 0 == strcmp(buffer,"x"), "wrong output: %s\n", buffer); ok( 0 == strcmp(buffer,"x"), "wrong output: %s\n", buffer);
MsiRecordSetStringA(hrec, 0, "{\\x}"); MsiRecordSetStringA(hrec, 0, "{\\x}");
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 4, "size wrong: %d\n", sz); ok( sz == 4, "size wrong: %lu\n", sz);
ok( 0 == strcmp(buffer,"{\\x}"), "wrong output: %s\n", buffer); ok( 0 == strcmp(buffer,"{\\x}"), "wrong output: %s\n", buffer);
MsiRecordSetStringA(hrec, 0, "[abc\\x]"); MsiRecordSetStringA(hrec, 0, "[abc\\x]");
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong: %d\n", sz); ok( sz == 0, "size wrong: %lu\n", sz);
ok( 0 == strcmp(buffer,""), "wrong output: %s\n", buffer); ok( 0 == strcmp(buffer,""), "wrong output: %s\n", buffer);
MsiRecordSetStringA(hrec, 0, "[abc\\xdef]"); MsiRecordSetStringA(hrec, 0, "[abc\\xdef]");
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong: %d\n", sz); ok( sz == 0, "size wrong: %lu\n", sz);
ok( 0 == strcmp(buffer,""), "wrong output: %s\n", buffer); ok( 0 == strcmp(buffer,""), "wrong output: %s\n", buffer);
MsiRecordSetStringA(hrec, 0, "\\x"); MsiRecordSetStringA(hrec, 0, "\\x");
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 2, "Expected 2, got %d\n", sz); ok(sz == 2, "Expected 2, got %lu\n", sz);
ok(!lstrcmpA(buffer, "\\x"), "Expected \"\\x\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "\\x"), "Expected \"\\x\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[\\["); MsiRecordSetStringA(hrec, 0, "[\\[");
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 3, "Expected 3, got %d\n", sz); ok(sz == 3, "Expected 3, got %lu\n", sz);
ok(!lstrcmpA(buffer, "[\\["), "Expected \"[\\[\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "[\\["), "Expected \"[\\[\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[\\[]"); MsiRecordSetStringA(hrec, 0, "[\\[]");
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 1, "Expected 1, got %d\n", sz); ok(sz == 1, "Expected 1, got %lu\n", sz);
ok(!lstrcmpA(buffer, "["), "Expected \"[\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "["), "Expected \"[\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[[]"); MsiRecordSetStringA(hrec, 0, "[[]");
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 3, "Expected 3, got %d\n", sz); ok(sz == 3, "Expected 3, got %lu\n", sz);
ok(!lstrcmpA(buffer, "[[]"), "Expected \"[]\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "[[]"), "Expected \"[]\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[\\[]]"); MsiRecordSetStringA(hrec, 0, "[\\[]]");
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 2, "Expected 2, got %d\n", sz); ok(sz == 2, "Expected 2, got %lu\n", sz);
ok(!lstrcmpA(buffer, "[]"), "Expected \"[]\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "[]"), "Expected \"[]\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[\\[a]"); MsiRecordSetStringA(hrec, 0, "[\\[a]");
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 1, "Expected 1, got %d\n", sz); ok(sz == 1, "Expected 1, got %lu\n", sz);
ok(!lstrcmpA(buffer, "["), "Expected \"[\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "["), "Expected \"[\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[\\a[]"); MsiRecordSetStringA(hrec, 0, "[\\a[]");
@ -1896,7 +1895,7 @@ static void test_formatrecord_package(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
todo_wine todo_wine
{ {
ok(sz == 1, "Expected 1, got %d\n", sz); ok(sz == 1, "Expected 1, got %lu\n", sz);
ok(!lstrcmpA(buffer, "a"), "Expected \"a\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "a"), "Expected \"a\", got \"%s\"\n", buffer);
} }
@ -1904,14 +1903,14 @@ static void test_formatrecord_package(void)
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 3, "Expected 3, got %d\n", sz); ok(sz == 3, "Expected 3, got %lu\n", sz);
ok(!lstrcmpA(buffer, "val"), "Expected \"val\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "val"), "Expected \"val\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[prop] [pro\\pblah] [prop]"); MsiRecordSetStringA(hrec, 0, "[prop] [pro\\pblah] [prop]");
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 8, "Expected 8, got %d\n", sz); ok(sz == 8, "Expected 8, got %lu\n", sz);
ok(!lstrcmpA(buffer, "val val"), "Expected \"val val\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "val val"), "Expected \"val val\", got \"%s\"\n", buffer);
MsiSetPropertyA(package, "b", "ball"); MsiSetPropertyA(package, "b", "ball");
@ -1919,35 +1918,35 @@ static void test_formatrecord_package(void)
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 1, "Expected 1, got %d\n", sz); ok(sz == 1, "Expected 1, got %lu\n", sz);
ok(!lstrcmpA(buffer, "b"), "Expected \"b\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "b"), "Expected \"b\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[\\c]"); MsiRecordSetStringA(hrec, 0, "[\\c]");
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 1, "Expected 1, got %d\n", sz); ok(sz == 1, "Expected 1, got %lu\n", sz);
ok(!lstrcmpA(buffer, "c"), "Expected \"c\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "c"), "Expected \"c\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[\\[]prop]"); MsiRecordSetStringA(hrec, 0, "[\\[]prop]");
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 6, "Expected 6, got %d\n", sz); ok(sz == 6, "Expected 6, got %lu\n", sz);
ok(!lstrcmpA(buffer, "[prop]"), "Expected \"[prop]\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "[prop]"), "Expected \"[prop]\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[\\a]prop]"); MsiRecordSetStringA(hrec, 0, "[\\a]prop]");
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 6, "Expected 6, got %d\n", sz); ok(sz == 6, "Expected 6, got %lu\n", sz);
ok(!lstrcmpA(buffer, "aprop]"), "Expected \"aprop]\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "aprop]"), "Expected \"aprop]\", got \"%s\"\n", buffer);
MsiRecordSetStringA(hrec, 0, "[\\[]Bracket Text[\\]]"); MsiRecordSetStringA(hrec, 0, "[\\[]Bracket Text[\\]]");
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 14, "size wrong: %d\n", sz); ok( sz == 14, "size wrong: %lu\n", sz);
ok( 0 == strcmp(buffer,"[Bracket Text]"), "wrong output: %s\n", buffer); ok( 0 == strcmp(buffer,"[Bracket Text]"), "wrong output: %s\n", buffer);
/* null characters */ /* null characters */
@ -1960,7 +1959,7 @@ static void test_formatrecord_package(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 9, "size wrong: %d\n", sz); ok( sz == 9, "size wrong: %lu\n", sz);
ok( 0 == strcmp(buffer,"boo "), "wrong output: %s\n", buffer); ok( 0 == strcmp(buffer,"boo "), "wrong output: %s\n", buffer);
ok(!lstrcmpA(&buffer[5], " hoo"), ok(!lstrcmpA(&buffer[5], " hoo"),
"Expected \" hoo\", got \"%s\"\n", &buffer[5]); "Expected \" hoo\", got \"%s\"\n", &buffer[5]);
@ -1974,7 +1973,7 @@ static void test_formatrecord_package(void)
sz = sizeof(buffer); sz = sizeof(buffer);
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 8, "Expected 8, got %d\n", sz); ok(sz == 8, "Expected 8, got %lu\n", sz);
ok(!lstrcmpA(buffer, "boo hoo"), "Expected \"boo hoo\", got \"%s\"\n", buffer); ok(!lstrcmpA(buffer, "boo hoo"), "Expected \"boo hoo\", got \"%s\"\n", buffer);
/* properties */ /* properties */
@ -2022,7 +2021,7 @@ static void test_formatrecord_package(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 12, "size wrong(%i)\n",sz); ok( sz == 12, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"foo baa whoa"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"foo baa whoa"), "wrong output (%s)\n",buffer);
r = MsiSetPropertyA(package,"dummya","1"); r = MsiSetPropertyA(package,"dummya","1");
@ -2042,7 +2041,7 @@ static void test_formatrecord_package(void)
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
todo_wine todo_wine
{ {
ok( sz == 9, "size wrong(%i)\n",sz); ok( sz == 9, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"1 [1] [2]"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"1 [1] [2]"), "wrong output (%s)\n",buffer);
} }
@ -2065,7 +2064,7 @@ static void test_formatrecord_package(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 10, "size wrong(%i)\n",sz); ok( sz == 10, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"\\blath b 1"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"\\blath b 1"), "wrong output (%s)\n",buffer);
r = MsiRecordSetStringA(hrec, 0, "[1] [2] [[\\3asdf]]"); r = MsiRecordSetStringA(hrec, 0, "[1] [2] [[\\3asdf]]");
@ -2081,7 +2080,7 @@ static void test_formatrecord_package(void)
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
todo_wine todo_wine
{ {
ok( sz == 11, "size wrong(%i)\n",sz); ok( sz == 11, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"boo hoo [3]"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"boo hoo [3]"), "wrong output (%s)\n",buffer);
} }
@ -2096,7 +2095,7 @@ static void test_formatrecord_package(void)
sz = sizeof buffer; sz = sizeof buffer;
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 9, "size wrong(%i)\n",sz); ok( sz == 9, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"boo hoo h"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"boo hoo h"), "wrong output (%s)\n",buffer);
/* nested properties */ /* nested properties */
@ -2107,7 +2106,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "[PropC]"); MsiRecordSetStringA(hrec, 0, "[PropC]");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 7, "size wrong(%i)\n",sz); ok( sz == 7, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"[PropB]"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"[PropB]"), "wrong output (%s)\n",buffer);
MsiSetPropertyA(package, "PropA", "surprise"); MsiSetPropertyA(package, "PropA", "surprise");
@ -2117,7 +2116,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "[PropC]"); MsiRecordSetStringA(hrec, 0, "[PropC]");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 5, "size wrong(%i)\n",sz); ok( sz == 5, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"PropB"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"PropB"), "wrong output (%s)\n",buffer);
MsiSetPropertyA(package, "PropA", "surprise"); MsiSetPropertyA(package, "PropA", "surprise");
@ -2127,7 +2126,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "[[PropC]]"); MsiRecordSetStringA(hrec, 0, "[[PropC]]");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong(%i)\n",sz); ok( sz == 0, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer);
MsiSetPropertyA(package, "PropA", "surprise"); MsiSetPropertyA(package, "PropA", "surprise");
@ -2137,7 +2136,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "[[PropC]]"); MsiRecordSetStringA(hrec, 0, "[[PropC]]");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 7, "size wrong(%i)\n",sz); ok( sz == 7, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"[PropA]"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"[PropA]"), "wrong output (%s)\n",buffer);
MsiSetPropertyA(package, "PropA", "surprise"); MsiSetPropertyA(package, "PropA", "surprise");
@ -2147,7 +2146,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "[[PropC]]"); MsiRecordSetStringA(hrec, 0, "[[PropC]]");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 5, "size wrong(%i)\n",sz); ok( sz == 5, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"PropA"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"PropA"), "wrong output (%s)\n",buffer);
MsiSetPropertyA(package, "PropA", "surprise"); MsiSetPropertyA(package, "PropA", "surprise");
@ -2157,7 +2156,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "[[[PropC]]]"); MsiRecordSetStringA(hrec, 0, "[[[PropC]]]");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 8, "size wrong(%i)\n",sz); ok( sz == 8, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"surprise"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"surprise"), "wrong output (%s)\n",buffer);
/* properties inside braces */ /* properties inside braces */
@ -2165,7 +2164,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "{abcd}"); MsiRecordSetStringA(hrec, 0, "{abcd}");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 6, "size wrong(%i)\n",sz); ok( sz == 6, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{abcd}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{abcd}"), "wrong output (%s)\n",buffer);
MsiSetPropertyA(package, "one", "mercury"); MsiSetPropertyA(package, "one", "mercury");
@ -2174,7 +2173,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "{a[one]bc[two]de[one]f}"); MsiRecordSetStringA(hrec, 0, "{a[one]bc[two]de[one]f}");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed: %d\n", r); ok( r == ERROR_SUCCESS, "format failed: %d\n", r);
ok( sz == 25, "size wrong(%i)\n",sz); ok( sz == 25, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"amercurybcvenusdemercuryf"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"amercurybcvenusdemercuryf"), "wrong output (%s)\n",buffer);
MsiSetPropertyA(package, "one", "mercury"); MsiSetPropertyA(package, "one", "mercury");
@ -2184,7 +2183,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "{a[one]bc[bad]de[two]f}"); MsiRecordSetStringA(hrec, 0, "{a[one]bc[bad]de[two]f}");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong(%i)\n",sz); ok( sz == 0, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer);
MsiSetPropertyA(package, "bad", ""); MsiSetPropertyA(package, "bad", "");
@ -2192,7 +2191,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "{[bad]}"); MsiRecordSetStringA(hrec, 0, "{[bad]}");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong(%i)\n",sz); ok( sz == 0, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer);
MsiSetPropertyA(package, "one", "mercury"); MsiSetPropertyA(package, "one", "mercury");
@ -2202,7 +2201,7 @@ static void test_formatrecord_package(void)
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
todo_wine todo_wine
{ {
ok( sz == 14, "size wrong(%i)\n",sz); ok( sz == 14, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"abc{dmercuryef"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"abc{dmercuryef"), "wrong output (%s)\n",buffer);
} }
@ -2213,7 +2212,7 @@ static void test_formatrecord_package(void)
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
todo_wine todo_wine
{ {
ok( sz == 15, "size wrong(%i)\n",sz); ok( sz == 15, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"abc{dmercuryef}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"abc{dmercuryef}"), "wrong output (%s)\n",buffer);
} }
@ -2222,7 +2221,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "{abc}{{def}hi{j[one]k}}"); MsiRecordSetStringA(hrec, 0, "{abc}{{def}hi{j[one]k}}");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 5, "size wrong(%i)\n",sz); ok( sz == 5, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,"{abc}"), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,"{abc}"), "wrong output (%s)\n",buffer);
MsiSetPropertyA(package, "one", "mercury"); MsiSetPropertyA(package, "one", "mercury");
@ -2231,7 +2230,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 0, "{{def}hi{j[one]k}}"); MsiRecordSetStringA(hrec, 0, "{{def}hi{j[one]k}}");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok( r == ERROR_SUCCESS, "format failed\n"); ok( r == ERROR_SUCCESS, "format failed\n");
ok( sz == 0, "size wrong(%i)\n",sz); ok( sz == 0, "size wrong(%lu)\n",sz);
ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer); ok( 0 == strcmp(buffer,""), "wrong output (%s)\n",buffer);
sz = sizeof(buffer); sz = sizeof(buffer);
@ -2239,7 +2238,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 1, "one"); MsiRecordSetStringA(hrec, 1, "one");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 13, "Expected 13, got %d\n",sz); ok(sz == 13, "Expected 13, got %lu\n",sz);
ok(!lstrcmpA(buffer, "one {abcdef}"), ok(!lstrcmpA(buffer, "one {abcdef}"),
"Expected \"one {abcdef}\", got \"%s\"\n", buffer); "Expected \"one {abcdef}\", got \"%s\"\n", buffer);
@ -2248,7 +2247,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 1, "one"); MsiRecordSetStringA(hrec, 1, "one");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 13, "Expected 13, got %d\n",sz); ok(sz == 13, "Expected 13, got %lu\n",sz);
ok(!lstrcmpA(buffer, "one {abcdef}"), ok(!lstrcmpA(buffer, "one {abcdef}"),
"Expected \"one {abcdef}\", got \"%s\"\n", buffer); "Expected \"one {abcdef}\", got \"%s\"\n", buffer);
@ -2257,7 +2256,7 @@ static void test_formatrecord_package(void)
MsiRecordSetStringA(hrec, 1, "one"); MsiRecordSetStringA(hrec, 1, "one");
r = MsiFormatRecordA(package, hrec, buffer, &sz); r = MsiFormatRecordA(package, hrec, buffer, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(sz == 20, "Expected 20, got %d\n",sz); ok(sz == 20, "Expected 20, got %lu\n",sz);
ok(!lstrcmpA(buffer, "one mercury {abcdef}"), ok(!lstrcmpA(buffer, "one mercury {abcdef}"),
"Expected \"one mercury {abcdef}\", got \"%s\"\n", buffer); "Expected \"one mercury {abcdef}\", got \"%s\"\n", buffer);

View file

@ -2640,7 +2640,7 @@ static char *load_resource(const char *name)
GetTempFileNameA(".", name, 0, path); GetTempFileNameA(".", name, 0, path);
file = CreateFileA(path, GENERIC_READ|GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, 0); file = CreateFileA(path, GENERIC_READ|GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, 0);
ok(file != INVALID_HANDLE_VALUE, "file creation failed, at %s, error %d\n", path, GetLastError()); ok(file != INVALID_HANDLE_VALUE, "file creation failed, at %s, error %lu\n", path, GetLastError());
res = FindResourceA(NULL, name, "TESTDLL"); res = FindResourceA(NULL, name, "TESTDLL");
ok( res != 0, "couldn't find resource\n" ); ok( res != 0, "couldn't find resource\n" );
@ -2752,7 +2752,7 @@ static void remove_restore_point(DWORD seq_number)
res = pSRRemoveRestorePoint(seq_number); res = pSRRemoveRestorePoint(seq_number);
if (res != ERROR_SUCCESS) if (res != ERROR_SUCCESS)
trace("Failed to remove the restore point : %08x\n", res); trace("Failed to remove the restore point: %#lx\n", res);
} }
static LONG delete_key( HKEY key, LPCSTR subkey, REGSAM access ) static LONG delete_key( HKEY key, LPCSTR subkey, REGSAM access )
@ -2811,29 +2811,29 @@ static void test_MsiInstallProduct(void)
delete_pf_files(); delete_pf_files();
res = RegOpenKeyExA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", 0, access, &hkey); res = RegOpenKeyExA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", 0, access, &hkey);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res); ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", res);
size = MAX_PATH; size = MAX_PATH;
type = REG_SZ; type = REG_SZ;
res = RegQueryValueExA(hkey, "Name", NULL, &type, (LPBYTE)path, &size); res = RegQueryValueExA(hkey, "Name", NULL, &type, (LPBYTE)path, &size);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res); ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", res);
ok(!lstrcmpA(path, "imaname"), "Expected imaname, got %s\n", path); ok(!lstrcmpA(path, "imaname"), "Expected imaname, got %s\n", path);
size = MAX_PATH; size = MAX_PATH;
type = REG_SZ; type = REG_SZ;
res = RegQueryValueExA(hkey, "blah", NULL, &type, (LPBYTE)path, &size); res = RegQueryValueExA(hkey, "blah", NULL, &type, (LPBYTE)path, &size);
ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %d\n", res); ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %ld\n", res);
size = sizeof(num); size = sizeof(num);
type = REG_DWORD; type = REG_DWORD;
res = RegQueryValueExA(hkey, "number", NULL, &type, (LPBYTE)&num, &size); res = RegQueryValueExA(hkey, "number", NULL, &type, (LPBYTE)&num, &size);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res); ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", res);
ok(num == 314, "Expected 314, got %d\n", num); ok(num == 314, "Expected 314, got %lu\n", num);
size = MAX_PATH; size = MAX_PATH;
type = REG_SZ; type = REG_SZ;
res = RegQueryValueExA(hkey, "OrderTestName", NULL, &type, (LPBYTE)path, &size); res = RegQueryValueExA(hkey, "OrderTestName", NULL, &type, (LPBYTE)path, &size);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res); ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", res);
ok(!lstrcmpA(path, "OrderTestValue"), "Expected OrderTestValue, got %s\n", path); ok(!lstrcmpA(path, "OrderTestValue"), "Expected OrderTestValue, got %s\n", path);
delete_key(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", access); delete_key(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", access);
@ -2845,7 +2845,7 @@ static void test_MsiInstallProduct(void)
delete_pf_files(); delete_pf_files();
res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey); res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res); ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", res);
RegDeleteKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest"); RegDeleteKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest");
create_database(msifile, up_tables, ARRAY_SIZE(up_tables)); create_database(msifile, up_tables, ARRAY_SIZE(up_tables));
@ -2857,7 +2857,7 @@ static void test_MsiInstallProduct(void)
delete_pf_files(); delete_pf_files();
res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey); res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res); ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", res);
RegDeleteKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest"); RegDeleteKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest");
create_database(msifile, up2_tables, ARRAY_SIZE(up2_tables)); create_database(msifile, up2_tables, ARRAY_SIZE(up2_tables));
@ -2869,7 +2869,7 @@ static void test_MsiInstallProduct(void)
delete_pf_files(); delete_pf_files();
res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey); res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res); ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", res);
RegDeleteKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest"); RegDeleteKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest");
create_database(msifile, up3_tables, ARRAY_SIZE(up3_tables)); create_database(msifile, up3_tables, ARRAY_SIZE(up3_tables));
@ -2881,7 +2881,7 @@ static void test_MsiInstallProduct(void)
delete_pf_files(); delete_pf_files();
res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey); res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey);
ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res); ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %ld\n", res);
RegDeleteKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest"); RegDeleteKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest");
create_database(msifile, up4_tables, ARRAY_SIZE(up4_tables)); create_database(msifile, up4_tables, ARRAY_SIZE(up4_tables));
@ -2893,7 +2893,7 @@ static void test_MsiInstallProduct(void)
delete_pf_files(); delete_pf_files();
res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey); res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey);
ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %d\n", res); ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %ld\n", res);
create_database(msifile, up4_tables, ARRAY_SIZE(up4_tables)); create_database(msifile, up4_tables, ARRAY_SIZE(up4_tables));
@ -2904,7 +2904,7 @@ static void test_MsiInstallProduct(void)
delete_pf_files(); delete_pf_files();
res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey); res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey);
ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %d\n", res); ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %ld\n", res);
create_database(msifile, up5_tables, ARRAY_SIZE(up5_tables)); create_database(msifile, up5_tables, ARRAY_SIZE(up5_tables));
@ -2915,7 +2915,7 @@ static void test_MsiInstallProduct(void)
delete_pf_files(); delete_pf_files();
res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey); res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey);
ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %d\n", res); ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %ld\n", res);
create_database(msifile, up6_tables, ARRAY_SIZE(up6_tables)); create_database(msifile, up6_tables, ARRAY_SIZE(up6_tables));
@ -2926,7 +2926,7 @@ static void test_MsiInstallProduct(void)
delete_pf_files(); delete_pf_files();
res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey); res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey);
ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %d\n", res); ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %ld\n", res);
create_database(msifile, up7_tables, ARRAY_SIZE(up7_tables)); create_database(msifile, up7_tables, ARRAY_SIZE(up7_tables));
@ -2937,7 +2937,7 @@ static void test_MsiInstallProduct(void)
delete_pf_files(); delete_pf_files();
res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey); res = RegOpenKeyA(HKEY_CURRENT_USER, "SOFTWARE\\Wine\\msitest", &hkey);
ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %d\n", res); ok(res == ERROR_FILE_NOT_FOUND, "Expected ERROR_FILE_NOT_FOUND, got %ld\n", res);
r = MsiInstallProductA(msifile, "REMOVE=ALL FULL=1"); r = MsiInstallProductA(msifile, "REMOVE=ALL FULL=1");
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
@ -3789,7 +3789,7 @@ static void generate_transform_manual(void)
STGM_WRITE | STGM_SHARE_EXCLUSIVE, 0, 0, &stm); STGM_WRITE | STGM_SHARE_EXCLUSIVE, 0, 0, &stm);
if (FAILED(r)) if (FAILED(r))
{ {
ok(0, "failed to create stream %08x\n", r); ok(0, "failed to create stream %#lx\n", r);
continue; continue;
} }
@ -3996,16 +3996,16 @@ static void set_admin_property_stream(LPCSTR file)
MultiByteToWideChar(CP_ACP, 0, file, -1, fileW, MAX_PATH); MultiByteToWideChar(CP_ACP, 0, file, -1, fileW, MAX_PATH);
hr = StgOpenStorage(fileW, NULL, mode, NULL, 0, &stg); hr = StgOpenStorage(fileW, NULL, mode, NULL, 0, &stg);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
if (!stg) if (!stg)
return; return;
hr = IStorage_CreateStream(stg, L"\x41ca\x4330\x3e71\x44b5\x4233\x45f5\x422c\x4836", hr = IStorage_CreateStream(stg, L"\x41ca\x4330\x3e71\x44b5\x4233\x45f5\x422c\x4836",
STGM_WRITE | STGM_SHARE_EXCLUSIVE, 0, 0, &stm); STGM_WRITE | STGM_SHARE_EXCLUSIVE, 0, 0, &stm);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
hr = IStream_Write(stm, L"MYPROP=2718 MyProp=42", sizeof(L"MYPROP=2718 MyProp=42"), &count); hr = IStream_Write(stm, L"MYPROP=2718 MyProp=42", sizeof(L"MYPROP=2718 MyProp=42"), &count);
ok(hr == S_OK, "Expected S_OK, got %d\n", hr); ok(hr == S_OK, "Expected S_OK, got %#lx\n", hr);
IStream_Release(stm); IStream_Release(stm);
IStorage_Release(stg); IStorage_Release(stg);
@ -4725,7 +4725,7 @@ static void test_sourcepath(void)
r = MsiInstallProductA(msifile, NULL); r = MsiInstallProductA(msifile, NULL);
ok(r == spmap[i].err, "%d: Expected %d, got %d\n", i, spmap[i].err, r); ok(r == spmap[i].err, "%d: Expected %d, got %d\n", i, spmap[i].err, r);
ok(get_pf_file_size("msitest\\augustus") == spmap[i].size, ok(get_pf_file_size("msitest\\augustus") == spmap[i].size,
"%d: Expected %d, got %d\n", i, spmap[i].size, "%u: Expected %lu, got %lu\n", i, spmap[i].size,
get_pf_file_size("msitest\\augustus")); get_pf_file_size("msitest\\augustus"));
if (r == ERROR_SUCCESS) if (r == ERROR_SUCCESS)
@ -5062,7 +5062,7 @@ static void test_shortcut(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
hr = CoInitializeEx(NULL, COINIT_MULTITHREADED); hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
ok(SUCCEEDED(hr), "CoInitialize failed 0x%08x\n", hr); ok(SUCCEEDED(hr), "CoInitialize failed %#lx\n", hr);
r = MsiInstallProductA(msifile, NULL); r = MsiInstallProductA(msifile, NULL);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
@ -5070,7 +5070,7 @@ static void test_shortcut(void)
CoUninitialize(); CoUninitialize();
hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED); hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);
ok(SUCCEEDED(hr), "CoInitialize failed 0x%08x\n", hr); ok(SUCCEEDED(hr), "CoInitialize failed %#lx\n", hr);
r = MsiInstallProductA(msifile, NULL); r = MsiInstallProductA(msifile, NULL);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
@ -5262,14 +5262,14 @@ static void process_pending_renames(HKEY hkey)
BOOL found = FALSE; BOOL found = FALSE;
ret = RegQueryValueExA(hkey, rename_ops, NULL, NULL, NULL, &size); ret = RegQueryValueExA(hkey, rename_ops, NULL, NULL, NULL, &size);
ok(!ret, "RegQueryValueExA failed %d\n", ret); ok(!ret, "RegQueryValueExA failed %ld\n", ret);
buf = malloc(size + 1); buf = malloc(size + 1);
buf2ptr = buf2 = calloc(1, size + 1); buf2ptr = buf2 = calloc(1, size + 1);
ret = RegQueryValueExA(hkey, rename_ops, NULL, NULL, (LPBYTE)buf, &size); ret = RegQueryValueExA(hkey, rename_ops, NULL, NULL, (LPBYTE)buf, &size);
buf[size] = 0; buf[size] = 0;
ok(!ret, "RegQueryValueExA failed %d\n", ret); ok(!ret, "RegQueryValueExA failed %ld\n", ret);
if (ret) return; if (ret) return;
for (src = buf; *src; src = dst + strlen(dst) + 1) for (src = buf; *src; src = dst + strlen(dst) + 1)
@ -5300,12 +5300,12 @@ static void process_pending_renames(HKEY hkey)
{ {
if (dst[0] == '\\' && dst[1] == '?' && dst[2] == '?' && dst[3] == '\\') dst += 4; if (dst[0] == '\\' && dst[1] == '?' && dst[2] == '?' && dst[3] == '\\') dst += 4;
fileret = MoveFileExA(src, dst, flags); fileret = MoveFileExA(src, dst, flags);
ok(fileret, "Failed to move file %s -> %s (%u)\n", src, dst, GetLastError()); ok(fileret, "Failed to move file %s -> %s (%lu)\n", src, dst, GetLastError());
} }
else else
{ {
fileret = DeleteFileA(src); fileret = DeleteFileA(src);
ok(fileret || broken(!fileret) /* win2k3 */, "Failed to delete file %s (%u)\n", src, GetLastError()); ok(fileret || broken(!fileret) /* win2k3 */, "Failed to delete file %s (%lu)\n", src, GetLastError());
} }
} }
@ -5327,7 +5327,7 @@ static BOOL file_matches_data(LPCSTR file, LPCSTR data)
char buf[128]; char buf[128];
handle = CreateFileA(file, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL); handle = CreateFileA(file, GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL);
ok(handle != INVALID_HANDLE_VALUE, "failed to open %s (%u)\n", file, GetLastError()); ok(handle != INVALID_HANDLE_VALUE, "failed to open %s (%lu)\n", file, GetLastError());
if (ReadFile(handle, buf, sizeof(buf), &len, NULL) && len >= data_len) if (ReadFile(handle, buf, sizeof(buf), &len, NULL) && len >= data_len)
{ {
@ -5872,25 +5872,25 @@ static void test_mixed_package(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\msitest", 0, KEY_ALL_ACCESS|KEY_WOW64_32KEY, &hkey); res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\msitest", 0, KEY_ALL_ACCESS|KEY_WOW64_32KEY, &hkey);
ok(!res, "can't open 32-bit component key, got %d\n", res); ok(!res, "can't open 32-bit component key, got %ld\n", res);
res = RegQueryValueExA(hkey, "test1", NULL, NULL, NULL, NULL); res = RegQueryValueExA(hkey, "test1", NULL, NULL, NULL, NULL);
ok(!res, "expected RegQueryValueEx to succeed, got %d\n", res); ok(!res, "expected RegQueryValueEx to succeed, got %ld\n", res);
res = RegQueryValueExA(hkey, "test2", NULL, NULL, NULL, NULL); res = RegQueryValueExA(hkey, "test2", NULL, NULL, NULL, NULL);
ok(res, "expected RegQueryValueEx to fail, got %d\n", res); ok(res, "expected RegQueryValueEx to fail, got %ld\n", res);
RegCloseKey(hkey); RegCloseKey(hkey);
res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\msitest", 0, KEY_ALL_ACCESS|KEY_WOW64_64KEY, &hkey); res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\msitest", 0, KEY_ALL_ACCESS|KEY_WOW64_64KEY, &hkey);
ok(!res, "can't open 64-bit component key, got %d\n", res); ok(!res, "can't open 64-bit component key, got %ld\n", res);
res = RegQueryValueExA(hkey, "test1", NULL, NULL, NULL, NULL); res = RegQueryValueExA(hkey, "test1", NULL, NULL, NULL, NULL);
ok(res, "expected RegQueryValueEx to fail, got %d\n", res); ok(res, "expected RegQueryValueEx to fail, got %ld\n", res);
res = RegQueryValueExA(hkey, "test2", NULL, NULL, NULL, NULL); res = RegQueryValueExA(hkey, "test2", NULL, NULL, NULL, NULL);
ok(!res, "expected RegQueryValueEx to succeed, got %d\n", res); ok(!res, "expected RegQueryValueEx to succeed, got %ld\n", res);
RegCloseKey(hkey); RegCloseKey(hkey);
res = RegOpenKeyExA(HKEY_CLASSES_ROOT, res = RegOpenKeyExA(HKEY_CLASSES_ROOT,
"CLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\\InProcServer32", "CLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\\InProcServer32",
0, KEY_ALL_ACCESS|KEY_WOW64_32KEY, &hkey); 0, KEY_ALL_ACCESS|KEY_WOW64_32KEY, &hkey);
ok(res == ERROR_SUCCESS, "can't open 32-bit CLSID key, got %d\n", res); ok(res == ERROR_SUCCESS, "can't open 32-bit CLSID key, got %ld\n", res);
if (res == ERROR_SUCCESS) { if (res == ERROR_SUCCESS) {
size = sizeof(value); size = sizeof(value);
res = RegQueryValueExA(hkey, "", NULL, NULL, (LPBYTE)value, &size); res = RegQueryValueExA(hkey, "", NULL, NULL, (LPBYTE)value, &size);
@ -5901,7 +5901,7 @@ static void test_mixed_package(void)
res = RegOpenKeyExA(HKEY_CLASSES_ROOT, res = RegOpenKeyExA(HKEY_CLASSES_ROOT,
"CLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\\InProcServer32", "CLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\\InProcServer32",
0, KEY_ALL_ACCESS|KEY_WOW64_64KEY, &hkey); 0, KEY_ALL_ACCESS|KEY_WOW64_64KEY, &hkey);
ok(res == ERROR_SUCCESS, "can't open 64-bit CLSID key, got %d\n", res); ok(res == ERROR_SUCCESS, "can't open 64-bit CLSID key, got %ld\n", res);
if (res == ERROR_SUCCESS) { if (res == ERROR_SUCCESS) {
size = sizeof(value); size = sizeof(value);
res = RegQueryValueExA(hkey, "", NULL, NULL, (LPBYTE)value, &size); res = RegQueryValueExA(hkey, "", NULL, NULL, (LPBYTE)value, &size);
@ -5935,25 +5935,25 @@ static void test_mixed_package(void)
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\msitest", 0, KEY_ALL_ACCESS|KEY_WOW64_32KEY, &hkey); res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\msitest", 0, KEY_ALL_ACCESS|KEY_WOW64_32KEY, &hkey);
ok(!res, "can't open 32-bit component key, got %d\n", res); ok(!res, "can't open 32-bit component key, got %ld\n", res);
res = RegQueryValueExA(hkey, "test1", NULL, NULL, NULL, NULL); res = RegQueryValueExA(hkey, "test1", NULL, NULL, NULL, NULL);
ok(!res, "expected RegQueryValueEx to succeed, got %d\n", res); ok(!res, "expected RegQueryValueEx to succeed, got %ld\n", res);
res = RegQueryValueExA(hkey, "test2", NULL, NULL, NULL, NULL); res = RegQueryValueExA(hkey, "test2", NULL, NULL, NULL, NULL);
ok(res, "expected RegQueryValueEx to fail, got %d\n", res); ok(res, "expected RegQueryValueEx to fail, got %ld\n", res);
RegCloseKey(hkey); RegCloseKey(hkey);
res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\msitest", 0, KEY_ALL_ACCESS|KEY_WOW64_64KEY, &hkey); res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\msitest", 0, KEY_ALL_ACCESS|KEY_WOW64_64KEY, &hkey);
ok(!res, "can't open 64-bit component key, got %d\n", res); ok(!res, "can't open 64-bit component key, got %ld\n", res);
res = RegQueryValueExA(hkey, "test1", NULL, NULL, NULL, NULL); res = RegQueryValueExA(hkey, "test1", NULL, NULL, NULL, NULL);
ok(res, "expected RegQueryValueEx to fail, got %d\n", res); ok(res, "expected RegQueryValueEx to fail, got %ld\n", res);
res = RegQueryValueExA(hkey, "test2", NULL, NULL, NULL, NULL); res = RegQueryValueExA(hkey, "test2", NULL, NULL, NULL, NULL);
ok(!res, "expected RegQueryValueEx to succeed, got %d\n", res); ok(!res, "expected RegQueryValueEx to succeed, got %ld\n", res);
RegCloseKey(hkey); RegCloseKey(hkey);
res = RegOpenKeyExA(HKEY_CLASSES_ROOT, res = RegOpenKeyExA(HKEY_CLASSES_ROOT,
"CLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\\InProcServer32", "CLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\\InProcServer32",
0, KEY_ALL_ACCESS|KEY_WOW64_32KEY, &hkey); 0, KEY_ALL_ACCESS|KEY_WOW64_32KEY, &hkey);
ok(res == ERROR_SUCCESS, "can't open 32-bit CLSID key, got %d\n", res); ok(res == ERROR_SUCCESS, "can't open 32-bit CLSID key, got %ld\n", res);
if (res == ERROR_SUCCESS) { if (res == ERROR_SUCCESS) {
size = sizeof(value); size = sizeof(value);
res = RegQueryValueExA(hkey, "", NULL, NULL, (LPBYTE)value, &size); res = RegQueryValueExA(hkey, "", NULL, NULL, (LPBYTE)value, &size);
@ -5964,7 +5964,7 @@ static void test_mixed_package(void)
res = RegOpenKeyExA(HKEY_CLASSES_ROOT, res = RegOpenKeyExA(HKEY_CLASSES_ROOT,
"CLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\\InProcServer32", "CLSID\\{8dfef911-6885-41eb-b280-8f0304728e8b}\\InProcServer32",
0, KEY_ALL_ACCESS|KEY_WOW64_64KEY, &hkey); 0, KEY_ALL_ACCESS|KEY_WOW64_64KEY, &hkey);
ok(res == ERROR_SUCCESS, "can't open 64-bit CLSID key, got %d\n", res); ok(res == ERROR_SUCCESS, "can't open 64-bit CLSID key, got %ld\n", res);
if (res == ERROR_SUCCESS) { if (res == ERROR_SUCCESS) {
size = sizeof(value); size = sizeof(value);
res = RegQueryValueExA(hkey, "", NULL, NULL, (LPBYTE)value, &size); res = RegQueryValueExA(hkey, "", NULL, NULL, (LPBYTE)value, &size);
@ -6092,15 +6092,15 @@ static void test_remove_upgrade_code(void)
res = RegOpenKeyExA( HKEY_LOCAL_MACHINE, res = RegOpenKeyExA( HKEY_LOCAL_MACHINE,
"Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UpgradeCodes\\51AAE0C44620A5E4788506E91F249BD2", "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UpgradeCodes\\51AAE0C44620A5E4788506E91F249BD2",
0, access, &hkey ); 0, access, &hkey );
ok( res == ERROR_SUCCESS, "got %d\n", res ); ok( res == ERROR_SUCCESS, "got %ld\n", res );
type = 0xdeadbeef; type = 0xdeadbeef;
buf[0] = 0x55; buf[0] = 0x55;
size = sizeof(buf); size = sizeof(buf);
res = RegQueryValueExA( hkey, "94A88FD7F6998CE40A22FB59F6B9C2BB", NULL, &type, (BYTE *)buf, &size ); res = RegQueryValueExA( hkey, "94A88FD7F6998CE40A22FB59F6B9C2BB", NULL, &type, (BYTE *)buf, &size );
ok( res == ERROR_SUCCESS, "got %d\n", res ); ok( res == ERROR_SUCCESS, "got %ld\n", res );
ok( type == REG_SZ, "got %u\n", type ); ok( type == REG_SZ, "got %lu\n", type );
ok( size == 1, "got %u\n", size ); ok( size == 1, "got %lu\n", size );
ok( !buf[0], "wrong data\n" ); ok( !buf[0], "wrong data\n" );
RegCloseKey( hkey ); RegCloseKey( hkey );
@ -6110,7 +6110,7 @@ static void test_remove_upgrade_code(void)
res = RegOpenKeyExA( HKEY_LOCAL_MACHINE, res = RegOpenKeyExA( HKEY_LOCAL_MACHINE,
"Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UpgradeCodes\\51AAE0C44620A5E4788506E91F249BD2", "Software\\Microsoft\\Windows\\CurrentVersion\\Installer\\UpgradeCodes\\51AAE0C44620A5E4788506E91F249BD2",
0, access, &hkey ); 0, access, &hkey );
ok( res == ERROR_FILE_NOT_FOUND, "got %d\n", res ); ok( res == ERROR_FILE_NOT_FOUND, "got %ld\n", res );
RemoveDirectoryA( "msitest" ); RemoveDirectoryA( "msitest" );
DeleteFileA( msifile ); DeleteFileA( msifile );
@ -6153,7 +6153,7 @@ static void check_file_matches(const char *filename, const char *text)
file = CreateFileA(filename, GENERIC_READ, 0, NULL, OPEN_EXISTING, 0, NULL); file = CreateFileA(filename, GENERIC_READ, 0, NULL, OPEN_EXISTING, 0, NULL);
ReadFile(file, buffer, sizeof(buffer), &size, NULL); ReadFile(file, buffer, sizeof(buffer), &size, NULL);
ok(size == strlen(text) && !memcmp(buffer, text, size), "got %.*s\n", size, buffer); ok(size == strlen(text) && !memcmp(buffer, text, size), "got %.*s\n", (int)size, buffer);
CloseHandle(file); CloseHandle(file);
} }

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -681,7 +681,7 @@ static void write_tables( IStorage *stg, const struct table_data *tables, UINT n
r = IStorage_CreateStream( stg, tables[i].name, STGM_WRITE|STGM_SHARE_EXCLUSIVE, 0, 0, &stm ); r = IStorage_CreateStream( stg, tables[i].name, STGM_WRITE|STGM_SHARE_EXCLUSIVE, 0, 0, &stm );
if (FAILED( r )) if (FAILED( r ))
{ {
ok( 0, "failed to create stream 0x%08x\n", r ); ok( 0, "failed to create stream %#lx\n", r );
continue; continue;
} }
@ -709,29 +709,29 @@ static void create_patch( const char *filename )
r = StgCreateDocfile( filenameW, mode, 0, &stg ); r = StgCreateDocfile( filenameW, mode, 0, &stg );
free( filenameW ); free( filenameW );
ok( r == S_OK, "failed to create storage 0x%08x\n", r ); ok( r == S_OK, "failed to create storage %#lx\n", r );
if (!stg) if (!stg)
return; return;
r = IStorage_SetClass( stg, &CLSID_MsiPatch ); r = IStorage_SetClass( stg, &CLSID_MsiPatch );
ok( r == S_OK, "failed to set storage type 0x%08x\n", r ); ok( r == S_OK, "failed to set storage type %#lx\n", r );
write_tables( stg, table_patch_data, ARRAY_SIZE( table_patch_data )); write_tables( stg, table_patch_data, ARRAY_SIZE( table_patch_data ));
r = IStorage_CreateStorage( stg, p_name7, mode, 0, 0, &stg1 ); r = IStorage_CreateStorage( stg, p_name7, mode, 0, 0, &stg1 );
ok( r == S_OK, "failed to create substorage 0x%08x\n", r ); ok( r == S_OK, "failed to create substorage %#lx\n", r );
r = IStorage_SetClass( stg1, &CLSID_MsiTransform ); r = IStorage_SetClass( stg1, &CLSID_MsiTransform );
ok( r == S_OK, "failed to set storage type 0x%08x\n", r ); ok( r == S_OK, "failed to set storage type %#lx\n", r );
write_tables( stg1, table_transform1_data, ARRAY_SIZE( table_transform1_data )); write_tables( stg1, table_transform1_data, ARRAY_SIZE( table_transform1_data ));
IStorage_Release( stg1 ); IStorage_Release( stg1 );
r = IStorage_CreateStorage( stg, p_name8, mode, 0, 0, &stg2 ); r = IStorage_CreateStorage( stg, p_name8, mode, 0, 0, &stg2 );
ok( r == S_OK, "failed to create substorage 0x%08x\n", r ); ok( r == S_OK, "failed to create substorage %#lx\n", r );
r = IStorage_SetClass( stg2, &CLSID_MsiTransform ); r = IStorage_SetClass( stg2, &CLSID_MsiTransform );
ok( r == S_OK, "failed to set storage type 0x%08x\n", r ); ok( r == S_OK, "failed to set storage type %#lx\n", r );
write_tables( stg2, table_transform2_data, ARRAY_SIZE( table_transform2_data )); write_tables( stg2, table_transform2_data, ARRAY_SIZE( table_transform2_data ));
IStorage_Release( stg2 ); IStorage_Release( stg2 );
@ -774,7 +774,7 @@ static void test_simple_patch( void )
} }
size = get_pf_file_size( "msitest\\patch.txt" ); size = get_pf_file_size( "msitest\\patch.txt" );
ok( size == 1000, "expected 1000, got %u\n", size ); ok( size == 1000, "expected 1000, got %lu\n", size );
size = sizeof(install_source); size = sizeof(install_source);
r = MsiGetProductInfoA( "{913B8D18-FBB6-4CAC-A239-C74C11E3FA74}", r = MsiGetProductInfoA( "{913B8D18-FBB6-4CAC-A239-C74C11E3FA74}",
@ -840,9 +840,9 @@ static void test_simple_patch( void )
} }
size = get_pf_file_size( "msitest\\patch.txt" ); size = get_pf_file_size( "msitest\\patch.txt" );
ok( size == 1002, "expected 1002, got %u\n", size ); ok( size == 1002, "expected 1002, got %lu\n", size );
size = get_pf_file_size( "msitest\\file.txt" ); size = get_pf_file_size( "msitest\\file.txt" );
ok( size == 1000, "expected 1000, got %u\n", size ); ok( size == 1000, "expected 1000, got %lu\n", size );
/* show that MsiOpenPackage applies registered patches */ /* show that MsiOpenPackage applies registered patches */
r = MsiOpenPackageA( path, &hpackage ); r = MsiOpenPackageA( path, &hpackage );
@ -1064,7 +1064,7 @@ static char *get_string( MSIHANDLE hdb, UINT field, const char *query)
ok( r == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %u\n", r ); ok( r == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %u\n", r );
if (r == ERROR_SUCCESS) if (r == ERROR_SUCCESS)
{ {
UINT size = MAX_PATH; DWORD size = MAX_PATH;
r = MsiRecordGetStringA( hrec, field, ret, &size ); r = MsiRecordGetStringA( hrec, field, ret, &size );
ok( r == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %u\n", r); ok( r == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %u\n", r);
MsiCloseHandle( hrec ); MsiCloseHandle( hrec );
@ -1272,7 +1272,8 @@ cleanup:
static void test_patch_registration( void ) static void test_patch_registration( void )
{ {
UINT r, size; UINT r;
DWORD size;
char buffer[MAX_PATH], patch_code[39]; char buffer[MAX_PATH], patch_code[39];
if (!pMsiApplyPatchA || !pMsiGetPatchInfoExA || !pMsiEnumPatchesExA) if (!pMsiApplyPatchA || !pMsiGetPatchInfoExA || !pMsiEnumPatchesExA)

View file

@ -410,21 +410,21 @@ static void test_MsiRecordGetString(void)
sz = MAX_PATH; sz = MAX_PATH;
r = MsiRecordGetStringA(rec, 1, NULL, &sz); r = MsiRecordGetStringA(rec, 1, NULL, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n",r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n",r);
ok(sz == 0, "Expected 0, got %d\n",sz); ok(sz == 0, "Expected 0, got %lu\n", sz);
sz = MAX_PATH; sz = MAX_PATH;
lstrcpyA(buf, "apple"); lstrcpyA(buf, "apple");
r = MsiRecordGetStringA(rec, 1, buf, &sz); r = MsiRecordGetStringA(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(sz == 0, "Expected 0, got %d\n", sz); ok(sz == 0, "Expected 0, got %lu\n", sz);
sz = MAX_PATH; sz = MAX_PATH;
lstrcpyA(buf, "apple"); lstrcpyA(buf, "apple");
r = MsiRecordGetStringA(rec, 10, buf, &sz); r = MsiRecordGetStringA(rec, 10, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(sz == 0, "Expected 0, got %d\n", sz); ok(sz == 0, "Expected 0, got %lu\n", sz);
MsiCloseHandle(rec); MsiCloseHandle(rec);
@ -437,14 +437,14 @@ static void test_MsiRecordGetString(void)
sz = MAX_PATH; sz = MAX_PATH;
r = MsiRecordGetStringA(rec, 1, NULL, &sz); r = MsiRecordGetStringA(rec, 1, NULL, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n",r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n",r);
ok(sz == 1, "Expected 1, got %d\n",sz); ok(sz == 1, "Expected 1, got %lu\n",sz);
sz = MAX_PATH; sz = MAX_PATH;
lstrcpyA(buf, "apple"); lstrcpyA(buf, "apple");
r = MsiRecordGetStringA(rec, 1, buf, &sz); r = MsiRecordGetStringA(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, "5"), "Expected \"5\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, "5"), "Expected \"5\", got \"%s\"\n", buf);
ok(sz == 1, "Expected 1, got %d\n", sz); ok(sz == 1, "Expected 1, got %lu\n", sz);
r = MsiRecordSetInteger(rec, 1, -5); r = MsiRecordSetInteger(rec, 1, -5);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
@ -454,7 +454,7 @@ static void test_MsiRecordGetString(void)
r = MsiRecordGetStringA(rec, 1, buf, &sz); r = MsiRecordGetStringA(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, "-5"), "Expected \"-5\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, "-5"), "Expected \"-5\", got \"%s\"\n", buf);
ok(sz == 2, "Expected 2, got %d\n", sz); ok(sz == 2, "Expected 2, got %lu\n", sz);
MsiCloseHandle(rec); MsiCloseHandle(rec);
} }
@ -508,7 +508,7 @@ static void test_fieldzero(void)
r = MsiRecordGetStringA(rec, 0, buf, &sz); r = MsiRecordGetStringA(rec, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(sz == 0, "Expected 0, got %d\n", sz); ok(sz == 0, "Expected 0, got %lu\n", sz);
r = MsiRecordIsNull(rec, 0); r = MsiRecordIsNull(rec, 0);
ok(r == TRUE, "Expected TRUE, got %d\n", r); ok(r == TRUE, "Expected TRUE, got %d\n", r);
@ -527,7 +527,7 @@ static void test_fieldzero(void)
r = MsiRecordGetStringA(rec, 0, buf, &sz); r = MsiRecordGetStringA(rec, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(sz == 0, "Expected 0, got %d\n", sz); ok(sz == 0, "Expected 0, got %lu\n", sz);
r = MsiRecordIsNull(rec, 0); r = MsiRecordIsNull(rec, 0);
ok(r == TRUE, "Expected TRUE, got %d\n", r); ok(r == TRUE, "Expected TRUE, got %d\n", r);
@ -546,7 +546,7 @@ static void test_fieldzero(void)
r = MsiRecordGetStringA(rec, 0, buf, &sz); r = MsiRecordGetStringA(rec, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, ""), "Expected \"\", got \"%s\"\n", buf);
ok(sz == 0, "Expected 0, got %d\n", sz); ok(sz == 0, "Expected 0, got %lu\n", sz);
r = MsiRecordIsNull(rec, 0); r = MsiRecordIsNull(rec, 0);
ok(r == TRUE, "Expected TRUE, got %d\n", r); ok(r == TRUE, "Expected TRUE, got %d\n", r);
@ -556,7 +556,7 @@ static void test_fieldzero(void)
r = MsiRecordGetStringA(rec, 1, buf, &sz); r = MsiRecordGetStringA(rec, 1, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, "bologna"), "Expected \"bologna\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, "bologna"), "Expected \"bologna\", got \"%s\"\n", buf);
ok(sz == 7, "Expected 7, got %d\n", sz); ok(sz == 7, "Expected 7, got %lu\n", sz);
MsiCloseHandle(rec); MsiCloseHandle(rec);
@ -597,7 +597,7 @@ static void test_fieldzero(void)
r = MsiRecordGetStringA(rec, 0, buf, &sz); r = MsiRecordGetStringA(rec, 0, buf, &sz);
ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r); ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", r);
ok(!lstrcmpA(buf, "drone"), "Expected \"drone\", got \"%s\"\n", buf); ok(!lstrcmpA(buf, "drone"), "Expected \"drone\", got \"%s\"\n", buf);
ok(sz == 5, "Expected 5, got %d\n", sz); ok(sz == 5, "Expected 5, got %lu\n", sz);
r = MsiRecordIsNull(rec, 0); r = MsiRecordIsNull(rec, 0);
ok(r == FALSE, "Expected FALSE, got %d\n", r); ok(r == FALSE, "Expected FALSE, got %d\n", r);

File diff suppressed because it is too large Load diff

View file

@ -431,7 +431,7 @@ static void test_summary_binary(void)
"Expected empty string or \"7\", got \"%s\"\n", sval); "Expected empty string or \"7\", got \"%s\"\n", sval);
todo_wine { todo_wine {
ok(type == VT_LPSTR, "Expected VT_LPSTR, got %d\n", type); ok(type == VT_LPSTR, "Expected VT_LPSTR, got %d\n", type);
ok(sz == 0 || sz == 1, "Expected 0 or 1, got %d\n", sz); ok(sz == 0 || sz == 1, "Expected 0 or 1, got %lu\n", sz);
} }
ival = -1; ival = -1;