Enhance entry deletion process: ensure immediate file save after deletion and restore entry on save failure for improved reliability.

This commit is contained in:
Philip Henning 2025-08-16 22:44:47 +02:00
parent 6107b43ac5
commit 89df22f4e3

View file

@ -331,7 +331,16 @@ class HostsManager:
# Remove the entry
deleted_entry = hosts_file.entries.pop(index)
return True, f"Entry deleted: {deleted_entry.canonical_hostname}"
canonical_hostname = deleted_entry.hostnames[0] if deleted_entry.hostnames else deleted_entry.ip_address
# Save the file immediately
save_success, save_message = self.save_hosts_file(hosts_file)
if not save_success:
# If save fails, restore the entry
hosts_file.entries.insert(index, deleted_entry)
return False, f"Failed to save after deletion: {save_message}"
return True, f"Entry deleted: {canonical_hostname}"
except Exception as e:
return False, f"Error deleting entry: {e}"