Browse Source

Avoid passing 0 to realloc in ReadPhondataManifest(compiledata.c). [clang scan-build]

master
Reece H. Dunn 9 years ago
parent
commit
dea7d441f2
3 changed files with 9 additions and 0 deletions
  1. 1
    0
      src/include/espeak-ng/espeak_ng.h
  2. 5
    0
      src/libespeak-ng/compiledata.c
  3. 3
    0
      src/libespeak-ng/error.c

+ 1
- 0
src/include/espeak-ng/espeak_ng.h View File

ENS_NOT_SUPPORTED = 0x10000AFF, ENS_NOT_SUPPORTED = 0x10000AFF,
ENS_UNSUPPORTED_PHON_FORMAT = 0x10000BFF, ENS_UNSUPPORTED_PHON_FORMAT = 0x10000BFF,
ENS_NO_SPECT_FRAMES = 0x10000CFF, ENS_NO_SPECT_FRAMES = 0x10000CFF,
ENS_EMPTY_PHONEME_MANIFEST = 0x10000DFF,
} espeak_ng_STATUS; } espeak_ng_STATUS;


typedef enum { typedef enum {

+ 5
- 0
src/libespeak-ng/compiledata.c View File

free(manifest[ix].name); free(manifest[ix].name);
} }


if (n_lines == 0) {
fclose(f);
return ENS_EMPTY_PHONEME_MANIFEST;
}

if ((manifest = (NAMETAB *)realloc(manifest, n_lines * sizeof(NAMETAB))) == NULL) { if ((manifest = (NAMETAB *)realloc(manifest, n_lines * sizeof(NAMETAB))) == NULL) {
fclose(f); fclose(f);
return ENOMEM; return ENOMEM;

+ 3
- 0
src/libespeak-ng/error.c View File

case ENS_NO_SPECT_FRAMES: case ENS_NO_SPECT_FRAMES:
strncpy0(buffer, "The spectral file does not contain any frame data", length); strncpy0(buffer, "The spectral file does not contain any frame data", length);
break; break;
case ENS_EMPTY_PHONEME_MANIFEST:
strncpy0(buffer, "The phoneme manifest file does not contain any phonemes", length);
break;
default: default:
if ((status & ENS_GROUP_MASK) == ENS_GROUP_ERRNO) if ((status & ENS_GROUP_MASK) == ENS_GROUP_ERRNO)
strerror_r(status, buffer, length); strerror_r(status, buffer, length);

Loading…
Cancel
Save