diff options
author | Jeremy Allison <jra@samba.org> | 2000-09-06 01:55:36 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2000-09-06 01:55:36 +0000 |
commit | c15b7e41e170ced4e4de2e08f6fba860f51e66ac (patch) | |
tree | 053306e35d427d87032ee77f8ac75b2beec5adae | |
parent | 2b1f66eb82f05fe0b85ac5b4916e32847b8de675 (diff) | |
download | samba-c15b7e41e170ced4e4de2e08f6fba860f51e66ac.tar.gz samba-c15b7e41e170ced4e4de2e08f6fba860f51e66ac.tar.xz samba-c15b7e41e170ced4e4de2e08f6fba860f51e66ac.zip |
Fix from John Reilly for double free of printer struct.
Jeremy.
-rw-r--r-- | source/rpc_server/srv_spoolss_nt.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/source/rpc_server/srv_spoolss_nt.c b/source/rpc_server/srv_spoolss_nt.c index a31858a3e06..d73fc649dd1 100644 --- a/source/rpc_server/srv_spoolss_nt.c +++ b/source/rpc_server/srv_spoolss_nt.c @@ -3165,7 +3165,6 @@ static BOOL add_printer_hook(NT_PRINTER_INFO_LEVEL *printer) if ( ret != 0 ) { unlink(tmp_file); - free_a_printer(&printer,2); return False; } @@ -4296,9 +4295,11 @@ static uint32 spoolss_addprinterex_level_2( const UNISTR2 *uni_srv_name, convert_printer_info(info, printer, 2); if (*lp_addprinter_cmd() ) - if ( !add_printer_hook(printer) ) + if ( !add_printer_hook(printer) ) { + free_a_printer(&printer,2); return ERROR_ACCESS_DENIED; - + } + slprintf(name, sizeof(name)-1, "\\\\%s\\%s", global_myname, printer->info_2->sharename); |