URI: 
       tthrottle send_requests - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit d61ccd4275c800e3c142ba8913e361ec1b923811
   DIR parent 0b4f64a7b95e73fa69ec75414b1b811aef909495
  HTML Author: ThomasV <thomasv@electrum.org>
       Date:   Wed,  9 Nov 2016 13:23:10 +0100
       
       tthrottle send_requests
       
       Diffstat:
         M lib/interface.py                    |      11 ++++++-----
         M lib/wallet.py                       |       2 ++
       
       2 files changed, 8 insertions(+), 5 deletions(-)
       ---
   DIR diff --git a/lib/interface.py b/lib/interface.py
       t@@ -258,19 +258,20 @@ class Interface(util.PrintError):
                self.unsent_requests.append(args)
        
            def send_requests(self):
       -        '''Sends all queued requests.  Returns False on failure.'''
       +        '''Sends queued requests.  Returns False on failure.'''
                make_dict = lambda (m, p, i): {'method': m, 'params': p, 'id': i}
       -        wire_requests = map(make_dict, self.unsent_requests)
       +        n = 100 - len(self.unanswered_requests)
       +        wire_requests = self.unsent_requests[0:n]
                try:
       -            self.pipe.send_all(wire_requests)
       +            self.pipe.send_all(map(make_dict, wire_requests))
                except socket.error, e:
                    self.print_error("socket error:", e)
                    return False
       -        for request in self.unsent_requests:
       +        self.unsent_requests = self.unsent_requests[n:]
       +        for request in wire_requests:
                    if self.debug:
                        self.print_error("-->", request)
                    self.unanswered_requests[request[2]] = request
       -        self.unsent_requests = []
                return True
        
            def ping_required(self):
   DIR diff --git a/lib/wallet.py b/lib/wallet.py
       t@@ -774,6 +774,8 @@ class Abstract_Wallet(PrintError):
                from util import format_time
                if conf == 0:
                    tx = self.transactions.get(tx_hash)
       +            if not tx:
       +                return 3, 'unknown'
                    is_final = tx and tx.is_final()
                    fee = self.tx_fees.get(tx_hash)
                    if fee and self.network and self.network.dynfee(0):