From: genjix Date: Sun, 25 Mar 2012 18:01:11 +0000 (+0100) Subject: Merge branch 'master' of gitorious.org:electrum/server X-Git-Url: https://git.novaco.in/?a=commitdiff_plain;h=8f604575327622399f1439647ccd20ae8eacce70;hp=f489bb2fe5072e45d397a739dbfc826314cd1477;p=electrum-server.git Merge branch 'master' of gitorious.org:electrum/server --- diff --git a/modules/python_bitcoin/__init__.py b/modules/python_bitcoin/__init__.py index fd3afd8..db104df 100644 --- a/modules/python_bitcoin/__init__.py +++ b/modules/python_bitcoin/__init__.py @@ -122,6 +122,7 @@ class NumblocksSubscribe: subscribed = self.spring_clean() for session, request in subscribed: session.push_response({"id": request["id"], "result": latest}) + self.backend.blockchain.subscribe_reorganize(self.reorganize) def spring_clean(self): with self.lock: @@ -160,6 +161,9 @@ class LibbitcoinProcessor(stratum.Processor): self.numblocks_subscribe.subscribe(session, request) elif request["method"] == "address.get_history": self.address_get_history.get(session, request) + elif request["method"] == "server.banner": + session.push_response({"id": request["id"], + "result": "libbitcoin using python-bitcoin bindings"}) # Execute and when ready, you call # session.push_response(response) diff --git a/modules/python_bitcoin/__init__.pyc b/modules/python_bitcoin/__init__.pyc deleted file mode 100644 index ecdac5c..0000000 Binary files a/modules/python_bitcoin/__init__.pyc and /dev/null differ diff --git a/modules/python_bitcoin/composed.py b/modules/python_bitcoin/composed.py index e36f151..c8b0f4a 100644 --- a/modules/python_bitcoin/composed.py +++ b/modules/python_bitcoin/composed.py @@ -31,6 +31,7 @@ class StatementLine: self.output_loaded = None self.input_point = None self.input_loaded = None + self.raw_output_script = None def is_loaded(self): with self.lock: @@ -85,6 +86,9 @@ class PaymentHistory: if line.input_point: line.input_loaded["value"] = -line.output_loaded["value"] result.append(line.input_loaded) + else: + line.output_loaded["raw_output_script"] = \ + line.raw_output_script result.append(line.output_loaded) self.handle_finish(result) self.stop() @@ -134,7 +138,11 @@ class PaymentHistory: if info["is_in"] == 1: info["inputs"][info["pos"]] = self.address else: - info["value"] = tx.outputs[info["pos"]].value + our_output = tx.outputs[info["pos"]] + info["value"] = our_output.value + with statement_line.lock: + statement_line.raw_output_script = \ + str(bitcoin.save_script(our_output.output_script)) if not [empty_in for empty_in in info["inputs"] if empty_in is None]: # We have the sole input assert(info["is_in"] == 1)