]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
fix null deref when callback invoked en route from readdir_r rather than readdirplus_r
authorBrian Chrisman <brchrisman@gmail.com>
Fri, 13 May 2011 06:39:37 +0000 (23:39 -0700)
committerSage Weil <sage@newdream.net>
Fri, 13 May 2011 16:59:53 +0000 (09:59 -0700)
Signed-off-by: Brian Chrisman <brchrisman@gmail.com>
Signed-off-by: Sage Weil <sage@newdream.net>
src/client/Client.cc

index eec9253f3b3290b32af592e08a814f064bede239..41ddcf4a5d969efefa3c879e7bd93739e01ad3bb 100644 (file)
@@ -4325,8 +4325,10 @@ static int _readdir_single_dirent_cb(void *p, struct dirent *de, struct stat *st
     return -1;
 
   *c->de = *de;
-  *c->st = *st;
-  *c->stmask = stmask;
+  if (c->st)
+    *c->st = *st;
+  if (c->stmask)
+    *c->stmask = stmask;
   c->full = true;
   return 0;  
 }