Plugged some memory leaks.
[pspp-builds.git] / src / output / output.c
index 3f1dd904b4746131a395c6d34b14e87b062463f2..5a24d89547a8ea054eb5dd3b5721a7dca761fe0b 100644 (file)
@@ -82,7 +82,6 @@ char *outp_subtitle;
 static int disabled_devices;
 
 static void destroy_driver (struct outp_driver *);
-static void configure_driver_line (struct substring);
 static void configure_driver (const struct substring, const struct substring,
                               const struct substring, const struct substring);
 
@@ -318,7 +317,7 @@ outp_read_devices (void)
              struct outp_names *n = search_names (cp, ep);
              if (n)
                {
-                 configure_driver_line (ds_ss (&line));
+                 outp_configure_driver_line (ds_ss (&line));
                  delete_name (n);
                }
            }
@@ -436,6 +435,7 @@ void
 outp_done (void)
 {
   struct outp_driver_class_list *n = outp_class_list ;
+  outp_configure_clear ();
   destroy_list (&outp_driver_list);
 
   while (n)
@@ -733,8 +733,8 @@ configure_driver (struct substring driver_name, struct substring class_name,
    DRIVERNAME:CLASSNAME:DEVICETYPE:OPTIONS
    Adds a driver to outp_driver_list pursuant to the specification
    provided.  */
-static void
-configure_driver_line (struct substring line_)
+void
+outp_configure_driver_line (struct substring line_)
 {
   struct string line = DS_EMPTY_INITIALIZER;
   struct substring tokens[4];
@@ -1096,10 +1096,10 @@ outp_drivers (struct outp_driver *d)
   return d;
 }
 
-/* Enables (if ENABLE is nonzero) or disables (if ENABLE is zero) the
+/* Enables (if ENABLE is true) or disables (if ENABLE is false) the
    device(s) given in mask DEVICE. */
 void
-outp_enable_device (int enable, int device)
+outp_enable_device (bool enable, int device)
 {
   if (enable)
     disabled_devices &= ~device;