From 1c8c1c03a093ee76d5bfc56dac35a1d99bdecc18 Mon Sep 17 00:00:00 2001 From: Gerald Carter Date: Mon, 10 Jul 2000 19:57:30 +0000 Subject: spoolenum commend (when compiled with the new prs_unistr()) now works. :-) jerry (This used to be commit 588aadb29fbb7cc0e81ac19f95e97101a64dbd8e) --- source3/rpc_client/msrpc_spoolss.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) (limited to 'source3/rpc_client/msrpc_spoolss.c') diff --git a/source3/rpc_client/msrpc_spoolss.c b/source3/rpc_client/msrpc_spoolss.c index 9ff88ed23c..ea3d482837 100644 --- a/source3/rpc_client/msrpc_spoolss.c +++ b/source3/rpc_client/msrpc_spoolss.c @@ -35,18 +35,20 @@ extern FILE* out_hnd; extern struct user_creds *usr_creds; +/******************************************************************** +initialize a spoolss NEW_BUFFER. + + ** WARNING ** Calling this function on an existing buffer + (which already hgolds data in the buffer->prs.data_p) + will result in memory leakage +********************************************************************/ static void init_buffer(NEW_BUFFER *buffer, uint32 size) { - int new_size = 0; - buffer->ptr = (size!=0)? 1:0; buffer->size=size; buffer->string_at_end=size; - prs_init(&(buffer->prs), MAX_PDU_FRAG_LEN, 4, MARSHALL); - new_size = MAX(size,buffer->prs.buffer_size) - MIN(size,buffer->prs.buffer_size); - prs_grow(&(buffer->prs), new_size); - buffer->prs.io=MARSHALL; - buffer->prs.data_offset=0; + prs_init(&(buffer->prs), size, 4, MARSHALL); + buffer->struct_start = prs_offset(&buffer->prs); } static void decode_printer_info_0(NEW_BUFFER *buffer, uint32 returned, PRINTER_INFO_0 **info) -- cgit