diff --git a/ripple2010.vcxproj b/ripple2010.vcxproj index 085035df9..e785bc9c3 100644 --- a/ripple2010.vcxproj +++ b/ripple2010.vcxproj @@ -39,6 +39,7 @@ true + rippled false @@ -293,6 +294,7 @@ + Designer diff --git a/ripple2010.vcxproj.filters b/ripple2010.vcxproj.filters index 6ad621db5..bec881141 100644 --- a/ripple2010.vcxproj.filters +++ b/ripple2010.vcxproj.filters @@ -357,6 +357,9 @@ Source Files + + Source Files + @@ -642,13 +645,15 @@ html - - + + + + diff --git a/src/cpp/ripple/LedgerAcquire.cpp b/src/cpp/ripple/LedgerAcquire.cpp index 025046b91..e9dea3bab 100644 --- a/src/cpp/ripple/LedgerAcquire.cpp +++ b/src/cpp/ripple/LedgerAcquire.cpp @@ -528,6 +528,7 @@ int PeerSet::getPeerCount() const void LedgerAcquire::filterNodes(std::vector& nodeIDs, std::vector& nodeHashes, std::set& recentNodes, int max, bool aggressive) { // ask for new nodes in preference to ones we've already asked for + assert(nodeHashes.size() == nodeIDs.size() ); std::vector duplicates; duplicates.reserve(nodeIDs.size()); diff --git a/src/cpp/ripple/RPCHandler.cpp b/src/cpp/ripple/RPCHandler.cpp index ebf310da5..bd543c69f 100644 --- a/src/cpp/ripple/RPCHandler.cpp +++ b/src/cpp/ripple/RPCHandler.cpp @@ -1696,7 +1696,7 @@ Json::Value RPCHandler::doAccountTransactions(Json::Value jvRequest, int& cost) try { #endif - int vl = mNetOps->getValidatedSeq(); + unsigned int vl = mNetOps->getValidatedSeq(); ScopedUnlock su(theApp->getMasterLock()); Json::Value ret(Json::objectValue); @@ -2729,11 +2729,19 @@ Json::Value RPCHandler::doSubscribe(Json::Value jvRequest, int& cost) if(currencyIn.isNonZero()) STAmount::issuerFromString(issuerIn,(*it)["IssuerIn"].asString()); + bool bothSides=false; + if((*it).isMember("BothSides") && (*it)["BothSides"].asBool()) bothSides=true; + mNetOps->subBook(ispSub, currencyIn, currencyOut, issuerIn, issuerOut); + if(bothSides) mNetOps->subBook(ispSub, currencyOut, currencyIn, issuerOut, issuerIn); if((*it)["StateNow"].asBool()) { - //lpLedger = theApp->getLedgerMaster().getClosedLedger(); - //mNetOps->getBookPage(lpLedger, uTakerPaysCurrencyID, uTakerPaysIssuerID, uTakerGetsCurrencyID, uTakerGetsIssuerID, raTakerID.getAccountID(), false, iLimit, jvMarker, jvResult); + Ledger::pointer ledger= theApp->getLedgerMaster().getClosedLedger(); + RippleAddress raTakerID; + raTakerID.setAccountID(ACCOUNT_ONE); + const Json::Value jvMarker = Json::Value(Json::nullValue); + mNetOps->getBookPage(ledger, currencyOut, issuerOut, currencyIn, issuerIn, raTakerID.getAccountID(), false, 0, jvMarker, jvResult); + if(bothSides) mNetOps->getBookPage(ledger, currencyIn, issuerIn, currencyOut, issuerOut, raTakerID.getAccountID(), false, 0, jvMarker, jvResult); } } } diff --git a/src/js/sjcl b/src/js/sjcl index dbdef434e..d04d0bdcc 160000 --- a/src/js/sjcl +++ b/src/js/sjcl @@ -1 +1 @@ -Subproject commit dbdef434e76c3f16835f3126a7ff1c717b1ce8af +Subproject commit d04d0bdccd986e434b98fe393e1e01286c10fc36