Config UI: keep broken loadpoints editable (#19263)

This commit is contained in:
Michael Geers 2025-03-12 19:54:48 +01:00 • committed by GitHub
parent 19e122be7a
commit 695143f272
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 72 additions and 48 deletions

View file

@ -1028,16 +1028,20 @@ func configureLoadpoints(conf globalconfig.All) error {
instance, err := core.NewLoadpointFromConfig(log, settings, static)
if err != nil {
return &DeviceError{cc.Name, err}
err = &DeviceError{cc.Name, err}
}
dev := config.NewConfigurableDevice[loadpoint.API](&conf, instance)
if err := config.Loadpoints().Add(dev); err != nil {
return &DeviceError{cc.Name, err}
if e := config.Loadpoints().Add(dev); e != nil && err == nil {
err = &DeviceError{cc.Name, e}
}
if err := dynamic.Apply(instance); err != nil {
return &DeviceError{cc.Name, err}
if e := dynamic.Apply(instance); e != nil && err == nil {
err = &DeviceError{cc.Name, e}
}
if err != nil {
return err
}
}