Переглянути джерело

Use std::unique_ptr for StreamPieceSelector instead of std::shared_ptr

Tatsuhiro Tsujikawa 12 роки тому
батько
коміт
bc6aa3073b
2 змінених файлів з 7 додано та 4 видалено
  1. 6 3
      src/DefaultPieceStorage.cc
  2. 1 1
      src/DefaultPieceStorage.h

+ 6 - 3
src/DefaultPieceStorage.cc

@@ -89,11 +89,14 @@ DefaultPieceStorage::DefaultPieceStorage
   const std::string& pieceSelectorOpt =
     option_->get(PREF_STREAM_PIECE_SELECTOR);
   if(pieceSelectorOpt.empty() || pieceSelectorOpt == A2_V_DEFAULT) {
-    streamPieceSelector_.reset(new DefaultStreamPieceSelector(bitfieldMan_));
+    streamPieceSelector_ = make_unique<DefaultStreamPieceSelector>
+      (bitfieldMan_);
   } else if(pieceSelectorOpt == V_INORDER) {
-    streamPieceSelector_.reset(new InorderStreamPieceSelector(bitfieldMan_));
+    streamPieceSelector_ = make_unique<InorderStreamPieceSelector>
+      (bitfieldMan_);
   } else if(pieceSelectorOpt == A2_V_GEOM) {
-    streamPieceSelector_.reset(new GeomStreamPieceSelector(bitfieldMan_, 1.5));
+    streamPieceSelector_ = make_unique<GeomStreamPieceSelector>
+      (bitfieldMan_, 1.5);
   }
 }
 

+ 1 - 1
src/DefaultPieceStorage.h

@@ -91,7 +91,7 @@ private:
   std::shared_ptr<PieceStatMan> pieceStatMan_;
 
   std::unique_ptr<PieceSelector> pieceSelector_;
-  std::shared_ptr<StreamPieceSelector> streamPieceSelector_;
+  std::unique_ptr<StreamPieceSelector> streamPieceSelector_;
 
   WrDiskCache* wrDiskCache_;
 #ifdef ENABLE_BITTORRENT