summaryrefslogtreecommitdiffstats
path: root/xlators/performance
diff options
context:
space:
mode:
authorRaghavendra G <raghavendra@zresearch.com>2009-06-15 04:12:42 +0000
committerAnand V. Avati <avati@dev.gluster.com>2009-06-15 23:44:36 -0700
commit7006ae207c9e8ab9685d8e2e7455bd4e3b217c97 (patch)
tree30bde232d10d46e36e35fdb1b528d5d621940f2e /xlators/performance
parent4eac667d30bce0768bc7e220614f703d45ee6f81 (diff)
write-behind: fix memory corruption
- wb_sync did not set local = NULL after stack_wind. It also used to free local if its not NULL as part of cleanup process. Hence there was a double free in STACK_DESTROY done in wb_sync_cbk. Signed-off-by: Anand V. Avati <avati@dev.gluster.com>
Diffstat (limited to 'xlators/performance')
-rw-r--r--xlators/performance/write-behind/src/write-behind.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/xlators/performance/write-behind/src/write-behind.c b/xlators/performance/write-behind/src/write-behind.c
index 2a9eeff5a..81fcde5ae 100644
--- a/xlators/performance/write-behind/src/write-behind.c
+++ b/xlators/performance/write-behind/src/write-behind.c
@@ -457,6 +457,7 @@ wb_sync (call_frame_t *frame, wb_file_t *file, list_head_t *winds)
iobref = NULL;
vector = NULL;
sync_frame = NULL;
+ local = NULL;
copied = count = 0;
}
}