harden search parsing and qobuz refresh validation

This commit is contained in:
2026-04-21 19:04:33 +02:00
parent de4e561377
commit c67be72869
5 changed files with 86 additions and 2 deletions

View File

@@ -146,9 +146,21 @@ func (c *Client) refreshAppCredentials(ctx context.Context, q *config.QobuzConfi
return err
}
q.AppID = strings.TrimSpace(appID)
q.Secrets = append([]string(nil), secrets...)
if q.AppID == "" {
return errors.New("qobuz app credential refresh returned empty app_id")
}
clean := make([]string, 0, len(secrets))
for _, s := range secrets {
if v := strings.TrimSpace(s); v != "" {
clean = append(clean, v)
}
}
if len(clean) == 0 {
return errors.New("qobuz app credential refresh returned no secrets")
}
q.Secrets = append([]string(nil), clean...)
c.cfg.File.Qobuz.AppID = q.AppID
c.cfg.File.Qobuz.Secrets = append([]string(nil), secrets...)
c.cfg.File.Qobuz.Secrets = append([]string(nil), clean...)
_ = c.cfg.SaveFile()
return nil
}