mirror of
https://github.com/fergalmoran/DnsServer.git
synced 2026-02-28 02:34:10 +00:00
AuthManager: added retry mechanism for delayed save.
This commit is contained in:
@@ -66,17 +66,20 @@ namespace DnsServerCore.Auth
|
||||
{
|
||||
lock (_saveLock)
|
||||
{
|
||||
try
|
||||
if (_pendingSave)
|
||||
{
|
||||
SaveConfigFileInternal();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_log.Write(ex);
|
||||
}
|
||||
finally
|
||||
{
|
||||
_pendingSave = false;
|
||||
try
|
||||
{
|
||||
SaveConfigFileInternal();
|
||||
_pendingSave = false;
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
_log.Write(ex);
|
||||
|
||||
//set timer to retry again
|
||||
_saveTimer.Change(SAVE_TIMER_INITIAL_INTERVAL, Timeout.Infinite);
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -93,10 +96,11 @@ namespace DnsServerCore.Auth
|
||||
if (_disposed)
|
||||
return;
|
||||
|
||||
_saveTimer?.Dispose();
|
||||
|
||||
lock (_saveLock)
|
||||
{
|
||||
_saveTimer?.Dispose();
|
||||
|
||||
//always save config here
|
||||
try
|
||||
{
|
||||
SaveConfigFileInternal();
|
||||
|
||||
Reference in New Issue
Block a user