Roll back database session on exceptions

This commit is contained in:
Drew DeVault 2019-04-29 15:15:12 -04:00
parent 8ba331bd53
commit 4c51567ca0
2 changed files with 8 additions and 1 deletions

View File

@ -98,6 +98,13 @@ class MailHandler:
print(f"Created ticket {ticket.ref()}")
async def handle_DATA(self, server, session, envelope):
try:
return await self._handle_data(server, session, envelope)
except:
db.session.rollback()
raise
async def _handle_DATA(self, server, session, envelope):
address = envelope.rcpt_tos[0]
mail = email.message_from_bytes(envelope.content,

View File

@ -3,7 +3,7 @@ from todosrht.types import User, Tracker, Ticket
from todosrht.types import TicketAccess
def get_access(tracker, ticket, user=None):
if user == None:
if user is None:
user = current_user
# TODO: flesh out
if user and user.id == tracker.owner_id: