<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">diff -urN installwatch-0.6.3.ori/installwatch.c installwatch-0.6.3/installwatch.c
--- installwatch-0.6.3.ori/installwatch.c	2004-08-30 14:47:35.917768321 +0000
+++ installwatch-0.6.3/installwatch.c	2004-08-30 14:51:30.568600728 +0000
@@ -142,11 +142,17 @@
 	va_start(ap, format);
 	count = vsnprintf(buffer, BUFSIZE, format, ap);
 	va_end(ap);
+
+    buffer [BUFSIZE - 2] = '\n';
+    buffer [BUFSIZE - 1] = 0;
+
 	if(count == -1) {
 		/* The buffer was not big enough */
 		strcpy(&amp;(buffer[BUFSIZE - 5]), "...\n");
 		count = BUFSIZE - 1;
-	}
+	} else {
+        count = strlen(buffer);
+    }
 	if((logname = getenv("INSTALLWATCHFILE"))) {
 		logfd = true_open(logname, O_WRONLY | O_CREAT | O_APPEND, 0666);
 		if(logfd &gt;= 0) {
@@ -179,8 +185,9 @@
 		 * to the current working directory if it was not 
 		 * an absolute path                               */
 		getcwd(resolved_path, MAXPATHLEN - 2);
+        resolved_path[MAXPATHLEN - 2] = 0;
 		strcat(resolved_path, "/");
-		strncat(resolved_path, path, MAXPATHLEN - 1);
+		strncat(resolved_path, path, MAXPATHLEN - 1 - strlen(resolved_path));
 	}
 
     errno = s_errno;
</pre></body></html>