Signed-off-by: Danny Al-Gaaf <danny.al-gaaf@bisect.de>
ldout(cct,30) << __func__ << " kqfd = " << kqfd << "newsize = " << newsize
<< dendl;
if(newsize > sav_max) {
- sav_events = (struct SaveEvent*)realloc( sav_events,
- sizeof(struct SaveEvent)*newsize);
- if (!sav_events) {
+ void *_realloc = NULL;
+ if ((_realloc = realloc(sav_events, sizeof(struct SaveEvent)*newsize)) == NULL) {
lderr(cct) << __func__ << " unable to realloc memory: "
<< cpp_strerror(errno) << dendl;
+ free(sav_events);
return -ENOMEM;
}
+ sav_events = (struct SaveEvent*)_realloc;
memset(&sav_events[size], 0, sizeof(struct SaveEvent)*(newsize-sav_max));
sav_max = newsize;
}