summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--onionshare/onion.py4
-rw-r--r--onionshare_gui/server_status.py3
2 files changed, 7 insertions, 0 deletions
diff --git a/onionshare/onion.py b/onionshare/onion.py
index 2f4ddffd..b0499449 100644
--- a/onionshare/onion.py
+++ b/onionshare/onion.py
@@ -438,6 +438,10 @@ class Onion(object):
return the onion hostname.
"""
self.common.log('Onion', 'start_onion_service')
+ # Settings may have changed in the frontend but not updated in our settings object,
+ # such as persistence. Reload the settings now just to be sure.
+ self.settings.load()
+
self.auth_string = None
if not self.supports_ephemeral:
diff --git a/onionshare_gui/server_status.py b/onionshare_gui/server_status.py
index 3a6e31cc..dbcc6ca8 100644
--- a/onionshare_gui/server_status.py
+++ b/onionshare_gui/server_status.py
@@ -240,6 +240,9 @@ class ServerStatus(QtWidgets.QWidget):
"""
# Set the URL fields
if self.status == self.STATUS_STARTED:
+ # The backend Onion may have saved new settings, such as the private key.
+ # Reload the settings before saving new ones.
+ self.common.settings.load()
self.show_url()
if self.common.settings.get('save_private_key'):