fix(webui): versions.lock can be NULL when a state is created via a webui upload
All checks were successful
main / main (push) Successful in 3m42s
main / deploy (push) Has been skipped
main / publish (push) Has been skipped

This commit is contained in:
Julien Dessaux 2025-05-14 21:06:25 +02:00
parent f19f6519c9
commit f923470924
Signed by: adyxax
GPG key ID: F92E51B86E07177E

View file

@ -35,8 +35,10 @@ func (db *DB) LoadVersionById(id uuid.UUID) (*model.Version, error) {
}
return nil, fmt.Errorf("failed to load version id %s from database: %w", id, err)
}
if err := json.Unmarshal(lock, &version.Lock); err != nil {
return nil, fmt.Errorf("failed to unmarshal lock data: %w", err)
if lock != nil {
if err := json.Unmarshal(lock, &version.Lock); err != nil {
return nil, fmt.Errorf("failed to unmarshal lock data: %w", err)
}
}
version.Created = time.Unix(created, 0)
version.Data, err = db.dataEncryptionKey.DecryptAES256(encryptedData)
@ -65,8 +67,10 @@ func (db *DB) LoadVersionsByState(state *model.State) ([]model.Version, error) {
if err != nil {
return nil, fmt.Errorf("failed to load version from row: %w", err)
}
if err := json.Unmarshal(lock, &version.Lock); err != nil {
return nil, fmt.Errorf("failed to unmarshal lock data: %w", err)
if lock != nil {
if err := json.Unmarshal(lock, &version.Lock); err != nil {
return nil, fmt.Errorf("failed to unmarshal lock data: %w", err)
}
}
version.Created = time.Unix(created, 0)
versions = append(versions, version)