From c4fdf6d9a0b90f6565261d0073a8b18bc7197c8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicolas=20=C3=89vrard?= Date: Fri, 24 Apr 2026 11:47:03 +0200 Subject: [PATCH] Ensure check_warnings and _datamanagers are valid when using them (grafted from ee9737c3a9c8618d09c491f5c3401fef0f0f078f) --HG-- branch : 8.0 --- trytond/trytond/transaction.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/trytond/trytond/transaction.py b/trytond/trytond/transaction.py index 644877330e..20196ad07f 100644 --- a/trytond/trytond/transaction.py +++ b/trytond/trytond/transaction.py @@ -368,7 +368,8 @@ class Transaction(object): self._clear_warnings() def _clear_warnings(self): - self.check_warnings.clear() + if self.check_warnings: + self.check_warnings.clear() def commit(self): from trytond.cache import Cache @@ -404,8 +405,9 @@ class Transaction(object): from trytond.cache import Cache for cache in self.cache.values(): cache.clear() - for datamanager in self._datamanagers: - datamanager.tpc_abort(self) + if self._datamanagers: + for datamanager in self._datamanagers: + datamanager.tpc_abort(self) Cache.rollback(self) self._clear_log_records() self._clear_user_notifications()