[pacman-dev] [PATCH] Allow comments after repo section header in pacman.conf

Allan McRae allan at archlinux.org
Thu Dec 22 02:49:47 EST 2011


Pacman assumes that the final character of a line specifing a repo
in pacman.conf is a "]".  But it did not clean whitespace from the
line after removing any comments.  So lines like:

[allanbrokeit]  # could break system

caused pacman not to recognize the repo.  Adjust config parsing to
strip comments before trimming whitespace from the end of the string.

Signed-off-by: Allan McRae <allan at archlinux.org>
---
 src/pacman/conf.c |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/pacman/conf.c b/src/pacman/conf.c
index 6703243..117aecd4 100644
--- a/src/pacman/conf.c
+++ b/src/pacman/conf.c
@@ -720,17 +720,19 @@ static int _parseconfig(const char *file, struct section_t *section,
 		size_t line_len;
 
 		linenum++;
-		strtrim(line);
-		line_len = strlen(line);
 
 		/* ignore whole line and end of line comments */
-		if(line_len == 0 || line[0] == '#') {
-			continue;
-		}
 		if((ptr = strchr(line, '#'))) {
 			*ptr = '\0';
 		}
 
+		strtrim(line);
+		line_len = strlen(line);
+
+		if(line_len == 0) {
+			continue;
+		}
+
 		if(line[0] == '[' && line[line_len - 1] == ']') {
 			char *name;
 			/* only possibility here is a line == '[]' */
-- 
1.7.8.1



More information about the pacman-dev mailing list