diff --git a/trytond/trytond/pool.py b/trytond/trytond/pool.py index 5b0b7932cc..6507ca9232 100644 --- a/trytond/trytond/pool.py +++ b/trytond/trytond/pool.py @@ -218,11 +218,10 @@ class Pool(object): cls = resolve(qualname) assert issubclass(cls.__class__, PoolMeta) try: - previous_cls = self.get(cls.__name__, type=type_) - cls = type( - cls.__name__, (cls, previous_cls), {'__slots__': ()}) + base_classes = (cls, self.get(cls.__name__, type=type_)) except KeyError: - pass + base_classes = (cls,) + cls = type(cls.__name__, base_classes, {'__slots__': ()}) assert issubclass(cls, PoolBase), ( f"{cls} is not a subclass of {PoolBase}") self.add(cls, type=type_)