]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: make C_MDSInternalNoop::complete() delete 'this' 16099/head
authorYan, Zheng <zyan@redhat.com>
Wed, 5 Apr 2017 13:29:10 +0000 (21:29 +0800)
committerNathan Cutler <ncutler@suse.com>
Tue, 4 Jul 2017 10:06:46 +0000 (12:06 +0200)
Fixes: http://tracker.ceph.com/issues/19501
Signed-off-by: "Yan, Zheng" <zyan@redhat.com>
(cherry picked from commit 424e0c6744e7f63459ca0ff7deab751726aa30cd)

Conflicts:
    src/mds/MDSContext.h - omit "override" because kraken does not have
        1a91aeab987870b3ccbcf2f1e476fac8b534d449

src/mds/MDSContext.h

index e021906463a60b309b648e852f9478e9a9ac6249..94899ac1f2f1996eb108b90a6bef5d5ecb1aa9ad 100644 (file)
@@ -131,12 +131,12 @@ public:
 /**
  * No-op for callers expecting MDSInternalContextBase
  */
-class C_MDSInternalNoop : public MDSInternalContextBase
+class C_MDSInternalNoop final : public MDSInternalContextBase
 {
   virtual MDSRank* get_mds() {ceph_abort();}
 public:
   void finish(int r) {}
-  void complete(int r) {}
+  void complete(int r) { delete this; }
 };