From 71f018cba5191d99fbda8d3b9a25ccd6e422a8c9 Mon Sep 17 00:00:00 2001 From: Jeremy White Date: Thu, 28 Jan 2016 10:30:55 -0600 Subject: [PATCH] winspool.drv: If the call to cupsPrintFile fails, print the cups error message. Signed-off-by: Jeremy White Signed-off-by: Huw Davies Signed-off-by: Alexandre Julliard --- dlls/winspool.drv/info.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/dlls/winspool.drv/info.c b/dlls/winspool.drv/info.c index cebf6f72a6d..3ba94cdf13a 100644 --- a/dlls/winspool.drv/info.c +++ b/dlls/winspool.drv/info.c @@ -781,13 +781,15 @@ static void *cupshandle; DO_FUNC(cupsPrintFile) #define CUPS_OPT_FUNCS \ DO_FUNC(cupsGetNamedDest); \ - DO_FUNC(cupsGetPPD3) + DO_FUNC(cupsGetPPD3); \ + DO_FUNC(cupsLastErrorString) #define DO_FUNC(f) static typeof(f) *p##f CUPS_FUNCS; #undef DO_FUNC static cups_dest_t * (*pcupsGetNamedDest)(http_t *, const char *, const char *); static http_status_t (*pcupsGetPPD3)(http_t *, const char *, time_t *, char *, size_t); +static const char * (*pcupsLastErrorString)(void); static http_status_t cupsGetPPD3_wrapper( http_t *http, const char *name, time_t *modtime, char *buffer, @@ -8237,6 +8239,8 @@ static BOOL schedule_cups(LPCWSTR printer_name, LPCWSTR filename, LPCWSTR docume TRACE( "\t%d: %s = %s\n", i, options[i].name, options[i].value ); ret = pcupsPrintFile( queue, unixname, unix_doc_title, num_options, options ); + if (ret == 0 && pcupsLastErrorString) + WARN("cupsPrintFile failed with error %s\n", debugstr_a(pcupsLastErrorString())); pcupsFreeOptions( num_options, options );