diff --git a/src/common/jingle_ft.py b/src/common/jingle_ft.py index ae214b38e8961fdb875dff0b59e45a2f4cae065f..101e93310028fce5c1281171e41437fad6aa8aeb 100644 --- a/src/common/jingle_ft.py +++ b/src/common/jingle_ft.py @@ -184,7 +184,8 @@ class JingleFileTransfer(JingleContent): self.file_props.streamhosts = self.transport.remote_candidates # Calculate file hash in a new thread # if we haven't sent the hash already. - if self.file_props.hash_ is None and self.file_props.algo: + if self.file_props.hash_ is None and self.file_props.algo and \ + not self.werequest: self.hashThread = threading.Thread(target=self.__send_hash) self.hashThread.start() for host in self.file_props.streamhosts: diff --git a/src/filetransfers_window.py b/src/filetransfers_window.py index 04d7c18ee6d881e495df794304382d9535d02a63..8db9bf24e24a4b7e178eff3d7cc3ff28a420a721 100644 --- a/src/filetransfers_window.py +++ b/src/filetransfers_window.py @@ -660,7 +660,7 @@ class FileTransfersWindow: if transfered_size == full_size: # If we are receiver and this is a jingle session if file_props.type_ == 'r' and \ - file_props.session_type == 'jingle': + file_props.session_type == 'jingle' and file_props.hash_: # Show that we are computing the hash self.set_status(file_props, 'computing') else: diff --git a/src/gui_interface.py b/src/gui_interface.py index 1259068ad19d91acb47c58738609cad5ed347a82..b231087c3b5137a020f25cacee6f4f4be79a5a50 100644 --- a/src/gui_interface.py +++ b/src/gui_interface.py @@ -985,7 +985,7 @@ class Interface: if file_props.stalled or file_props.paused: return - if file_props.type_ == 'r': # we receive a file + if file_props.type_ == 'r' and file_props.hash_: # we receive a file # we compare hashes if file_props.session_type == 'jingle': # Compare hashes in a new thread