1
0
mirror of https://gitlab.xiph.org/xiph/ezstream.git synced 2024-06-02 06:01:10 +00:00

Fix up freeConfig()

This commit is contained in:
Moritz Grimm 2018-01-23 13:17:00 +01:00
parent ca76365c61
commit 7c509a575a

View File

@ -612,56 +612,36 @@ parseConfig(const char *fileName)
void void
freeConfig(EZCONFIG *cfg) freeConfig(EZCONFIG *cfg)
{ {
unsigned int i;
if (cfg == NULL) if (cfg == NULL)
return; return;
if (cfg->URL != NULL) free(cfg->URL);
free(cfg->URL); free(cfg->password);
if (cfg->password != NULL) free(cfg->format);
free(cfg->password); free(cfg->fileName);
if (cfg->format != NULL) free(cfg->metadataProgram);
free(cfg->format); free(cfg->metadataFormat);
if (cfg->fileName != NULL) free(cfg->serverName);
free(cfg->fileName); free(cfg->serverURL);
if (cfg->metadataProgram != NULL) free(cfg->serverGenre);
free(cfg->metadataProgram); free(cfg->serverDescription);
if (cfg->metadataFormat != NULL) free(cfg->serverBitrate);
free(cfg->metadataFormat); free(cfg->serverChannels);
if (cfg->serverName != NULL) free(cfg->serverSamplerate);
free(cfg->serverName); free(cfg->serverQuality);
if (cfg->serverURL != NULL) for (i = 0; i < MAX_FORMAT_ENCDEC; i++) {
free(cfg->serverURL); if (NULL == cfg->encoderDecoders[i])
if (cfg->serverGenre != NULL) continue;
free(cfg->serverGenre); free(cfg->encoderDecoders[i]->format);
if (cfg->serverDescription != NULL) free(cfg->encoderDecoders[i]->match);
free(cfg->serverDescription); free(cfg->encoderDecoders[i]->encoder);
if (cfg->serverBitrate != NULL) free(cfg->encoderDecoders[i]->decoder);
free(cfg->serverBitrate); free(cfg->encoderDecoders[i]);
if (cfg->serverChannels != NULL)
free(cfg->serverChannels);
if (cfg->serverSamplerate != NULL)
free(cfg->serverSamplerate);
if (cfg->serverQuality != NULL)
free(cfg->serverQuality);
if (cfg->encoderDecoders != NULL) {
unsigned int i;
for (i = 0; i < MAX_FORMAT_ENCDEC; i++) {
if (cfg->encoderDecoders[i] != NULL) {
if (cfg->encoderDecoders[i]->format != NULL)
free(cfg->encoderDecoders[i]->format);
if (cfg->encoderDecoders[i]->match != NULL)
free(cfg->encoderDecoders[i]->match);
if (cfg->encoderDecoders[i]->encoder != NULL)
free(cfg->encoderDecoders[i]->encoder);
if (cfg->encoderDecoders[i]->decoder != NULL)
free(cfg->encoderDecoders[i]->decoder);
free(cfg->encoderDecoders[i]);
}
}
} }
memset(cfg, 0, sizeof(EZCONFIG)); memset(cfg, 0, sizeof(*cfg));
} }
unsigned int unsigned int