In our portal Update security settings in portal_workflows fails with
this traceback:
Traceback (innermost last):
* Module ZPublisher.Publish, line 115, in publish
* Module ZPublisher.mapply, line 88, in mapply
* Module ZPublisher.Publish, line 41, in call_object
* Module Products.CMFCore.WorkflowTool, line 483, in updateRoleMappings
* Module Products.CMFCore.WorkflowTool, line 666, in
_recursiveUpdateRoleMappings
* Module Products.CMFCore.WorkflowTool, line 666, in
_recursiveUpdateRoleMappings
* Module Products.CMFCore.WorkflowTool, line 666, in
_recursiveUpdateRoleMappings
* Module Products.CMFCore.WorkflowTool, line 649, in
_recursiveUpdateRoleMappings
* Module Products.CPSWorkflow.workflow, line 268, in
updateRoleMappingsFor
* Module Products.CPSWorkflow.workflow, line 136, in
updateStackDefinitionsRoleMappingsFor
TypeError: unsubscriptable object
this happens for an object of a flexible_type, which we assigned the
section_folder_wf.
here is the diff for CPSWorkflow.workflow.py which fixes this for me:
diff workflow.py.org workflow.py
132d131
<
135,143c134,143
< try:
< former_status = history[-2]
< except IndexError:
< # Virgin instance ;)
< pass
< else:
< sflrm = former_status.get('sflrm', {})
< for k, v in sflrm.items():
< wftool.updateFormerLocalRoleMappingForStack(ob, self.id,
---
> if history is not None:
> try:
> former_status = history[-2]
> except IndexError:
> # Virgin instance ;)
> pass
> else:
> sflrm = former_status.get('sflrm', {})
> for k, v in sflrm.items():
> wftool.updateFormerLocalRoleMappingForStack(ob,
self.id,
--
Gruß Joachim
_______________________________________________
cps-devel mailing list
http://lists.nuxeo.com/mailman/listinfo/cps-devel