From 5bef45201aa0ff591b3efb3441f37c622878ec61 Mon Sep 17 00:00:00 2001 From: Jeremy White Date: Mon, 2 Feb 2009 16:12:55 -0600 Subject: [PATCH] sane.ds: Pass MSG_QUERYSUPPORT requests to the capability driver. --- dlls/sane.ds/ds_ctrl.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/dlls/sane.ds/ds_ctrl.c b/dlls/sane.ds/ds_ctrl.c index dbd3f3eded7..2c8d3126aca 100644 --- a/dlls/sane.ds/ds_ctrl.c +++ b/dlls/sane.ds/ds_ctrl.c @@ -101,9 +101,24 @@ TW_UINT16 SANE_CapabilityGetDefault (pTW_IDENTITY pOrigin, TW_MEMREF pData) TW_UINT16 SANE_CapabilityQuerySupport (pTW_IDENTITY pOrigin, TW_MEMREF pData) { - FIXME ("stub!\n"); + TW_UINT16 twRC = TWRC_SUCCESS, twCC = TWCC_SUCCESS; + pTW_CAPABILITY pCapability = (pTW_CAPABILITY) pData; - return TWRC_FAILURE; + TRACE("DG_CONTROL/DAT_CAPABILITY/MSG_QUERYSUPPORT\n"); + + if (activeDS.currentState < 4 || activeDS.currentState > 7) + { + twRC = TWRC_FAILURE; + activeDS.twCC = TWCC_SEQERROR; + } + else + { + twCC = SANE_SaneCapability (pCapability, MSG_QUERYSUPPORT); + twRC = (twCC == TWCC_SUCCESS)?TWRC_SUCCESS:TWRC_FAILURE; + activeDS.twCC = twCC; + } + + return twRC; } /* DG_CONTROL/DAT_CAPABILITY/MSG_RESET */