#257 — Destructive modification when getTranslations method is not defined on object
by
Matous Hora
—
last modified
Nov 04, 2010 10:45 AM
| State | Resolved |
|---|---|
| Version: | 4.x |
| Area | Functionality |
| Issue type | Bug |
| Severity | Medium |
| Submitted by | Matous Hora |
| Submitted on | Oct 19, 2010 |
| Responsible | Hanno Schlichting |
| Target release: | 4.x |
If an object does not define getTranslation method (not sure why that happened but is not relevant to the issue), generatedMutator can set fields of parents rather than the object itself (languageIndependent fields)
utils.py:124:
translations = []
if hasattr(self, 'getTranslations'):
translations = self.getTranslations(review_state=False).values()
the getTranslation method can be acquired and thus mutator sets different object than the context is
maybe something like this could help:
if base_hasattr(self, 'getTranslations') or
if hasattr(aq_base(self), 'getTranslations')
utils.py:124:
translations = []
if hasattr(self, 'getTranslations'):
translations = self.getTranslations(review_state=False).values()
the getTranslation method can be acquired and thus mutator sets different object than the context is
maybe something like this could help:
if base_hasattr(self, 'getTranslations') or
if hasattr(aq_base(self), 'getTranslations')
Added by
Hanno Schlichting
on
Nov 04, 2010 10:45 AM
Thanks for the report. I fixed it using the aq_base(self) approach. This fix is available in SVN, will make it into the next 3.2b2 and 4.0b2 releases.
Issue state:
Unconfirmed
→
Resolved
Responsible manager:
(UNASSIGNED)
→
hannosch
Target release:
None
→
4.x
No responses can be added.
If you can, please log in before submitting a reaction.
