Module: wine Branch: master Commit: 06aac5a4f790e5c3954332a963f99c1c9db26d1b URL: https://gitlab.winehq.org/wine/wine/-/commit/06aac5a4f790e5c3954332a963f99c1...
Author: Piotr Caban piotr@codeweavers.com Date: Wed Nov 23 15:21:34 2022 +0100
localspl: Add EndDocPrinter implementation.
---
dlls/localspl/provider.c | 26 +++++++++++++++++++++++++- 1 file changed, 25 insertions(+), 1 deletion(-)
diff --git a/dlls/localspl/provider.c b/dlls/localspl/provider.c index d26c710fd6e..fcddd2a7018 100644 --- a/dlls/localspl/provider.c +++ b/dlls/localspl/provider.c @@ -3322,6 +3322,30 @@ static BOOL WINAPI fpScheduleJob(HANDLE hprinter, DWORD job_id) return ret; }
+static BOOL WINAPI fpEndDocPrinter(HANDLE hprinter) +{ + printer_t *printer = (printer_t *)hprinter; + BOOL ret; + + TRACE("%p\n", hprinter); + + if (!printer || !printer->info) + { + SetLastError(ERROR_INVALID_HANDLE); + return FALSE; + } + + if (!printer->doc) + { + SetLastError(ERROR_SPL_NO_STARTDOC); + return FALSE; + } + + ret = fpScheduleJob(hprinter, printer->doc->id); + printer->doc = NULL; + return ret; +} + static const PRINTPROVIDOR backend = { fpOpenPrinter, fpSetJob, @@ -3348,7 +3372,7 @@ static const PRINTPROVIDOR backend = { NULL, /* fpEndPagePrinter */ NULL, /* fpAbortPrinter */ NULL, /* fpReadPrinter */ - NULL, /* fpEndDocPrinter */ + fpEndDocPrinter, fpAddJob, fpScheduleJob, NULL, /* fpGetPrinterData */