diff --git a/backend/config/credential_store.go b/backend/config/credential_store.go index ce4d898..0e52118 100644 --- a/backend/config/credential_store.go +++ b/backend/config/credential_store.go @@ -71,8 +71,9 @@ var CredStore *CredentialStore // InitCredentialStore initializes the credential store func InitCredentialStore(cfg *Config) { CredStore = &CredentialStore{ - data: make(map[uint]*Credential), - path: cfg.DataDir + "/credentials.json", + data: make(map[uint]*Credential), + path: cfg.DataDir + "/credentials.json", + nextID: 1, } if err := CredStore.Load(); err != nil { diff --git a/backend/handlers/credential.go b/backend/handlers/credential.go index 74cf912..6ea2554 100644 --- a/backend/handlers/credential.go +++ b/backend/handlers/credential.go @@ -89,9 +89,10 @@ func (h *CredentialHandler) CreateCredential(c *gin.Context) { return } - // Return without secrets - cred.Data = cred.Masked - c.JSON(http.StatusCreated, cred) + // Return without secrets (use a copy to avoid mutating store) + resp := *cred + resp.Data = cred.Masked + c.JSON(http.StatusCreated, &resp) } // UpdateCredential updates a credential