]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
client: Fix coverity UNINIT_CTOR defects
authorSam Lang <sam.lang@inktank.com>
Wed, 26 Sep 2012 02:32:52 +0000 (19:32 -0700)
committerSage Weil <sage@inktank.com>
Wed, 26 Sep 2012 23:44:47 +0000 (16:44 -0700)
Coverity finds cases where constructors are not initializing
all the members of the struct/class.

Signed-off-by: Sam Lang <sam.lang@inktank.com>
src/client/Client.cc
src/client/Inode.h
src/client/Trace.h

index 67ababa81891332fe036646b6993d95857b494bb..223df240975b73b6a7f081bb26157b65c8a8e4c1 100644 (file)
@@ -101,7 +101,7 @@ void client_flush_set_callback(void *p, ObjectCacher::ObjectSet *oset)
 // -------------
 
 dir_result_t::dir_result_t(Inode *in)
-  : inode(in), offset(0), next_offset(2),
+  : inode(in), offset(0), this_offset(2), next_offset(2),
     release_count(0), start_shared_gen(0),
     buffer(0) { 
   inode->get();
@@ -114,6 +114,7 @@ dir_result_t::dir_result_t(Inode *in)
 Client::Client(Messenger *m, MonClient *mc)
   : Dispatcher(m->cct), cct(m->cct), logger(NULL), timer(m->cct, client_lock), 
     ino_invalidate_cb(NULL),
+    ino_invalidate_cb_handle(NULL),
     tick_event(NULL),
     monclient(mc), messenger(m), whoami(m->get_myname().num()),
     initialized(false), mounted(false), unmounting(false),
index b196d53ef9e381d0c1c8ecece439e395d66f59a6..7a382f722b3b9c50c8decf197632a5ef36d7ace4 100644 (file)
@@ -29,7 +29,7 @@ struct Cap {
   __u32 mseq;  // migration seq
   __u32 gen;
 
-  Cap() : session(NULL), inode(NULL), cap_item(this), issued(0),
+  Cap() : session(NULL), inode(NULL), cap_item(this), cap_id(0), issued(0),
               implemented(0), wanted(0), seq(0), issue_seq(0), mseq(0), gen(0) {}
 };
 
@@ -188,7 +188,8 @@ class Inode {
 
   Inode(CephContext *cct_, vinodeno_t vino, ceph_file_layout *layout)
     : cct(cct_), ino(vino.ino), snapid(vino.snapid),
-      rdev(0), mode(0), uid(0), gid(0), nlink(0), size(0), truncate_seq(1), truncate_size(-1),
+      rdev(0), mode(0), uid(0), gid(0), nlink(0), dir_layout({0}), layout({0}),
+      size(0), truncate_seq(1), truncate_size(-1),
       time_warp_seq(0), max_size(0), version(0), xattr_version(0),
       flags(0),
       dir_hashed(false), dir_replicated(false), auth_cap(NULL),
index dc3ac22e6f2f70a49412072ddd26a4d3d6fdf42c..c4a0f9e1532c9755fa099056ca15de33a9fb2b23 100644 (file)
@@ -39,7 +39,7 @@ class Trace {
   string line;
 
  public:
-  Trace(const char* f) : filename(f), fs(0) {}
+  Trace(const char* f) : _line(0), filename(f), fs(0) {}
   ~Trace() { 
     delete fs; 
   }