From f58615f283cd3b9d9419fa148f8ae582fb0dd75f Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Fri, 21 Sep 2018 14:12:26 +0200 Subject: [PATCH] fix infinite recursion in dialect_options() (#26580) --- passerelle/apps/csvdatasource/models.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/passerelle/apps/csvdatasource/models.py b/passerelle/apps/csvdatasource/models.py index 9e5595d..7e5a821 100644 --- a/passerelle/apps/csvdatasource/models.py +++ b/passerelle/apps/csvdatasource/models.py @@ -139,8 +139,10 @@ class CsvDataSource(BaseResource): } def save(self, *args, **kwargs): + cache = kwargs.pop('cache', True) result = super(CsvDataSource, self).save(*args, **kwargs) - self.cache_data() + if cache: + self.cache_data() return result def cache_data(self): @@ -162,7 +164,8 @@ class CsvDataSource(BaseResource): """ # Set dialect_options if None if self._dialect_options is None: - self.save() + self._detect_dialect_options() + self.save(cache=False) options = {} for k, v in self._dialect_options.items(): -- 2.18.0