summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/rpcclient/cmd_spoolss.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/source3/rpcclient/cmd_spoolss.c b/source3/rpcclient/cmd_spoolss.c
index 50f1209c45..f9d7b6560b 100644
--- a/source3/rpcclient/cmd_spoolss.c
+++ b/source3/rpcclient/cmd_spoolss.c
@@ -1945,6 +1945,8 @@ static WERROR cmd_spoolss_deletedriver(struct rpc_pipe_client *cli,
/* delete the driver for all architectures */
for (i=0; archi_table[i].long_archi; i++) {
+ result = WERR_OK;
+
/* make the call to remove the driver */
status = rpccli_spoolss_DeletePrinterDriver(cli, mem_ctx,
cli->srv_name_slash,
@@ -1952,7 +1954,9 @@ static WERROR cmd_spoolss_deletedriver(struct rpc_pipe_client *cli,
argv[1],
&result);
if (!NT_STATUS_IS_OK(status)) {
- return result;
+ if (W_ERROR_IS_OK(result)) {
+ result = ntstatus_to_werror(status);
+ }
}
if ( !W_ERROR_IS_OK(result) ) {
if ( !W_ERROR_EQUAL(result, WERR_UNKNOWN_PRINTER_DRIVER) ) {