summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/rpc_parse/parse_spoolss.c16
1 files changed, 9 insertions, 7 deletions
diff --git a/source3/rpc_parse/parse_spoolss.c b/source3/rpc_parse/parse_spoolss.c
index fb6ce219e0..e3d9f896f5 100644
--- a/source3/rpc_parse/parse_spoolss.c
+++ b/source3/rpc_parse/parse_spoolss.c
@@ -4340,13 +4340,15 @@ BOOL spool_io_printer_driver_info_level_6(char *desc, SPOOL_PRINTER_DRIVER_INFO_
if(!prs_uint32("version", ps, depth, &il->version))
return False;
-#if 0
- /*
- * Older build versions of W2K seem to need this. JRA.
- */
- if(!prs_uint32("dummy4", ps, depth, &il->dummy4))
- return False;
-#endif
+ if (il->version != 0) {
+ /*
+ * If version != 0 then there are an extra 4 bytes.
+ * JohnR and I have verified this at Roseville... JRA.
+ */
+ if(!prs_uint32("dummy4", ps, depth, &il->dummy4))
+ return False;
+ }
+
if(!prs_uint32("name_ptr", ps, depth, &il->name_ptr))
return False;
if(!prs_uint32("environment_ptr", ps, depth, &il->environment_ptr))