diff options
author | Miguel Jacq <mig@mig5.net> | 2018-02-09 18:43:57 +1100 |
---|---|---|
committer | Miguel Jacq <mig@mig5.net> | 2018-02-09 18:43:57 +1100 |
commit | 39954c6ee8435c1762a2679b1325e66be248bebd (patch) | |
tree | 105f664e58bcdc45e5f2e6e7cc48449570b81539 /onionshare | |
parent | af1b56e6593f4b58477de2f291f3f1dbc809a6c4 (diff) | |
download | onionshare-39954c6ee8435c1762a2679b1325e66be248bebd.tar.gz onionshare-39954c6ee8435c1762a2679b1325e66be248bebd.zip |
Allow the user to cancel a share that is still starting up
Diffstat (limited to 'onionshare')
-rw-r--r-- | onionshare/onion.py | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/onionshare/onion.py b/onionshare/onion.py index 28f03f2d..5b4ae1bb 100644 --- a/onionshare/onion.py +++ b/onionshare/onion.py @@ -472,8 +472,8 @@ class Onion(object): auth_cookie = list(res.client_auth.values())[0] self.auth_string = 'HidServAuth {} {}'.format(onion_host, auth_cookie) - self.settings.save() if onion_host is not None: + self.settings.save() return onion_host else: raise TorErrorProtocolError(strings._('error_tor_protocol_error')) @@ -484,13 +484,17 @@ class Onion(object): """ common.log('Onion', 'cleanup') - # Cleanup the ephemeral onion service - if self.service_id: - try: - self.c.remove_ephemeral_hidden_service(self.service_id) - except: - pass - self.service_id = None + # Cleanup the ephemeral onion services, if we have any + try: + onions = self.c.list_ephemeral_hidden_services() + for onion in onions: + try: + self.c.delete_ephemeral_hidden_service(service_id) + except: + pass + except: + pass + self.service_id = None if stop_tor: # Stop tor process |