Fixed an edge case durring disonnect when remember transmission
This commit is contained in:
@@ -444,14 +444,14 @@ func (c *Config) GetRememberTransmissionState() bool {
|
||||
return *c.config.RememberTransmissionState
|
||||
}
|
||||
|
||||
func (c *Config) SetRememberTransmissionState(enabled bool) error {
|
||||
func (c *Config) SetRememberTransmissionState(enabled, transmissionActive bool) error {
|
||||
c.mu.Lock()
|
||||
defer c.mu.Unlock()
|
||||
c.config.RememberTransmissionState = &enabled
|
||||
if !enabled {
|
||||
active := false
|
||||
c.config.TransmissionActive = &active
|
||||
transmissionActive = false
|
||||
}
|
||||
c.config.TransmissionActive = &transmissionActive
|
||||
return c.saveConfigLocked()
|
||||
}
|
||||
|
||||
|
||||
@@ -190,7 +190,7 @@ func TestRememberTransmissionStateDefaultsOffAndPersists(t *testing.T) {
|
||||
t.Fatal("expected remembered transmission state to default off")
|
||||
}
|
||||
|
||||
if err := cfg.SetRememberTransmissionState(true); err != nil {
|
||||
if err := cfg.SetRememberTransmissionState(true, false); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
if err := cfg.SetTransmissionActive(true); err != nil {
|
||||
@@ -209,7 +209,7 @@ func TestRememberTransmissionStateDefaultsOffAndPersists(t *testing.T) {
|
||||
t.Fatal("expected enabled transmission-state remembering and active state to persist")
|
||||
}
|
||||
|
||||
if err := reloaded.SetRememberTransmissionState(false); err != nil {
|
||||
if err := reloaded.SetRememberTransmissionState(false, true); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
reloaded = NewConfig(&configPath)
|
||||
|
||||
Reference in New Issue
Block a user