summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2005-02-24 17:00:24 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 10:55:46 -0500
commitc3a5d90db43e6340e974f879f0c3b9c361bf3bb9 (patch)
tree9feae6b1944c6d62dbe1122386530ccdfc592d66
parent8d06233d1115f56e586aa49a7871fbeb8b0ff76d (diff)
downloadsamba-c3a5d90db43e6340e974f879f0c3b9c361bf3bb9.tar.gz
samba-c3a5d90db43e6340e974f879f0c3b9c361bf3bb9.tar.bz2
samba-c3a5d90db43e6340e974f879f0c3b9c361bf3bb9.zip
r5541: Fix crash bug in the client-spoolss enumdataex-call.
With Windows2003 it's perfectly legal to receive no data when querying a value-less subkey. Found while migrating printer settings. Guenther (This used to be commit 3e04def03377b2eae2987c87b18ccadf5b48a6fe)
-rw-r--r--source3/registry/reg_objects.c2
-rw-r--r--source3/utils/net_rpc_printer.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/source3/registry/reg_objects.c b/source3/registry/reg_objects.c
index 16fb7dd18d..c8dc633087 100644
--- a/source3/registry/reg_objects.c
+++ b/source3/registry/reg_objects.c
@@ -113,7 +113,7 @@ void regsubkey_ctr_destroy( REGSUBKEY_CTR *ctr )
void regval_ctr_init( REGVAL_CTR *ctr )
{
- if ( !ctr->ctx )
+ if ( ctr && !ctr->ctx )
ctr->ctx = talloc_init("regval_ctr_init for ctr %p", ctr);
}
diff --git a/source3/utils/net_rpc_printer.c b/source3/utils/net_rpc_printer.c
index 456a29287f..00b038dd8b 100644
--- a/source3/utils/net_rpc_printer.c
+++ b/source3/utils/net_rpc_printer.c
@@ -980,7 +980,7 @@ net_spoolss_enumprinterdataex(struct cli_state *cli, TALLOC_CTX *mem_ctx,
/* enumprinterdataex call */
result = cli_spoolss_enumprinterdataex(
- cli, mem_ctx, 0, &needed, hnd, keyname, NULL);
+ cli, mem_ctx, 0, &needed, hnd, keyname, ctr);
if (W_ERROR_V(result) == W_ERROR_V(WERR_MORE_DATA))
result = cli_spoolss_enumprinterdataex(