summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2010-02-18 02:03:53 +0100
committerKarolin Seeger <kseeger@samba.org>2011-01-13 17:58:47 +0100
commit6022a74ed3bc06af8b1564af4c9d1158ff2191f8 (patch)
tree50c931be1bb6b5caa11d64ed50a06f4f0d124167
parent3fc63a6ce53e3fce0f1df6f20365b099067b1867 (diff)
downloadsamba-6022a74ed3bc06af8b1564af4c9d1158ff2191f8.tar.gz
s3-spoolss: in spoolss_EnumPrinters r->in.server is a *unique* pointer!
Guenther (cherry picked from commit 8ce66fba03f782c0b9948a9835bb488cfa74acf9) (cherry picked from commit cb6fcb9b16b36fcdc68bef382dbd7ecf89521d4e) (cherry picked from commit bd76c22f4c7ab39b79f5cf381d39bff1b974363f)
-rw-r--r--source3/rpc_server/srv_spoolss_nt.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/source3/rpc_server/srv_spoolss_nt.c b/source3/rpc_server/srv_spoolss_nt.c
index b1343861567..2dac5f6c4ab 100644
--- a/source3/rpc_server/srv_spoolss_nt.c
+++ b/source3/rpc_server/srv_spoolss_nt.c
@@ -4460,7 +4460,7 @@ static WERROR enumprinters_level5(TALLOC_CTX *mem_ctx,
WERROR _spoolss_EnumPrinters(pipes_struct *p,
struct spoolss_EnumPrinters *r)
{
- const char *name;
+ const char *name = NULL;
WERROR result;
/* that's an [in out] buffer */
@@ -4488,8 +4488,10 @@ WERROR _spoolss_EnumPrinters(pipes_struct *p,
* Level 5: same as Level 2
*/
- name = talloc_strdup_upper(p->mem_ctx, r->in.server);
- W_ERROR_HAVE_NO_MEMORY(name);
+ if (name) {
+ name = talloc_strdup_upper(p->mem_ctx, r->in.server);
+ W_ERROR_HAVE_NO_MEMORY(name);
+ }
switch (r->in.level) {
case 0: