changeset 3156:505666711e5b draft

Use unsigned ints to fix signed/unsigned warnings
author Gavin Andresen <gavinandresen@gmail.com>
date Thu, 05 Jul 2012 13:25:52 -0400
parents d67336b8149d
children 9ca8fbb3c36d
files src/bitcoinrpc.cpp src/rpcrawtransaction.cpp src/script.cpp
diffstat 3 files changed, 11 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/src/bitcoinrpc.cpp
+++ b/src/bitcoinrpc.cpp
@@ -72,7 +72,7 @@
 void RPCTypeCheck(const Array& params,
                   const list<Value_type>& typesExpected)
 {
-    int i = 0;
+    unsigned int i = 0;
     BOOST_FOREACH(Value_type t, typesExpected)
     {
         if (params.size() <= i)
--- a/src/rpcrawtransaction.cpp
+++ b/src/rpcrawtransaction.cpp
@@ -75,12 +75,12 @@
     }
     entry.push_back(Pair("vin", vin));
     Array vout;
-    for (int i = 0; i < tx.vout.size(); i++)
+    for (unsigned int i = 0; i < tx.vout.size(); i++)
     {
         const CTxOut& txout = tx.vout[i];
         Object out;
         out.push_back(Pair("value", ValueFromAmount(txout.nValue)));
-        out.push_back(Pair("n", i));
+        out.push_back(Pair("n", (boost::int64_t)i));
         Object o;
         ScriptPubKeyToJSON(txout.scriptPubKey, o);
         out.push_back(Pair("scriptPubKey", o));
@@ -402,7 +402,7 @@
     const CKeyStore& keystore = (fGivenKeys ? tempKeystore : *pwalletMain);
 
     // Sign what we can:
-    for (int i = 0; i < mergedTx.vin.size(); i++)
+    for (unsigned int i = 0; i < mergedTx.vin.size(); i++)
     {
         CTxIn& txin = mergedTx.vin[i];
         if (mapPrevOut.count(txin.prevout) == 0)
--- a/src/script.cpp
+++ b/src/script.cpp
@@ -1331,7 +1331,7 @@
 {
     int nSigned = 0;
     int nRequired = multisigdata.front()[0];
-    for (int i = 1; i < multisigdata.size()-1 && nSigned < nRequired; i++)
+    for (unsigned int i = 1; i < multisigdata.size()-1 && nSigned < nRequired; i++)
     {
         const valtype& pubkey = multisigdata[i];
         CKeyID keyID = CPubKey(pubkey).GetID();
@@ -1672,12 +1672,13 @@
     }
 
     // Build a map of pubkey -> signature by matching sigs to pubkeys:
-    int nSigsRequired = vSolutions.front()[0];
-    int nPubKeys = vSolutions.size()-2;
+    assert(vSolutions.size() > 1);
+    unsigned int nSigsRequired = vSolutions.front()[0];
+    unsigned int nPubKeys = vSolutions.size()-2;
     map<valtype, valtype> sigs;
     BOOST_FOREACH(const valtype& sig, allsigs)
     {
-        for (int i = 0; i < nPubKeys; i++)
+        for (unsigned int i = 0; i < nPubKeys; i++)
         {
             const valtype& pubkey = vSolutions[i+1];
             if (sigs.count(pubkey))
@@ -1693,7 +1694,7 @@
     // Now build a merged CScript:
     unsigned int nSigsHave = 0;
     CScript result; result << OP_0; // pop-one-too-many workaround
-    for (int i = 0; i < nPubKeys && nSigsHave < nSigsRequired; i++)
+    for (unsigned int i = 0; i < nPubKeys && nSigsHave < nSigsRequired; i++)
     {
         if (sigs.count(vSolutions[i+1]))
         {
@@ -1702,7 +1703,7 @@
         }
     }
     // Fill any missing with OP_0:
-    for (int i = nSigsHave; i < nSigsRequired; i++)
+    for (unsigned int i = nSigsHave; i < nSigsRequired; i++)
         result << OP_0;
 
     return result;