From: Piotr Caban piotr@codeweavers.com
--- dlls/localspl/localmon.c | 2 +- dlls/localspl/tests/localmon.c | 13 +++++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/dlls/localspl/localmon.c b/dlls/localspl/localmon.c index a982d359058..43e6197fa47 100644 --- a/dlls/localspl/localmon.c +++ b/dlls/localspl/localmon.c @@ -509,7 +509,7 @@ static BOOL WINAPI localmon_StartDocPort(HANDLE hport, WCHAR *printer_name,
if (!doc_info || !doc_info->pOutputFile) { - FIXME("set error\n"); + SetLastError(ERROR_INVALID_PARAMETER); return FALSE; }
diff --git a/dlls/localspl/tests/localmon.c b/dlls/localspl/tests/localmon.c index edc0b1f7cbb..931de81a503 100644 --- a/dlls/localspl/tests/localmon.c +++ b/dlls/localspl/tests/localmon.c @@ -914,9 +914,18 @@ static void test_file_port(void) ok(!res, "WritePort succeeded\n"); ok(GetLastError() == ERROR_INVALID_HANDLE, "GetLastError() = %lu\n", GetLastError());
- doc_info.pDocName = (WCHAR *)L"not used"; + SetLastError(0xdeadbeef); + res = pStartDocPort(hport, printer_name, 1, 1, NULL); + ok(!res, "StartDocPort succeeded\n"); + ok(GetLastError() == ERROR_INVALID_PARAMETER, "GetLastError() = %lu\n", GetLastError()); + + memset(&doc_info, 0, sizeof(doc_info)); + SetLastError(0xdeadbeef); + res = pStartDocPort(hport, printer_name, 1, 1, (BYTE *)&doc_info); + ok(!res, "StartDocPort succeeded\n"); + ok(GetLastError() == ERROR_INVALID_PARAMETER, "GetLastError() = %lu\n", GetLastError()); + doc_info.pOutputFile = tempfileW; - doc_info.pDatatype = (WCHAR *)L"not used"; res = pStartDocPort(hport, printer_name, 1, 1, (BYTE *)&doc_info); ok(res, "StartDocPort failed (%lu)\n", GetLastError());