On Sun, 2017-06-25 at 21:13 -0500, Zebediah Figura wrote:
> @@ -822,6 +823,8 @@ static UINT package_from_db(MSIHANDLE hdb, MSIHANDLE *handle)
> CHAR szPackage[12];
> MSIHANDLE hPackage;
>
> + CoInitialize(NULL);
> +
> sprintf(szPackage, "#%u", hdb);
> res = MsiOpenPackageA(szPackage, &hPackage);
> if (res != ERROR_SUCCESS)
> @@ -837,22 +840,39 @@ static UINT package_from_db(MSIHANDLE hdb, MSIHANDLE *handle)
> return res;
> }
>
> + CoUninitialize();
> +
Why do you need this?
> -static void create_test_file(const CHAR *name)
> +static void create_file_data(LPCSTR name, LPCSTR data, DWORD size)
> {
> HANDLE file;
> DWORD written;
>
> file = CreateFileA(name, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, 0, NULL);
> ok(file != INVALID_HANDLE_VALUE, "Failure to open file %s\n", name);
> - WriteFile(file, name, strlen(name), &written, NULL);
> + if (file == INVALID_HANDLE_VALUE)
> + return;
> +
> + WriteFile(file, data, strlen(data), &written, NULL);
> WriteFile(file, "\n", strlen("\n"), &written, NULL);
> +
> + if (size)
> + {
> + SetFilePointer(file, size, NULL, FILE_BEGIN);
> + SetEndOfFile(file);
> + }
> +
> CloseHandle(file);
> }
You're not using this in this patch set.