From da2ede2aa68ba14e1228b61e41a5840669560eee Mon Sep 17 00:00:00 2001
From: Cozz Lovan <cozzlovan@yahoo.com>
Date: Thu, 14 Aug 2014 16:15:09 +0200
Subject: [PATCH] [Wallet] Improve ReorderTransactions(..)

---
 src/walletdb.cpp | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/src/walletdb.cpp b/src/walletdb.cpp
index a95baf83d..d55ed374c 100644
--- a/src/walletdb.cpp
+++ b/src/walletdb.cpp
@@ -278,8 +278,12 @@ CWalletDB::ReorderTransactions(CWallet* pwallet)
             nOrderPos = nOrderPosNext++;
             nOrderPosOffsets.push_back(nOrderPos);
 
-            if (pacentry)
-                // Have to write accounting regardless, since we don't keep it in memory
+            if (pwtx)
+            {
+                if (!WriteTx(pwtx->GetHash(), *pwtx))
+                    return DB_LOAD_FAIL;
+            }
+            else
                 if (!WriteAccountingEntry(pacentry->nEntryNo, *pacentry))
                     return DB_LOAD_FAIL;
         }
@@ -308,6 +312,7 @@ CWalletDB::ReorderTransactions(CWallet* pwallet)
                     return DB_LOAD_FAIL;
         }
     }
+    WriteOrderPosNext(nOrderPosNext);
 
     return DB_LOAD_OK;
 }