Projet

Général

Profil

0001-misc-prevent-infinite-recursion-when-walking-lazy-fo.patch

Benjamin Dauvergne, 10 avril 2020 14:17

Télécharger (1,62 ko)

Voir les différences:

Subject: [PATCH 1/2] misc: prevent infinite recursion when walking lazy
 formdata (#39803)

 wcs/qommon/substitution.py | 7 ++++++-
 wcs/variables.py           | 5 ++++-
 2 files changed, 10 insertions(+), 2 deletions(-)
wcs/qommon/substitution.py
176 176
            else:
177 177
                return
178 178
            for sub_key in sub_keys:
179
                new_depth = depth - 1
180
                if not isinstance(sub_key, str):
181
                    sub_key, recurse = sub_key
182
                    if not recurse:
183
                        new_depth = 0
179 184
                new_base = '%s_%s' % (base, sub_key)
180 185
                flat_keys[new_base] = None
181
                flatten(new_base, depth=depth - 1)
186
                flatten(new_base, depth=new_depth)
182 187

  
183 188
        for key in self.keys():
184 189
            flatten(key)
wcs/variables.py
210 210
        for key in dir(self):
211 211
            if key[0] == '_' or key in blacklist:
212 212
                continue
213
            yield key
213
            if key == 'parent':
214
                yield key, False  # = recurse
215
            else:
216
                yield key
214 217

  
215 218
    @property
216 219
    def objects(self):
217
-