From 68179cfce3668f1fb98d0c5f15a7f01c742ecc3e Mon Sep 17 00:00:00 2001 From: Vinnie Falco Date: Sun, 30 Jun 2013 03:49:41 -0700 Subject: [PATCH] Add LeakChecked qualifiers to key classes --- TODO.txt | 2 + .../containers/ripple_KeyCache.h | 13 +++--- .../containers/ripple_RangeSet.cpp | 10 ++--- .../containers/ripple_RangeSet.h | 44 +++++++++++-------- .../containers/ripple_SecureAllocator.h | 4 +- modules/ripple_basics/types/ripple_HashMaps.h | 3 +- .../utility/ripple_CountedObject.h | 2 +- src/cpp/ripple/HttpsClient.h | 4 +- src/cpp/ripple/LedgerMaster.cpp | 8 ++-- src/cpp/ripple/LedgerMaster.h | 2 +- src/cpp/ripple/NetworkOPs.h | 2 +- src/cpp/ripple/OrderBookDB.h | 2 +- src/cpp/ripple/PeerDoor.h | 2 +- src/cpp/ripple/RPCDoor.h | 2 +- src/cpp/ripple/RPCServer.h | 4 +- src/cpp/ripple/RPCSub.h | 4 +- src/cpp/ripple/SNTPClient.h | 2 +- src/cpp/ripple/TransactionMaster.h | 2 +- src/cpp/ripple/TransactionMeta.h | 2 +- src/cpp/ripple/TransactionQueue.h | 2 +- src/cpp/ripple/WSDoor.h | 2 +- src/cpp/ripple/WSHandler.h | 4 +- src/cpp/ripple/ripple_AccountItems.h | 2 +- src/cpp/ripple/ripple_AccountState.h | 2 +- src/cpp/ripple/ripple_CanonicalTXSet.h | 2 +- src/cpp/ripple/ripple_HashedObjectStore.h | 2 +- src/cpp/ripple/ripple_IProofOfWorkFactory.h | 2 +- src/cpp/ripple/ripple_IValidations.h | 2 +- src/cpp/ripple/ripple_InboundLedgers.h | 2 +- src/cpp/ripple/ripple_LedgerHistory.h | 2 +- src/cpp/ripple/ripple_LocalCredentials.h | 2 +- src/cpp/ripple/ripple_OrderBook.h | 2 +- src/cpp/ripple/ripple_Peer.h | 4 +- src/cpp/ripple/ripple_PeerSet.h | 2 +- src/cpp/ripple/ripple_Peers.cpp | 4 +- src/cpp/ripple/ripple_ProofOfWork.h | 2 +- src/cpp/ripple/ripple_ProofOfWorkFactory.h | 4 +- src/cpp/ripple/ripple_Version.h | 2 + 38 files changed, 93 insertions(+), 67 deletions(-) diff --git a/TODO.txt b/TODO.txt index ca34e06d3..76abd013a 100644 --- a/TODO.txt +++ b/TODO.txt @@ -2,6 +2,8 @@ RIPPLE TODO -------------------------------------------------------------------------------- +- Merge ripple_Version.h and ripple_BuildVersion.h + - Restructure the ripple sources to have this directory structure: /Source/ripple/ripple_core/ripple_core.h etc... diff --git a/modules/ripple_basics/containers/ripple_KeyCache.h b/modules/ripple_basics/containers/ripple_KeyCache.h index aff5cf224..ee0678f0e 100644 --- a/modules/ripple_basics/containers/ripple_KeyCache.h +++ b/modules/ripple_basics/containers/ripple_KeyCache.h @@ -4,8 +4,8 @@ */ //============================================================================== -#ifndef RIPPLE_KEYCACHE_H -#define RIPPLE_KEYCACHE_H +#ifndef RIPPLE_KEYCACHE_H_INCLUDED +#define RIPPLE_KEYCACHE_H_INCLUDED /** Maintains a cache of keys with no associated data. @@ -27,7 +27,7 @@ class KeyCache public: /** Provides a type for the key. */ - typedef Key key_type; + typedef Key key_type; /** Construct with the specified name. @@ -36,7 +36,10 @@ public: */ KeyCache (const std::string& name, int size = 0, - int age = 120) : mName (name), mTargetSize (size), mTargetAge (age) + int age = 120) + : mName (name) + , mTargetSize (size) + , mTargetAge (age) { assert ((size >= 0) && (age > 2)); } @@ -80,7 +83,7 @@ public: /** Retrieve the name of this object. */ - const std::string& getName () + std::string const& getName () { return mName; } diff --git a/modules/ripple_basics/containers/ripple_RangeSet.cpp b/modules/ripple_basics/containers/ripple_RangeSet.cpp index 39474da42..a5f4078cd 100644 --- a/modules/ripple_basics/containers/ripple_RangeSet.cpp +++ b/modules/ripple_basics/containers/ripple_RangeSet.cpp @@ -34,7 +34,7 @@ uint32 RangeSet::getFirst () const const_iterator it = mRanges.begin (); if (it == mRanges.end ()) - return RangeSetAbsent; + return absent; return it->first; } @@ -49,7 +49,7 @@ uint32 RangeSet::getNext (uint32 v) const if (contains (it, v + 1)) return v + 1; } - return RangeSetAbsent; + return absent; } uint32 RangeSet::getLast () const @@ -57,7 +57,7 @@ uint32 RangeSet::getLast () const const_reverse_iterator it = mRanges.rbegin (); if (it == mRanges.rend ()) - return RangeSetAbsent; + return absent; return it->second; } @@ -72,7 +72,7 @@ uint32 RangeSet::getPrev (uint32 v) const if (contains (it, v + 1)) return v - 1; } - return RangeSetAbsent; + return absent; } uint32 RangeSet::prevMissing (uint32 v) const @@ -86,7 +86,7 @@ uint32 RangeSet::prevMissing (uint32 v) const if (it.first > (v + 1)) return v + 1; } - return RangeSetAbsent; + return absent; } void RangeSet::setValue (uint32 v) diff --git a/modules/ripple_basics/containers/ripple_RangeSet.h b/modules/ripple_basics/containers/ripple_RangeSet.h index fb1fc8412..ceca8dd49 100644 --- a/modules/ripple_basics/containers/ripple_RangeSet.h +++ b/modules/ripple_basics/containers/ripple_RangeSet.h @@ -4,8 +4,8 @@ */ //============================================================================== -#ifndef RIPPLE_RANGESET_H -#define RIPPLE_RANGESET_H +#ifndef RIPPLE_RANGESET_H_INCLUDED +#define RIPPLE_RANGESET_H_INCLUDED /** A sparse set of integers. */ @@ -13,39 +13,45 @@ class RangeSet { public: - static const uint32 RangeSetAbsent = static_cast (-1); - -protected: - std::map mRanges; // First is lowest value in range, last is highest value in range - - typedef std::map::const_iterator const_iterator; - typedef std::map::const_reverse_iterator const_reverse_iterator; - typedef std::map::value_type value_type; - typedef std::map::iterator iterator; - - static bool contains (value_type const& it, uint32 v) - { - return (it.first <= v) && (it.second >= v); - } - - void simplify (); + static const uint32 absent = static_cast (-1); public: RangeSet () { } bool hasValue (uint32) const; + uint32 getFirst () const; uint32 getNext (uint32) const; uint32 getLast () const; uint32 getPrev (uint32) const; - uint32 prevMissing (uint32) const; // largest number not in the set that is less than the given number + // largest number not in the set that is less than the given number + uint32 prevMissing (uint32) const; void setValue (uint32); void setRange (uint32, uint32); void clearValue (uint32); std::string toString () const; + +private: + void simplify (); + +private: + typedef std::map Map; + + typedef Map::const_iterator const_iterator; + typedef Map::const_reverse_iterator const_reverse_iterator; + typedef Map::value_type value_type; + typedef Map::iterator iterator; + + static bool contains (value_type const& it, uint32 v) + { + return (it.first <= v) && (it.second >= v); + } + + // First is lowest value in range, last is highest value in range + Map mRanges; }; #endif diff --git a/modules/ripple_basics/containers/ripple_SecureAllocator.h b/modules/ripple_basics/containers/ripple_SecureAllocator.h index f956de796..0c8e0d766 100644 --- a/modules/ripple_basics/containers/ripple_SecureAllocator.h +++ b/modules/ripple_basics/containers/ripple_SecureAllocator.h @@ -4,8 +4,8 @@ */ //============================================================================== -#ifndef RIPPLE_SECUREALLOCATOR_H -#define RIPPLE_SECUREALLOCATOR_H +#ifndef RIPPLE_SECUREALLOCATOR_H_INCLUDED +#define RIPPLE_SECUREALLOCATOR_H_INCLUDED // // Allocator that locks its contents from being paged diff --git a/modules/ripple_basics/types/ripple_HashMaps.h b/modules/ripple_basics/types/ripple_HashMaps.h index 8c4da244a..bb1d22913 100644 --- a/modules/ripple_basics/types/ripple_HashMaps.h +++ b/modules/ripple_basics/types/ripple_HashMaps.h @@ -14,8 +14,7 @@ done by seeding the hashing function with a random number generated at program startup. */ -// VFALCO TODO derive from Uncopyable -class HashMaps // : beast::Uncopayble +class HashMaps : Uncopyable { public: /** Golden ratio constant used in hashing functions. diff --git a/modules/ripple_basics/utility/ripple_CountedObject.h b/modules/ripple_basics/utility/ripple_CountedObject.h index 897eee350..14a69dc4d 100644 --- a/modules/ripple_basics/utility/ripple_CountedObject.h +++ b/modules/ripple_basics/utility/ripple_CountedObject.h @@ -83,7 +83,7 @@ private: @ingroup ripple_basics */ template -class CountedObject +class CountedObject : LeakChecked > { public: CountedObject () diff --git a/src/cpp/ripple/HttpsClient.h b/src/cpp/ripple/HttpsClient.h index 2bb2eabd5..0a121f45c 100644 --- a/src/cpp/ripple/HttpsClient.h +++ b/src/cpp/ripple/HttpsClient.h @@ -11,7 +11,9 @@ // Async https client. // -class HttpsClient : public boost::enable_shared_from_this +class HttpsClient + : public boost::enable_shared_from_this + , LeakChecked { public: HttpsClient ( diff --git a/src/cpp/ripple/LedgerMaster.cpp b/src/cpp/ripple/LedgerMaster.cpp index dc337b13d..ebf9aa150 100644 --- a/src/cpp/ripple/LedgerMaster.cpp +++ b/src/cpp/ripple/LedgerMaster.cpp @@ -179,7 +179,7 @@ bool LedgerMaster::haveLedgerRange (uint32 from, uint32 to) { boost::recursive_mutex::scoped_lock sl (mLock); uint32 prevMissing = mCompleteLedgers.prevMissing (to + 1); - return (prevMissing == RangeSet::RangeSetAbsent) || (prevMissing < from); + return (prevMissing == RangeSet::absent) || (prevMissing < from); } bool LedgerMaster::haveLedger (uint32 seq) @@ -202,7 +202,7 @@ bool LedgerMaster::getValidatedRange (uint32& minVal, uint32& maxVal) minVal = mCompleteLedgers.prevMissing (maxVal); - if (minVal == RangeSet::RangeSetAbsent) + if (minVal == RangeSet::absent) minVal = 0; else ++minVal; @@ -440,7 +440,7 @@ void LedgerMaster::resumeAcquiring () uint32 prevMissing = mCompleteLedgers.prevMissing (mFinalizedLedger->getLedgerSeq ()); - if (prevMissing == RangeSet::RangeSetAbsent) + if (prevMissing == RangeSet::absent) { WriteLog (lsDEBUG, LedgerMaster) << "no prior missing ledger, not resuming"; return; @@ -564,7 +564,7 @@ void LedgerMaster::setFullLedger (Ledger::pointer ledger) { uint32 prevMissing = mCompleteLedgers.prevMissing (ledger->getLedgerSeq ()); - if (prevMissing == RangeSet::RangeSetAbsent) + if (prevMissing == RangeSet::absent) { WriteLog (lsDEBUG, LedgerMaster) << "no prior missing ledger"; return; diff --git a/src/cpp/ripple/LedgerMaster.h b/src/cpp/ripple/LedgerMaster.h index 330a2c8d5..5ad6ff9b9 100644 --- a/src/cpp/ripple/LedgerMaster.h +++ b/src/cpp/ripple/LedgerMaster.h @@ -14,7 +14,7 @@ // VFALCO TODO Rename to Ledgers // It sounds like this holds all the ledgers... // -class LedgerMaster +class LedgerMaster : LeakChecked { public: typedef FUNCTION_TYPE callback; diff --git a/src/cpp/ripple/NetworkOPs.h b/src/cpp/ripple/NetworkOPs.h index b86a0eef9..75ad54b9a 100644 --- a/src/cpp/ripple/NetworkOPs.h +++ b/src/cpp/ripple/NetworkOPs.h @@ -13,7 +13,7 @@ class Peer; class LedgerConsensus; -class NetworkOPs +class NetworkOPs : LeakChecked { public: enum Fault diff --git a/src/cpp/ripple/OrderBookDB.h b/src/cpp/ripple/OrderBookDB.h index be4bbcf41..467c80546 100644 --- a/src/cpp/ripple/OrderBookDB.h +++ b/src/cpp/ripple/OrderBookDB.h @@ -34,7 +34,7 @@ private: boost::recursive_mutex mLock; }; -class OrderBookDB +class OrderBookDB : LeakChecked { public: OrderBookDB (); diff --git a/src/cpp/ripple/PeerDoor.h b/src/cpp/ripple/PeerDoor.h index c2e4d8900..823e1cb57 100644 --- a/src/cpp/ripple/PeerDoor.h +++ b/src/cpp/ripple/PeerDoor.h @@ -11,7 +11,7 @@ Handles incoming connections from other Peers */ -class PeerDoor +class PeerDoor : LeakChecked { public: PeerDoor (boost::asio::io_service& io_service); diff --git a/src/cpp/ripple/RPCDoor.h b/src/cpp/ripple/RPCDoor.h index 7a5d4763d..40d00f9d1 100644 --- a/src/cpp/ripple/RPCDoor.h +++ b/src/cpp/ripple/RPCDoor.h @@ -11,7 +11,7 @@ Handles incoming connections from people making RPC Requests */ -class RPCDoor +class RPCDoor : LeakChecked { public: explicit RPCDoor (boost::asio::io_service& io_service); diff --git a/src/cpp/ripple/RPCServer.h b/src/cpp/ripple/RPCServer.h index d7cd1351a..7f754f6cf 100644 --- a/src/cpp/ripple/RPCServer.h +++ b/src/cpp/ripple/RPCServer.h @@ -7,7 +7,9 @@ #ifndef __RPCSERVER__ #define __RPCSERVER__ -class RPCServer : public boost::enable_shared_from_this +class RPCServer + : public boost::enable_shared_from_this + , LeakChecked { public: diff --git a/src/cpp/ripple/RPCSub.h b/src/cpp/ripple/RPCSub.h index 0b941a305..4f822ed12 100644 --- a/src/cpp/ripple/RPCSub.h +++ b/src/cpp/ripple/RPCSub.h @@ -10,7 +10,9 @@ #define RPC_EVENT_QUEUE_MAX 32 // Subscription object for JSON-RPC -class RPCSub : public InfoSub +class RPCSub + : public InfoSub + , LeakChecked { public: typedef boost::shared_ptr pointer; diff --git a/src/cpp/ripple/SNTPClient.h b/src/cpp/ripple/SNTPClient.h index 434452234..23ba358b5 100644 --- a/src/cpp/ripple/SNTPClient.h +++ b/src/cpp/ripple/SNTPClient.h @@ -20,7 +20,7 @@ public: } }; -class SNTPClient +class SNTPClient : LeakChecked { public: SNTPClient (boost::asio::io_service& service); diff --git a/src/cpp/ripple/TransactionMaster.h b/src/cpp/ripple/TransactionMaster.h index c46539d1f..05bd56c76 100644 --- a/src/cpp/ripple/TransactionMaster.h +++ b/src/cpp/ripple/TransactionMaster.h @@ -9,7 +9,7 @@ // Tracks all transactions in memory -class TransactionMaster +class TransactionMaster : LeakChecked { public: TransactionMaster (); diff --git a/src/cpp/ripple/TransactionMeta.h b/src/cpp/ripple/TransactionMeta.h index ba7b28771..482c7b898 100644 --- a/src/cpp/ripple/TransactionMeta.h +++ b/src/cpp/ripple/TransactionMeta.h @@ -7,7 +7,7 @@ #ifndef RIPPLE_TRANSACTIONMETA_H #define RIPPLE_TRANSACTIONMETA_H -class TransactionMetaSet +class TransactionMetaSet : LeakChecked { public: typedef boost::shared_ptr pointer; diff --git a/src/cpp/ripple/TransactionQueue.h b/src/cpp/ripple/TransactionQueue.h index ed4b400e0..15da03826 100644 --- a/src/cpp/ripple/TransactionQueue.h +++ b/src/cpp/ripple/TransactionQueue.h @@ -53,7 +53,7 @@ private: void addCallbacks (const TXQEntry& otherEntry); }; -class TXQueue +class TXQueue : LeakChecked { public: TXQueue () : mRunning (false) diff --git a/src/cpp/ripple/WSDoor.h b/src/cpp/ripple/WSDoor.h index f5df7dcf8..068cd61ce 100644 --- a/src/cpp/ripple/WSDoor.h +++ b/src/cpp/ripple/WSDoor.h @@ -7,7 +7,7 @@ #ifndef RIPPLE_WSDOOR_RIPPLEHEADER #define RIPPLE_WSDOOR_RIPPLEHEADER -class WSDoor +class WSDoor : LeakChecked { private: websocketpp::server_autotls* mSEndpoint; diff --git a/src/cpp/ripple/WSHandler.h b/src/cpp/ripple/WSHandler.h index c6b2f367c..695937a1c 100644 --- a/src/cpp/ripple/WSHandler.h +++ b/src/cpp/ripple/WSHandler.h @@ -23,7 +23,9 @@ struct WSServerHandlerLog; // This instance dispatches all events. There is no per connection persistence. template -class WSServerHandler : public endpoint_type::handler +class WSServerHandler + : public endpoint_type::handler + , LeakChecked > { public: typedef typename endpoint_type::handler::connection_ptr connection_ptr; diff --git a/src/cpp/ripple/ripple_AccountItems.h b/src/cpp/ripple/ripple_AccountItems.h index c94a9dd16..0c1f32427 100644 --- a/src/cpp/ripple/ripple_AccountItems.h +++ b/src/cpp/ripple/ripple_AccountItems.h @@ -9,7 +9,7 @@ /** A set of AccountItem objects. */ -class AccountItems +class AccountItems : LeakChecked { public: typedef boost::shared_ptr pointer; diff --git a/src/cpp/ripple/ripple_AccountState.h b/src/cpp/ripple/ripple_AccountState.h index bd98a275a..3a52d8385 100644 --- a/src/cpp/ripple/ripple_AccountState.h +++ b/src/cpp/ripple/ripple_AccountState.h @@ -11,7 +11,7 @@ // Provide abstract access to an account's state, such that access to the serialized format is hidden. // -class AccountState +class AccountState : LeakChecked { public: typedef boost::shared_ptr pointer; diff --git a/src/cpp/ripple/ripple_CanonicalTXSet.h b/src/cpp/ripple/ripple_CanonicalTXSet.h index f10e660ae..953422d56 100644 --- a/src/cpp/ripple/ripple_CanonicalTXSet.h +++ b/src/cpp/ripple/ripple_CanonicalTXSet.h @@ -15,7 +15,7 @@ */ // VFALCO TODO rename to SortedTxSet -class CanonicalTXSet +class CanonicalTXSet : LeakChecked { public: class Key diff --git a/src/cpp/ripple/ripple_HashedObjectStore.h b/src/cpp/ripple/ripple_HashedObjectStore.h index f5f54fd82..53ce5e5a4 100644 --- a/src/cpp/ripple/ripple_HashedObjectStore.h +++ b/src/cpp/ripple/ripple_HashedObjectStore.h @@ -10,7 +10,7 @@ /** Persistency layer for hashed objects. */ // VFALCO TODO Move all definitions to the .cpp -class HashedObjectStore +class HashedObjectStore : LeakChecked { public: HashedObjectStore (int cacheSize, int cacheAge); diff --git a/src/cpp/ripple/ripple_IProofOfWorkFactory.h b/src/cpp/ripple/ripple_IProofOfWorkFactory.h index 58089cdd1..c9ac0e4bb 100644 --- a/src/cpp/ripple/ripple_IProofOfWorkFactory.h +++ b/src/cpp/ripple/ripple_IProofOfWorkFactory.h @@ -20,7 +20,7 @@ enum POWResult // VFALCO TODO move this to the class as a static member and rename it bool powResultInfo (POWResult powCode, std::string& strToken, std::string& strHuman); -class IProofOfWorkFactory +class IProofOfWorkFactory : LeakChecked { public: typedef boost::bimap< boost::bimaps::multiset_of, boost::bimaps::unordered_set_of > powMap_t; diff --git a/src/cpp/ripple/ripple_IValidations.h b/src/cpp/ripple/ripple_IValidations.h index fd0951a9c..566c8d180 100644 --- a/src/cpp/ripple/ripple_IValidations.h +++ b/src/cpp/ripple/ripple_IValidations.h @@ -11,7 +11,7 @@ typedef boost::unordered_map ValidationSet; typedef std::pair currentValidationCount; // nodes validating and highest node ID validating -class IValidations +class IValidations : LeakChecked { public: static IValidations* New (); diff --git a/src/cpp/ripple/ripple_InboundLedgers.h b/src/cpp/ripple/ripple_InboundLedgers.h index 694fb5db6..5d034e501 100644 --- a/src/cpp/ripple/ripple_InboundLedgers.h +++ b/src/cpp/ripple/ripple_InboundLedgers.h @@ -13,7 +13,7 @@ */ // VFALCO TODO Rename to InboundLedgers // VFALCO TODO Create abstract interface -class InboundLedgers +class InboundLedgers : LeakChecked { public: // How long before we try again to acquire the same ledger diff --git a/src/cpp/ripple/ripple_LedgerHistory.h b/src/cpp/ripple/ripple_LedgerHistory.h index ebde79f4d..a0629a79f 100644 --- a/src/cpp/ripple/ripple_LedgerHistory.h +++ b/src/cpp/ripple/ripple_LedgerHistory.h @@ -8,7 +8,7 @@ #define RIPPLE_LEDGERHISTORY_H // VFALCO TODO Rename to OldLedgers ? -class LedgerHistory +class LedgerHistory : LeakChecked { public: LedgerHistory (); diff --git a/src/cpp/ripple/ripple_LocalCredentials.h b/src/cpp/ripple/ripple_LocalCredentials.h index 8d53cb08c..f1a9c2ce6 100644 --- a/src/cpp/ripple/ripple_LocalCredentials.h +++ b/src/cpp/ripple/ripple_LocalCredentials.h @@ -9,7 +9,7 @@ /** Holds the cryptographic credentials identifying this instance of the server. */ -class LocalCredentials // derive from Uncopyable +class LocalCredentials : Uncopyable { public: LocalCredentials (); diff --git a/src/cpp/ripple/ripple_OrderBook.h b/src/cpp/ripple/ripple_OrderBook.h index 3b2c86769..36f661afa 100644 --- a/src/cpp/ripple/ripple_OrderBook.h +++ b/src/cpp/ripple/ripple_OrderBook.h @@ -10,7 +10,7 @@ /** Describes a serialized ledger entry for an order book. */ -class OrderBook +class OrderBook : LeakChecked { public: typedef boost::shared_ptr pointer; diff --git a/src/cpp/ripple/ripple_Peer.h b/src/cpp/ripple/ripple_Peer.h index 4c3dcd3cb..08eb76a14 100644 --- a/src/cpp/ripple/ripple_Peer.h +++ b/src/cpp/ripple/ripple_Peer.h @@ -10,7 +10,9 @@ // VFALCO TODO Couldn't this be a struct? typedef std::pair ipPort; -class Peer : public boost::enable_shared_from_this +class Peer + : public boost::enable_shared_from_this + , LeakChecked { public: typedef boost::shared_ptr pointer; diff --git a/src/cpp/ripple/ripple_PeerSet.h b/src/cpp/ripple/ripple_PeerSet.h index 7e319610d..ba56da2c4 100644 --- a/src/cpp/ripple/ripple_PeerSet.h +++ b/src/cpp/ripple/ripple_PeerSet.h @@ -11,7 +11,7 @@ A peer set is used to acquire a ledger or a transaction set. */ -class PeerSet +class PeerSet : LeakChecked { public: uint256 const& getHash () const diff --git a/src/cpp/ripple/ripple_Peers.cpp b/src/cpp/ripple/ripple_Peers.cpp index f2d5559bc..4c1b4d230 100644 --- a/src/cpp/ripple/ripple_Peers.cpp +++ b/src/cpp/ripple/ripple_Peers.cpp @@ -14,7 +14,9 @@ class Peers; SETUP_LOG (Peers) -class Peers : public IPeers +class Peers + : public IPeers + , LeakChecked { public: explicit Peers (boost::asio::io_service& io_service) diff --git a/src/cpp/ripple/ripple_ProofOfWork.h b/src/cpp/ripple/ripple_ProofOfWork.h index 6fc891a36..5bff7d4fb 100644 --- a/src/cpp/ripple/ripple_ProofOfWork.h +++ b/src/cpp/ripple/ripple_ProofOfWork.h @@ -7,7 +7,7 @@ #ifndef RIPPLE_PROOFOFWORK_H #define RIPPLE_PROOFOFWORK_H -class ProofOfWork +class ProofOfWork : LeakChecked { public: static const int sMaxDifficulty; diff --git a/src/cpp/ripple/ripple_ProofOfWorkFactory.h b/src/cpp/ripple/ripple_ProofOfWorkFactory.h index 3cf3481a9..23837718b 100644 --- a/src/cpp/ripple/ripple_ProofOfWorkFactory.h +++ b/src/cpp/ripple/ripple_ProofOfWorkFactory.h @@ -9,7 +9,9 @@ // PRIVATE HEADER -class ProofOfWorkFactory : public IProofOfWorkFactory +class ProofOfWorkFactory + : public IProofOfWorkFactory + , LeakChecked { public: ProofOfWorkFactory (); diff --git a/src/cpp/ripple/ripple_Version.h b/src/cpp/ripple/ripple_Version.h index dcd77fe60..05cfc437a 100644 --- a/src/cpp/ripple/ripple_Version.h +++ b/src/cpp/ripple/ripple_Version.h @@ -6,10 +6,12 @@ #ifndef RIPPLE_VERSION_H #define RIPPLE_VERSION_H + // // Versions // +// VFALCO TODO Roll this together into ripple_BuildVersion #define SERVER_VERSION_MAJOR 0 #define SERVER_VERSION_MINOR 9 #define SERVER_VERSION_SUB "-b"