ogajduse / rpms / texlive

Forked from rpms/texlive 6 years ago
Clone
19f9397
diff -up texlive-2007/texk/lacheck/lacheck.lex.lacheck texlive-2007/texk/lacheck/lacheck.lex
19f9397
--- texlive-2007/texk/lacheck/lacheck.lex.lacheck	2006-01-17 22:41:51.000000000 +0100
860dd42
+++ texlive-2007/texk/lacheck/lacheck.lex	2008-08-27 13:20:52.000000000 +0200
860dd42
@@ -1042,11 +1042,12 @@ char *name;
860dd42
 void g_checkend(n)
860dd42
 int n;
860dd42
 {
860dd42
-    if ( check_top_level_end(yytext,n) == 1 ) 
860dd42
+    if ( check_top_level_end(yytext,n) == 1 ) {
860dd42
        if (  CG_TYPE != n  )
860dd42
 	 print_bad_match(yytext,n);
860dd42
        else
860dd42
 	pop();
860dd42
+    }
860dd42
 }
19f9397
 
860dd42
 void e_checkend(n, name)
35b0b02
@@ -1075,6 +1075,7 @@ char *name;
35b0b02
 	{
35b0b02
 	  print_bad_match(name,3);
35b0b02
           pop();
35b0b02
+          if (gstackp <= 0) return;
35b0b02
         }
35b0b02
 
35b0b02
          pop();  
35b0b02
@@ -1090,11 +1091,13 @@ int type;
35b0b02
 		 line_count, 
35b0b02
 		 eg_command( end_command , type) ) ;
35b0b02
 
35b0b02
-	  printf("\"%s\", line %d: -> unmatched \"%s\"\n",
35b0b02
-	         CG_FILE, 
35b0b02
-		 CG_LINE, 
35b0b02
-		 bg_command( CG_NAME ) ) ;
35b0b02
-	  warn_count += 2;
35b0b02
+	  if (gstackp > 0) {
35b0b02
+		 printf("\"%s\", line %d: -> unmatched \"%s\"\n",
35b0b02
+		 	 CG_FILE, 
35b0b02
+		 	 CG_LINE, 
35b0b02
+		 	 bg_command( CG_NAME ) ) ;
35b0b02
+		 warn_count += 2;
35b0b02
+	  }
35b0b02
 }
35b0b02
 
35b0b02
 int check_top_level_end(end_command,type)