Module: wine Branch: master Commit: 5c58e4488f01522bb2c6b0184a7d8b8cd4fc2572 URL: https://gitlab.winehq.org/wine/wine/-/commit/5c58e4488f01522bb2c6b0184a7d8b8...
Author: Piotr Caban piotr@codeweavers.com Date: Thu Dec 1 19:29:50 2022 +0100
localspl: Add ReadPrinter implementation.
---
dlls/localspl/provider.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-)
diff --git a/dlls/localspl/provider.c b/dlls/localspl/provider.c index 4cb30afd076..f3881ba7269 100644 --- a/dlls/localspl/provider.c +++ b/dlls/localspl/provider.c @@ -3476,6 +3476,21 @@ static BOOL WINAPI fpScheduleJob(HANDLE hprinter, DWORD job_id) return ret; }
+static BOOL WINAPI fpReadPrinter(HANDLE hprinter, void *buf, DWORD size, DWORD *bytes_read) +{ + job_t *job = (job_t *)hprinter; + + TRACE("%p %p %lu %p\n", hprinter, buf, size, bytes_read); + + if (!job || (job->header.type != HANDLE_JOB)) + { + SetLastError(ERROR_INVALID_HANDLE); + return FALSE; + } + + return ReadFile(job->hf, buf, size, bytes_read, NULL); +} + static BOOL WINAPI fpEndDocPrinter(HANDLE hprinter) { printer_t *printer = (printer_t *)hprinter; @@ -3590,7 +3605,7 @@ static const PRINTPROVIDOR backend = { fpWritePrinter, NULL, /* fpEndPagePrinter */ NULL, /* fpAbortPrinter */ - NULL, /* fpReadPrinter */ + fpReadPrinter, fpEndDocPrinter, fpAddJob, fpScheduleJob,