Enhance entry deletion process: ensure immediate file save after deletion and restore entry on save failure for improved reliability.
This commit is contained in:
parent
6107b43ac5
commit
89df22f4e3
1 changed files with 10 additions and 1 deletions
|
@ -331,7 +331,16 @@ class HostsManager:
|
||||||
|
|
||||||
# Remove the entry
|
# Remove the entry
|
||||||
deleted_entry = hosts_file.entries.pop(index)
|
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:
|
except Exception as e:
|
||||||
return False, f"Error deleting entry: {e}"
|
return False, f"Error deleting entry: {e}"
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue