i sometimes mix these up... :\

>From da44dcf9798abee8b6fdcf0acaf5d09868f9d879 Mon Sep 17 00:00:00 2001
From: Tamas TEVESZ <[email protected]>
Date: Thu, 23 Sep 2010 03:24:35 +0200
Subject: [PATCH] Fix some off-by-ones

Signed-off-by: Tamas TEVESZ <[email protected]>
---
 WINGs/error.c   |   20 ++++++++++----------
 util/setstyle.c |    2 +-
 2 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/WINGs/error.c b/WINGs/error.c
index 8bfe15e..5661a04 100644
--- a/WINGs/error.c
+++ b/WINGs/error.c
@@ -43,36 +43,36 @@ void __wmessage(int type, void *extra, const char *msg, ...)
        va_start(args, msg);
        switch (type) {
                case WMESSAGE_TYPE_WARNING:
-                       snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+                       snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 
1,
                                _("warning: "));
-                       vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+                       vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) 
- 1,
                                msg, args);
                break;
                case WMESSAGE_TYPE_FATAL:
-                       snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+                       snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 
1,
                                _("fatal error: "));
-                       vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+                       vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) 
- 1,
                                msg, args);
                break;
                case WMESSAGE_TYPE_WSYSERROR:
                case WMESSAGE_TYPE_WSYSERRORWITHCODE:
-                       snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+                       snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 
1,
                                _("error: "));
-                       vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+                       vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) 
- 1,
                                msg, args);
-                       snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+                       snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 
1,
                                ": %s", type == WMESSAGE_TYPE_WSYSERROR ?
                                    strerror(errno) : strerror(*(int *)extra));
                break;
                case WMESSAGE_TYPE_MESSAGE:
                        /* FALLTHROUGH */
                default:
-                       snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), 
": ");
-                       vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), 
msg, args);
+                       snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 
1, ": ");
+                       vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) 
- 1, msg, args);
                break;
        }
        va_end(args);
-       strncat(buf + strlen(buf), "\n", sizeof(buf) - strlen(buf) - 1);
+       strncat(buf + strlen(buf), "\n", sizeof(buf) - strlen(buf));
        fputs(buf, stderr);
 }
 
diff --git a/util/setstyle.c b/util/setstyle.c
index fa62ae9..a3b50b4 100644
--- a/util/setstyle.c
+++ b/util/setstyle.c
@@ -439,7 +439,7 @@ int main(int argc, char **argv)
                        perror(file);
                        return 1;
                }
-               strncat(buf, "/style", sizeof(buf) - strlen(buf) - 1);
+               strncat(buf, "/style", sizeof(buf) - strlen(buf));
 
                if (stat(buf, &st) != 0 || !S_ISREG(st.st_mode)) {      /* 
maybe symlink too? */
                        printf("%s: %s: style file not found or not a file\n", 
__progname, buf);
-- 
1.7.0.4


-- 
[-]

mkdir /nonexistent
From da44dcf9798abee8b6fdcf0acaf5d09868f9d879 Mon Sep 17 00:00:00 2001
From: Tamas TEVESZ <[email protected]>
Date: Thu, 23 Sep 2010 03:24:35 +0200
Subject: [PATCH] Fix some off-by-ones

Signed-off-by: Tamas TEVESZ <[email protected]>
---
 WINGs/error.c   |   20 ++++++++++----------
 util/setstyle.c |    2 +-
 2 files changed, 11 insertions(+), 11 deletions(-)

diff --git a/WINGs/error.c b/WINGs/error.c
index 8bfe15e..5661a04 100644
--- a/WINGs/error.c
+++ b/WINGs/error.c
@@ -43,36 +43,36 @@ void __wmessage(int type, void *extra, const char *msg, ...)
 	va_start(args, msg);
 	switch (type) {
 		case WMESSAGE_TYPE_WARNING:
-			snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+			snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 1,
 				_("warning: "));
-			vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+			vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 1,
 				msg, args);
 		break;
 		case WMESSAGE_TYPE_FATAL:
-			snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+			snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 1,
 				_("fatal error: "));
-			vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+			vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 1,
 				msg, args);
 		break;
 		case WMESSAGE_TYPE_WSYSERROR:
 		case WMESSAGE_TYPE_WSYSERRORWITHCODE:
-			snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+			snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 1,
 				_("error: "));
-			vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+			vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 1,
 				msg, args);
-			snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf),
+			snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 1,
 				": %s", type == WMESSAGE_TYPE_WSYSERROR ?
 				    strerror(errno) : strerror(*(int *)extra));
 		break;
 		case WMESSAGE_TYPE_MESSAGE:
 			/* FALLTHROUGH */
 		default:
-			snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), ": ");
-			vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf), msg, args);
+			snprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 1, ": ");
+			vsnprintf(buf + strlen(buf), sizeof(buf) - strlen(buf) - 1, msg, args);
 		break;
 	}
 	va_end(args);
-	strncat(buf + strlen(buf), "\n", sizeof(buf) - strlen(buf) - 1);
+	strncat(buf + strlen(buf), "\n", sizeof(buf) - strlen(buf));
 	fputs(buf, stderr);
 }
 
diff --git a/util/setstyle.c b/util/setstyle.c
index fa62ae9..a3b50b4 100644
--- a/util/setstyle.c
+++ b/util/setstyle.c
@@ -439,7 +439,7 @@ int main(int argc, char **argv)
 			perror(file);
 			return 1;
 		}
-		strncat(buf, "/style", sizeof(buf) - strlen(buf) - 1);
+		strncat(buf, "/style", sizeof(buf) - strlen(buf));
 
 		if (stat(buf, &st) != 0 || !S_ISREG(st.st_mode)) {	/* maybe symlink too? */
 			printf("%s: %s: style file not found or not a file\n", __progname, buf);
-- 
1.7.0.4

Reply via email to