summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorDan McGee <dan@archlinux.org>2011-08-09 09:34:11 +0200
committerDan McGee <dan@archlinux.org>2011-08-09 22:41:18 +0200
commit96c4b1c3033e4f018ab20af5d35cf9cbd8b31cf4 (patch)
treefe691683c6baf65e4fa26a64796157d104ace112 /lib
parenta42e52a09f8ccf25a46d7953b2e0a30f306ed223 (diff)
downloadpacman-96c4b1c3033e4f018ab20af5d35cf9cbd8b31cf4.tar.gz
pacman-96c4b1c3033e4f018ab20af5d35cf9cbd8b31cf4.tar.xz
Don't walk off front of string when stripping newline
If the string was zero-length to begin with, or consists of only newline characters, nothing stopped us from incrementing right off the front of the string. Ensure len stays above zero the whole time. Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'lib')
-rw-r--r--lib/libalpm/util.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/libalpm/util.c b/lib/libalpm/util.c
index bd0526ce..adb1d192 100644
--- a/lib/libalpm/util.c
+++ b/lib/libalpm/util.c
@@ -219,7 +219,7 @@ size_t _alpm_strip_newline(char *str)
return 0;
}
len = strlen(str);
- while(str[len - 1] == '\n') {
+ while(len > 0 && str[len - 1] == '\n') {
len--;
}
str[len] = '\0';