ucx/properties.c

changeset 152
3238f65db163
parent 130
633f15ce2ee4
child 173
31a8682fffb7
     1.1 --- a/ucx/properties.c	Thu Sep 05 13:55:04 2013 +0200
     1.2 +++ b/ucx/properties.c	Fri Sep 06 13:20:20 2013 +0200
     1.3 @@ -217,38 +217,36 @@
     1.4      }
     1.5  }
     1.6  
     1.7 +// buffer size is documented - change doc, when you change bufsize!
     1.8 +#define UCX_PROPLOAD_BUFSIZE  1024
     1.9  int ucx_properties_load(UcxMap *map, FILE *file) {
    1.10      UcxProperties *parser = ucx_properties_new();
    1.11      if(!(parser && map && file)) {
    1.12          return 1;
    1.13      }
    1.14      
    1.15 -    // buffer size is documented - change doc, when you change bufsize!
    1.16 -    const size_t bufsize = 1024;
    1.17 -    
    1.18      int error = 0;
    1.19      size_t r;
    1.20 -    char buf[bufsize];
    1.21 -    while((r = fread(buf, 1, bufsize, file)) != 0) {
    1.22 +    char buf[UCX_PROPLOAD_BUFSIZE];
    1.23 +    while((r = fread(buf, 1, UCX_PROPLOAD_BUFSIZE, file)) != 0) {
    1.24          ucx_properties_fill(parser, buf, r);
    1.25          error = ucx_properties2map(parser, map);
    1.26          if (error) {
    1.27              break;
    1.28          }
    1.29      }
    1.30 -    
    1.31      ucx_properties_free(parser);
    1.32      return error;
    1.33  }
    1.34  
    1.35  int ucx_properties_store(UcxMap *map, FILE *file) {
    1.36      UcxMapIterator iter = ucx_map_iterator(map);
    1.37 -    char *v;
    1.38 +    void *v;
    1.39      sstr_t value;
    1.40      size_t written;
    1.41  
    1.42      UCX_MAP_FOREACH(k, v, iter) {
    1.43 -        value = sstr(v);
    1.44 +        value = sstr((char*)v);
    1.45  
    1.46          written = 0;
    1.47          written += fwrite(k.data, 1, k.len, file);

mercurial