diff options
| author | Jim Meyering <meyering@redhat.com> | 2012-08-02 10:51:40 +0200 | 
|---|---|---|
| committer | Anand Avati <avati@redhat.com> | 2012-08-08 23:03:29 -0700 | 
| commit | e42faa7488b41513750ad37837ac52a68f639775 (patch) | |
| tree | 53c4dab58cf3f7552299f5f42f4c3650b9dbee38 | |
| parent | 94271805633a1ee5487b036dfd81b63c0250df39 (diff) | |
fuse-bridge: fuse_thread_proc: avoid realloc-clobber induced leak upon OOM
Change-Id: I835d14b702b875bb07f41e157583592df9b72f36
BUG: 846755
Signed-off-by: Jim Meyering <meyering@redhat.com>
Reviewed-on: http://review.gluster.com/3792
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Anand Avati <avati@redhat.com>
| -rw-r--r-- | xlators/mount/fuse/src/fuse-bridge.c | 7 | 
1 files changed, 4 insertions, 3 deletions
diff --git a/xlators/mount/fuse/src/fuse-bridge.c b/xlators/mount/fuse/src/fuse-bridge.c index fc294e7a8..e5fa3a6b6 100644 --- a/xlators/mount/fuse/src/fuse-bridge.c +++ b/xlators/mount/fuse/src/fuse-bridge.c @@ -4163,11 +4163,12 @@ fuse_thread_proc (void *data)                          msg = iov_in[1].iov_base;                  else {                          if (res > msg0_size) { -                                iov_in[0].iov_base = -                                  GF_REALLOC (iov_in[0].iov_base, res); -                                if (iov_in[0].iov_base) +                                void *b = GF_REALLOC (iov_in[0].iov_base, res); +                                if (b) { +                                        iov_in[0].iov_base = b;                                          finh = (fuse_in_header_t *)                                                   iov_in[0].iov_base; +                                }                                  else {                                          gf_log ("glusterfs-fuse", GF_LOG_ERROR,                                                  "Out of memory");  | 
