diff --git a/storage/status.go b/storage/status.go index a825ff8..b4f46ef 100644 --- a/storage/status.go +++ b/storage/status.go @@ -175,7 +175,11 @@ func (s *Storage) DeleteStatus(id int64, author string) error { var newId int64 if err := tx.QueryRowContext(ctx, `select id from statuses where author = $1 order by created_at desc limit 1;`, author).Scan(&newId); err != nil { - tx.Rollback() + if _, err := tx.ExecContext(ctx, `UPDATE users set status_id=$1 where name=$2`, nil, author); err != nil { + tx.Rollback() + return err + } + err = tx.Commit() return err } if _, err := tx.ExecContext(ctx, `UPDATE users set status_id=$1 where name=$2`, newId, author); err != nil { diff --git a/web/handler/html.go b/web/handler/html.go index 63250ca..8a3b9d9 100644 --- a/web/handler/html.go +++ b/web/handler/html.go @@ -198,7 +198,7 @@ Are you sure you you want to delete the following status?
{{ template "status" . }} {{ if eq $.logged .User }} - + {{ end }}
{{ end }}