a/src/unac/unac.c b/src/unac/unac.c
...
...
13219
     * Make sure there is enough space to hold the decomposition
13219
     * Make sure there is enough space to hold the decomposition
13220
     * Note: a previous realloc may have succeeded, which means that *outp 
13220
     * Note: a previous realloc may have succeeded, which means that *outp 
13221
     * is not valid any more. We have to do the freeing and zero out *outp
13221
     * is not valid any more. We have to do the freeing and zero out *outp
13222
     */
13222
     */
13223
    if(out_length + ((l + 1) * 2) > out_size) {
13223
    if(out_length + ((l + 1) * 2) > out_size) {
13224
      char *saved;
13224
      out_size += ((l + 1) * 2) + 1024;
13225
      out_size += ((l + 1) * 2) + 1024;
13225
      char *saved = out;
13226
      saved = out;
13226
      out = realloc(out, out_size);
13227
      out = realloc(out, out_size);
13227
      if(out == 0) {
13228
      if(out == 0) {
13228
    if(debug_level >= UNAC_DEBUG_LOW)
13229
    if(debug_level >= UNAC_DEBUG_LOW)
13229
      DEBUG("realloc %d bytes failed\n", out_size);
13230
      DEBUG("realloc %d bytes failed\n", out_size);
13230
        free(saved);
13231
        free(saved);