Skip to content

Commit

Permalink
/defensive programming/ ensure revision is still pending before marki…
Browse files Browse the repository at this point in the history
…ng as disapproved
  • Loading branch information
jclgoodwin committed May 11, 2024
1 parent 3b74437 commit 8043274
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion vehicles/views.py
Expand Up @@ -894,8 +894,9 @@ def vehicle_revision_revert(request, revision_id):

@require_POST
@login_required
@transaction.atomic
def vehicle_revision_action(request, revision_id, action):
revisions = VehicleRevision.objects.filter(id=revision_id)
revisions = VehicleRevision.objects.filter(id=revision_id).select_for_update()

revision = get_object_or_404(revisions)

Expand All @@ -913,6 +914,7 @@ def vehicle_revision_action(request, revision_id, action):
disapproved=False,
)
elif action == "disapprove":
assert revision.pending
if request.user.id == revision.user_id:
revisions.delete() # cancel one's own edit
else:
Expand Down

0 comments on commit 8043274

Please sign in to comment.