Merge pull request #5609 from akallabeth/printer_default_backend

Fix #5606: Fall back to loading default printer backend.
This commit is contained in:
Martin Fleisz 2019-09-23 09:04:23 +02:00 committed by GitHub
commit c8e371d866
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 19 additions and 4 deletions

View File

@ -971,10 +971,10 @@ FREERDP_API DeviceServiceEntry
int i;
char* name;
char* driver_name;
BOOL default_backend = TRUE;
RDPDR_PRINTER* device = NULL;
rdpPrinterDriver* driver = NULL;
UINT error = CHANNEL_RC_OK;
size_t pos;
UINT error = CHANNEL_RC_OK;
if (!pEntryPoints || !pEntryPoints->device)
return ERROR_INVALID_PARAMETER;
@ -996,10 +996,24 @@ FREERDP_API DeviceServiceEntry
const char* backend = sep + 1;
*sep = '\0';
driver = printer_load_backend(backend);
default_backend = FALSE;
}
}
else
driver = printer_load_backend("");
if (!driver && default_backend)
{
const char* backend =
#if defined(WITH_CUPS)
"cups"
#elif defined(_WIN32)
"win"
#else
""
#endif
;
driver = printer_load_backend(backend);
}
if (!driver)
{

View File

@ -36,6 +36,7 @@
#cmakedefine WITH_SSE2
#cmakedefine WITH_NEON
#cmakedefine WITH_IPP
#cmakedefine WITH_CUPS
#cmakedefine WITH_NATIVE_SSPI
#cmakedefine WITH_JPEG
#cmakedefine WITH_WIN8