Ocpp: fix duplicate init (#16277)
This commit is contained in:
parent
2d9a85b039
commit
0b0d8fd9f2
1 changed files with 5 additions and 4 deletions
|
|
@ -81,12 +81,13 @@ func (cs *CS) RegisterChargepoint(id string, newfun func() *CP, init func(*CP) e
|
|||
cpmu.Lock()
|
||||
defer cpmu.Unlock()
|
||||
|
||||
cp, err := cs.ChargepointByID(id)
|
||||
if err != nil {
|
||||
cp = newfun()
|
||||
// already registered?
|
||||
if cp, err := cs.ChargepointByID(id); err == nil {
|
||||
return cp, nil
|
||||
}
|
||||
|
||||
// should not error
|
||||
// first time- registration should not error
|
||||
cp := newfun()
|
||||
if err := cs.register(id, cp); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue