Git-Url: http://git.frugalware.org/gitweb/gitweb.cgi?p=cfpm.git;a=commitdiff;h=491d5a9f2d8dd7bce44d166f49303751ac269ce7
commit 491d5a9f2d8dd7bce44d166f49303751ac269ce7 Author: James Buren <r...@frugalware.org> Date: Thu Oct 29 12:59:10 2009 -0500 Config.c * convert num to line * write null terminator to buffer diff --git a/src/Config.c b/src/Config.c index 723653c..e94adf2 100644 --- a/src/Config.c +++ b/src/Config.c @@ -20,7 +20,7 @@ struct Config { char *path; char *err; char *buf; - size_t num; + size_t line; Pair *data; }; @@ -37,7 +37,7 @@ Config *config_create(const char *path) { cfg->buf = NULL; - cfg->num = 0; + cfg->line = 0; cfg->data = NULL; @@ -55,6 +55,7 @@ static void _config_parse_set_error(Config *cfg,const char *err) { static bool _config_parse_fill_buffer(Config *cfg) { int file; struct stat stats; + size_t num; bool ret; assert((cfg != NULL)); @@ -73,16 +74,18 @@ static bool _config_parse_fill_buffer(Config *cfg) { goto Bail; } - cfg->num = stats.st_size; + num = stats.st_size; - cfg->buf = xalloc(char,cfg->num); + cfg->buf = xalloc(char,num+1); - if(read(file,cfg->buf,cfg->num) == -1) { + if(read(file,cfg->buf,num) == -1) { _config_parse_set_error(cfg,strerror(errno)); ret = false; goto Bail; } + cfg->buf[num] = '\0'; + ret = true; Bail: _______________________________________________ Frugalware-git mailing list Frugalware-git@frugalware.org http://frugalware.org/mailman/listinfo/frugalware-git