diff options
Diffstat (limited to 'libglusterfs/src/event.c')
| -rw-r--r-- | libglusterfs/src/event.c | 5 | 
1 files changed, 5 insertions, 0 deletions
diff --git a/libglusterfs/src/event.c b/libglusterfs/src/event.c index 3243e7f2320..59b1bd79eac 100644 --- a/libglusterfs/src/event.c +++ b/libglusterfs/src/event.c @@ -195,6 +195,8 @@ event_register_poll (struct event_pool *event_pool, int fd,  			event_pool->reg = GF_REALLOC (event_pool->reg,  					        event_pool->count *  						sizeof (*event_pool->reg)); +                        if (!event_pool->reg) +                                goto unlock;  		}  		idx = event_pool->used++; @@ -239,6 +241,7 @@ event_register_poll (struct event_pool *event_pool, int fd,  		event_pool->changed = 1;  	} +unlock:  	pthread_mutex_unlock (&event_pool->mutex);  	return idx; @@ -402,6 +405,8 @@ event_dispatch_poll_resize (struct event_pool *event_pool,  			ufds = GF_CALLOC (sizeof (struct pollfd),  					  event_pool->evcache_size,                                            gf_common_mt_pollfd); +                        if (!ufds) +                                goto unlock;  			event_pool->evcache = ufds;  		}  | 
