fixed extra line after EOF and bold mode when overstruck chars differ.
authorRalph Campbell <ralph@ucbvax.Berkeley.EDU>
Fri, 27 May 1983 00:53:55 +0000 (16:53 -0800)
committerRalph Campbell <ralph@ucbvax.Berkeley.EDU>
Fri, 27 May 1983 00:53:55 +0000 (16:53 -0800)
SCCS-vsn: usr.bin/ul/ul.c 4.4

usr/src/usr.bin/ul/ul.c

index f8d7428..7299228 100644 (file)
@@ -1,5 +1,5 @@
-/*     @(#)vcrt.c      3.13    */
-static char SccsId[] = "@(#)ul.c       4.3     (Berkeley)      %G%";
+/*     @(#)ul.c        4.4     %G%     */
+static char SccsId[] = "@(#)ul.c       4.4 (Berkeley) %G%";
 
 #include <stdio.h>
 
 
 #include <stdio.h>
 
@@ -187,6 +187,7 @@ FILE *f;
 
        case '\n':
                flushln();
 
        case '\n':
                flushln();
+               continue;
 
        default:
                if (c < ' ')    /* non printing */
 
        default:
                if (c < ' ')    /* non printing */
@@ -197,14 +198,19 @@ FILE *f;
                } else if (obuf[col].c_char == '_') {
                        obuf[col].c_char = c;
                        obuf[col].c_mode |= UNDERL|mode;
                } else if (obuf[col].c_char == '_') {
                        obuf[col].c_char = c;
                        obuf[col].c_mode |= UNDERL|mode;
-               } else
+               } else if (obuf[col].c_char == c)
                        obuf[col].c_mode |= BOLD|mode;
                        obuf[col].c_mode |= BOLD|mode;
+               else {
+                       obuf[col].c_mode = c;
+                       obuf[col].c_mode = mode;
+               }
                col++;
                if (col > maxcol)
                        maxcol = col;
                continue;
        }
                col++;
                if (col > maxcol)
                        maxcol = col;
                continue;
        }
-       flushln();
+       if (maxcol)
+               flushln();
 }
 
 flushln()
 }
 
 flushln()