Ticket #500 (closed defect: fixed)
Map editor crashes with OpenGL renderer if too many instances per layer
|Reported by:||mvbarracuda||Owned by:||FIFE|
|Severity:||normal||Keywords:||editor, opengl, instances per layer|
|Time remaining:||Time spent:|
Description (last modified by mvbarracuda) (diff)
FIFE SVN r3501
Platform and OS
Win32, Python 2.7. This bug has been confirmed on an x64 Linux system as well. The attached gdb backtrace was created on that Linux system.
How to reproduce
- Make sure that the editor uses the OpenGL rendering backend; it won't crash in combination with the SDL renderer
- Start the map editor
- Open demos/rio_de_hola/maps/tourist_beach_test.xml
- Select the "tile layer" layer in the layer tool
- Select a tile of your choice, e.g. a water tile with the pipette tool
- Place the tile on the tile layer in a place where there is no tile placed yet
The tile should be added to the layer.
Python will crash.
This issue seems to be related to the total number of instances on a specific layer. If you already have 8192 instances on a layer and try to add another one, Python will crash.
If you simply add one additional instance to the "tile layer" layer by editing the map xml file by hand (so there are 8193 instances on the tile layer now) and load it into the editor afterwards, the map will load just fine. You can now even add and remove tiles just fine without crashing the Python interpreter.