ID 586970 - Interacting with the Display Properties of multiple Canvases at once via Python crashes Mari

Follow

Problem summary
Interacting with the Display Properties of multiple Canvases at once via Python crashes Mari.
 
The user needs to take this approach as changing the Background colour via Python while only targeting one Canvas doesn't change this setting for all Canvas.
 
 
Customer reported version
Mari 7.0v2
 
 
Customer reported platform
Windows 10
 
 
Steps to reproduce
1. Launch Mari and open any Project.
 
2. Using the Python Console palette, run any Script that tries to interact with the Display Properties of multiple Canvas tabs, such as one of the following:
 

canvas_list = mari.canvases.list()for canvas in canvas_list:	print(canvas.displayPropertyList())
 
for canvas in mari.canvases.list():	if canvas:		try:			displayPropertyList = canvas.displayPropertyList()			if "Background/GradientBottom" in displayPropertyList:				BG_bot = canvas.setDisplayProperty("Background/GradientBottom",bottomColor)			if "Background/GradientTop" in displayPropertyList:				BG_top = canvas.setDisplayProperty("Background/GradientTop",topColor)		except:			pass
 
 
Expected behaviour
Mari should be able to perform these Scripts without crashing.
 
 
Actual behaviour
Mari crashes.
 
 
Workaround
Unknown.
 
 
Reproduced by support
This bug has been reproduced in:
Mari 7.0v2 - Windows 10, Rocky 9 
Mari 4.2v1 - Windows 10, CentOS 7
 
 
Earliest version tested
Mari 4.2v1 - This issue appears to be in all tested versions of the product

    We're sorry to hear that

    Please tell us why