(do_define): Call collapse_continuations on each line before all else.
authorRoland McGrath <roland@redhat.com>
Thu, 5 May 1994 08:15:00 +0000 (08:15 +0000)
committerRoland McGrath <roland@redhat.com>
Thu, 5 May 1994 08:15:00 +0000 (08:15 +0000)
read.c

diff --git a/read.c b/read.c
index 449bf010a267bb9fe2f0dc8c2fab818447e6d5ee..054cee34b5a776650f02534d24b039a3e96c5752 100644 (file)
--- a/read.c
+++ b/read.c
@@ -811,12 +811,13 @@ do_define (name, namelen, origin, lineno, infile, filename)
     {
       lineno += nlines;
       nlines = readline (&lb, infile, filename, lineno);
-      p = next_token (lb.buffer);
 
+      collapse_continuations (lb.buffer);
+
+      p = next_token (lb.buffer);
       if ((p[5] == '\0' || isblank (p[5])) && !strncmp (p, "endef", 5))
        {
          p += 5;
-         collapse_continuations (p);
          remove_comments (p);
          if (*next_token (p) != '\0')
            makefile_error (filename, lineno,
@@ -833,7 +834,7 @@ do_define (name, namelen, origin, lineno, infile, filename)
        }
       else
        {
-         unsigned int len = strlen (p);
+         unsigned int len = strlen (lb.buffer);
 
          /* Increase the buffer size if necessary.  */
          if (idx + len + 1 > length)
@@ -842,7 +843,7 @@ do_define (name, namelen, origin, lineno, infile, filename)
              definition = (char *) xrealloc (definition, length + 1);
            }
 
-         bcopy (p, &definition[idx], len);
+         bcopy (lb.buffer, &definition[idx], len);
          idx += len;
          /* Separate lines with a newline.  */
          definition[idx++] = '\n';