From 5f73c75c60841d8173f896b80432286c6458d853 Mon Sep 17 00:00:00 2001 From: Harshavardhana Ranganath Date: Thu, 17 Dec 2009 15:43:34 +0000 Subject: Add null pointer checks in "fini" Signed-off-by: Harshavardhana Signed-off-by: Anand V. Avati BUG: 364 (Segfault in io-cache) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=364 --- xlators/cluster/stripe/src/stripe.c | 7 ++++++- xlators/performance/io-cache/src/io-cache.c | 3 +++ xlators/performance/read-ahead/src/read-ahead.c | 3 +++ 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/xlators/cluster/stripe/src/stripe.c b/xlators/cluster/stripe/src/stripe.c index a29409a03..197bc50f4 100644 --- a/xlators/cluster/stripe/src/stripe.c +++ b/xlators/cluster/stripe/src/stripe.c @@ -3241,7 +3241,12 @@ fini (xlator_t *this) { stripe_private_t *priv = this->private; struct stripe_options *prev = NULL; - struct stripe_options *trav = priv->pattern; + struct stripe_options *trav = NULL; + + if (priv == NULL) + return; + + trav = priv->pattern; while (trav) { prev = trav; trav = trav->next; diff --git a/xlators/performance/io-cache/src/io-cache.c b/xlators/performance/io-cache/src/io-cache.c index ba170c338..c3f76b3bd 100644 --- a/xlators/performance/io-cache/src/io-cache.c +++ b/xlators/performance/io-cache/src/io-cache.c @@ -1198,6 +1198,9 @@ fini (xlator_t *this) { ioc_table_t *table = this->private; + if (table == NULL) + return; + pthread_mutex_destroy (&table->table_lock); FREE (table); diff --git a/xlators/performance/read-ahead/src/read-ahead.c b/xlators/performance/read-ahead/src/read-ahead.c index e508a99a3..1b37cace3 100644 --- a/xlators/performance/read-ahead/src/read-ahead.c +++ b/xlators/performance/read-ahead/src/read-ahead.c @@ -852,6 +852,9 @@ fini (xlator_t *this) { ra_conf_t *conf = this->private; + if (conf == NULL) + return; + pthread_mutex_destroy (&conf->conf_lock); FREE (conf); -- cgit