Fixed a bug in frequencies.q which would crash on alpha values
[pspp-builds.git] / src / output.c
index 8cf5bafa287ff7ef4bd75b8dee42c2b925224288..f3e0da7ea392f28a7bec0cdb3b0cc5d3d0b87c76 100644 (file)
@@ -18,6 +18,7 @@
    02111-1307, USA. */
 
 #include <config.h>
+#include "output.h"
 #include <assert.h>
 #include <stdlib.h>
 #include <stdio.h>
@@ -29,7 +30,6 @@
 #include "filename.h"
 #include "lexer.h"
 #include "misc.h"
-#include "output.h"
 #include "settings.h"
 #include "str.h"
 
@@ -194,7 +194,7 @@ expand_name (char *bp, char *ep)
 
 /* Looks for a macro with key KEY, and returns the corresponding value
    if found, or NULL if not. */
-const char *
+static const char *
 find_defn_value (const char *key)
 {
   static char buf[INT_DIGITS + 1];
@@ -287,6 +287,8 @@ outp_read_devices (void)
   where.line_number = 0;
   err_push_file_locator (&where);
 
+  ds_init (NULL, &line, 128);
+
   if (init_fn == NULL)
     {
       msg (IE, _("Cannot find output initialization file.  Use `-vv' to view "
@@ -302,7 +304,6 @@ outp_read_devices (void)
       goto exit;
     }
 
-  ds_init (NULL, &line, 128);
   for (;;)
     {
       char *cp;
@@ -422,7 +423,7 @@ outp_configure_macro (char *bp)
 
 /* Destroys all the drivers in driver list *DL and sets *DL to
    NULL. */
-void
+static void
 destroy_list (struct outp_driver ** dl)
 {
   struct outp_driver *d, *next;
@@ -1147,6 +1148,7 @@ outp_get_paper_size (char *size, int *h, int *v)
   where.filename = pprsz_fn;
   where.line_number = 0;
   err_push_file_locator (&where);
+  ds_init (NULL, &line, 128);
 
   if (pprsz_fn == NULL)
     {
@@ -1162,7 +1164,6 @@ outp_get_paper_size (char *size, int *h, int *v)
       goto exit;
     }
 
-  ds_init (NULL, &line, 128);
   for (;;)
     {
       char *cp, *bp, *ep;