From b86a7644d99b23a4e3bcb197f793963ad6638d33 Mon Sep 17 00:00:00 2001 From: Detlef Riekenberg Date: Mon, 15 Jan 2007 05:38:28 +0100 Subject: [PATCH] winspool: More error checks for XcvDataW. --- dlls/winspool.drv/info.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/dlls/winspool.drv/info.c b/dlls/winspool.drv/info.c index f3a51d879aa..3eb382fce13 100644 --- a/dlls/winspool.drv/info.c +++ b/dlls/winspool.drv/info.c @@ -6684,6 +6684,18 @@ BOOL WINAPI XcvDataW( HANDLE hXcv, LPCWSTR pszDataName, PBYTE pInputData, return FALSE; } + if (!pcbOutputNeeded) { + SetLastError(ERROR_INVALID_PARAMETER); + return FALSE; + } + + if (!pszDataName || !pdwStatus || (!pOutputData && (cbOutputData > 0))) { + SetLastError(RPC_X_NULL_REF_POINTER); + return FALSE; + } + + *pcbOutputNeeded = 0; + *pdwStatus = printer->pm->monitor->pfnXcvDataPort(printer->hXcv, pszDataName, pInputData, cbInputData, pOutputData, cbOutputData, pcbOutputNeeded); -- 2.11.4.GIT