1.1 --- a/ucx/properties.c Wed Jul 24 14:26:17 2013 +0200 1.2 +++ b/ucx/properties.c Mon Aug 05 14:38:37 2013 +0200 1.3 @@ -210,8 +210,8 @@ 1.4 return 1; 1.5 } 1.6 } 1.7 - if(parser->error) { 1.8 - return 1; 1.9 + if (parser->error) { 1.10 + return parser->error; 1.11 } else { 1.12 return 0; 1.13 } 1.14 @@ -219,17 +219,20 @@ 1.15 1.16 int ucx_properties_load(UcxMap *map, FILE *file) { 1.17 UcxProperties *parser = ucx_properties_new(); 1.18 - if(!parser || !map || !file) { 1.19 + if(!(parser && map && file)) { 1.20 return 1; 1.21 } 1.22 1.23 + // buffer size is documented - change doc, when you change bufsize! 1.24 + const size_t bufsize = 1024; 1.25 + 1.26 int error = 0; 1.27 size_t r; 1.28 - char buf[1024]; 1.29 - while((r = fread(buf, 1, 1024, file)) != 0) { 1.30 + char buf[bufsize]; 1.31 + while((r = fread(buf, 1, bufsize, file)) != 0) { 1.32 ucx_properties_fill(parser, buf, r); 1.33 - if(ucx_properties2map(parser, map)) { 1.34 - error = 1; 1.35 + error = ucx_properties2map(parser, map); 1.36 + if (error) { 1.37 break; 1.38 } 1.39 } 1.40 @@ -253,7 +256,9 @@ 1.41 written += fwrite(value.ptr, 1, value.length, file); 1.42 written += fwrite("\n", 1, 1, file); 1.43 1.44 - if (written != k.len + value.length + 4) return 1; 1.45 + if (written != k.len + value.length + 4) { 1.46 + return 1; 1.47 + } 1.48 } 1.49 1.50 return 0;