s3-spoolss: Use the correct value for the data length.
authorAndreas Schneider <asn@samba.org>
Thu, 5 Aug 2010 09:36:37 +0000 (11:36 +0200)
committerAndreas Schneider <asn@samba.org>
Thu, 5 Aug 2010 10:08:40 +0000 (12:08 +0200)
source3/rpc_server/srv_spoolss_util.c

index ab6be2f69d02c9345a071b70111bdc3a215408d4..076e2da5032718cf7980f11a2614458df3dd7961 100644 (file)
@@ -499,7 +499,7 @@ static WERROR winreg_printer_enumvalues(TALLOC_CTX *mem_ctx,
                val.value_name_len = strlen_m_term(val.value_name) * 2;
 
                val.type = type;
-               val.data_length = data_size;
+               val.data_length = length;
                val.data = NULL;
                if (val.data_length) {
                        val.data = talloc(enum_values, DATA_BLOB);
@@ -507,7 +507,7 @@ static WERROR winreg_printer_enumvalues(TALLOC_CTX *mem_ctx,
                                result = WERR_NOMEM;
                                goto error;
                        }
-                       *val.data = data_blob_talloc(enum_values, data, data_size);
+                       *val.data = data_blob_talloc(val.data, data, val.data_length);
                }
 
                enum_values[i] = val;