diff options
author | Tim Potter <tpot@samba.org> | 2002-01-03 02:48:23 +0000 |
---|---|---|
committer | Tim Potter <tpot@samba.org> | 2002-01-03 02:48:23 +0000 |
commit | d1564fbf1f4950c12516470d4566efeca3ad79e5 (patch) | |
tree | 038f2dd9316bfad419d9d1c5cce059894bb043ac /source/rpcclient/cmd_spoolss.c | |
parent | fe1fb6589a0a4b4cff7a0ee0267f6e09e10e2a85 (diff) | |
download | samba-d1564fbf1f4950c12516470d4566efeca3ad79e5.tar.gz samba-d1564fbf1f4950c12516470d4566efeca3ad79e5.tar.xz samba-d1564fbf1f4950c12516470d4566efeca3ad79e5.zip |
Fixed crash bug in display_print_info_1()
Diffstat (limited to 'source/rpcclient/cmd_spoolss.c')
-rw-r--r-- | source/rpcclient/cmd_spoolss.c | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/source/rpcclient/cmd_spoolss.c b/source/rpcclient/cmd_spoolss.c index f36669a7773..74601563f2e 100644 --- a/source/rpcclient/cmd_spoolss.c +++ b/source/rpcclient/cmd_spoolss.c @@ -184,9 +184,19 @@ static void display_print_info_1(PRINTER_INFO_1 *i1) fstring name; fstring comm; - rpcstr_pull(desc, i1->description.buffer, sizeof(desc), 0, STR_TERMINATE); - rpcstr_pull(name, i1->name.buffer, sizeof(name), 0, STR_TERMINATE); - rpcstr_pull(comm, i1->comment.buffer, sizeof(comm), 0, STR_TERMINATE); + desc[0] = name[0] = comm[0] = 0; + + if (i1->description.buffer) + rpcstr_pull(desc, i1->description.buffer, sizeof(desc), 0, + STR_TERMINATE); + + if (i1->name.buffer) + rpcstr_pull(name, i1->name.buffer, sizeof(name), 0, + STR_TERMINATE); + + if (i1->comment.buffer) + rpcstr_pull(comm, i1->comment.buffer, sizeof(comm), 0, + STR_TERMINATE); printf("\tflags:[0x%x]\n", i1->flags); printf("\tname:[%s]\n", name); |