File 191.patch of Package transfig

commit 5f22009dba73922e98d49c0096cece8b215cd45b
Author: Thomas Loimer <thomas.loimer@tuwien.ac.at>
Date:   Tue Apr 8 21:34:23 2025 +0200

    Permit \0 in the second line in the fig file, #191

diff --git fig2dev/read.c fig2dev/read.c
index 0ec958d..2ea18ef 100644
--- fig2dev/read.c
+++ fig2dev/read.c
@@ -190,7 +190,8 @@ read_objects(FILE *fp, F_compound *obj)
 	}
 
 	/* check for embedded '\0' */
-	if (strlen(buf) < sizeof buf - 1 && buf[strlen(buf) - 1] != '\n') {
+	if (*buf == '\0' || (strlen(buf) < sizeof buf - 1 &&
+			buf[strlen(buf) - 1] != '\n')) {
 		put_msg("ASCII NUL ('\\0') character within the first line.");
 		exit(EXIT_FAILURE);
 	/* seek to the end of the first line
@@ -239,7 +240,7 @@ read_objects(FILE *fp, F_compound *obj)
 		   the encoding given in the file */
 		if (!input_encoding && !strcmp(buf, "encoding: UTF-8\n")) {
 			input_encoding = "UTF-8";
-		} else if (buf[strlen(buf) - 1] != '\n') {
+		} else if (*buf == '\0' || buf[strlen(buf) - 1] != '\n') {
 			/* seek forward to the end of the line;
 			   comments here are not mentioned by the
 			   specification, thus ignore this comment */
openSUSE Build Service is sponsored by