Projet

Général

Profil

0001-misc-don-t-crash-when-cell-cache-refers-to-unknown-c.patch

Frédéric Péters, 08 avril 2019 06:30

Télécharger (1,95 ko)

Voir les différences:

Subject: [PATCH] misc: don't crash when cell cache refers to unknown cell
 types (#32046)

 combo/data/library.py | 2 +-
 combo/data/models.py  | 7 ++++---
 2 files changed, 5 insertions(+), 4 deletions(-)
combo/data/library.py
29 29
        return self.classes_by_content_str.values()
30 30

  
31 31
    def get_cell_class(self, content_type_str):
32
        return self.classes_by_content_str[content_type_str]
32
        return self.classes_by_content_str.get(content_type_str)
33 33

  
34 34
    def register_cell_class(self, klass):
35 35
        self.classes_by_content_str[klass.get_cell_type_str()] = klass
combo/data/models.py
586 586
            else:
587 587
                cell_classes = [get_cell_class(x) for x in cell_types]
588 588
        for klass in cell_classes:
589
            if klass is None:
590
                continue
589 591
            if cell_filter and not cell_filter(klass):
590 592
                continue
591 593
            cells.extend(klass.objects.filter(**kwargs))
......
600 602
    def get_cell(cls, reference, **kwargs):
601 603
        """Returns the cell matching reference, and eventual **kwargs"""
602 604
        content_id, cell_id = reference.split('-')
603
        try:
604
            klass = get_cell_class(content_id)
605
        except KeyError:
605
        klass = get_cell_class(content_id)
606
        if klass is None:
606 607
            raise ObjectDoesNotExist()
607 608
        return klass.objects.get(id=cell_id, **kwargs)
608 609

  
609
-