summaryrefslogtreecommitdiff
path: root/source3/printing/nt_printing.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/printing/nt_printing.c')
-rw-r--r--source3/printing/nt_printing.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/source3/printing/nt_printing.c b/source3/printing/nt_printing.c
index e37238c2ce..00d1eaacd3 100644
--- a/source3/printing/nt_printing.c
+++ b/source3/printing/nt_printing.c
@@ -2830,6 +2830,7 @@ static int unpack_values(NT_PRINTER_DATA *printer_data, char *buf, int buflen)
regval_ctr_addvalue( &printer_data->keys[key_index].values, valuename, type, data_p, size );
+ SAFE_FREE(data_p); /* 'B' option to tdb_unpack does a malloc() */
DEBUG(8,("specific: [%s:%s], len: %d\n", keyname, valuename, size));
}
@@ -4382,9 +4383,8 @@ BOOL nt_printing_getsec(TALLOC_CTX *ctx, const char *printername, SEC_DESC_BUF *
fstring key;
char *temp;
- if ((temp = strchr(printername + 2, '\\'))) {
+ if (strlen(printername) > 2 && (temp = strchr(printername + 2, '\\')))
printername = temp + 1;
- }
/* Fetch security descriptor from tdb */