merge from appliance head
authorGerald Carter <jerry@samba.org>
Thu, 21 Dec 2000 23:23:34 +0000 (23:23 +0000)
committerGerald Carter <jerry@samba.org>
Thu, 21 Dec 2000 23:23:34 +0000 (23:23 +0000)
source/rpc_server/srv_spoolss_nt.c

index 38a4b26a6058f16e3a36fdbf8a9813da0e201a3a..cd67a3b88a1f19f5fb260d8447a3c72bd053fec2 100644 (file)
@@ -779,13 +779,16 @@ static BOOL convert_devicemode(const DEVICEMODE *devmode, NT_DEVICEMODE *nt_devm
        nt_devmode->panningwidth=devmode->panningwidth;
        nt_devmode->panningheight=devmode->panningheight;
 
+       safe_free(nt_devmode->private);
        if (nt_devmode->driverextra != 0) {
                /* if we had a previous private delete it and make a new one */
-               safe_free(nt_devmode->private);
                if((nt_devmode->private=(uint8 *)malloc(nt_devmode->driverextra * sizeof(uint8))) == NULL)
                        return False;
                memcpy(nt_devmode->private, devmode->private, nt_devmode->driverextra);
        }
+       else {
+               nt_devmode->private = NULL;
+       }
 
        return True;
 }