Revision aa81993...

Go back to digest for 17th June 2012

Bug Fixes in Educational

Bernhard Beschow committed changes in [marble] /:

fix crash when trying to zoom to discrete zoom level for texture-less maps after having used a texture-based map

After having used e.g. OpenStreetMap, the TextureLayer isn't cleared completely. As a result, it will return seemingly valid values in some cases, but will crash in others. In this case, the TextureLayer used to return a valid zoom level such that MarbleMap was fooled to ask it for the next "sharp" radius, leading to the crash.

A more reliable way is to check whether the TextureLayer participates in rendering. If not, it shouldn't be asked for the next "sharp" radius.

This patch is a quick fix wich comes with unit tests to prevent future regressions. In the future, the TextureLayer should be properly cleared or even recreated/deleted whenever the map theme changes.

File Changes

Modified 4 files
  •   tests/MarbleMapTest.cpp
  •   src/lib/LayerManager.cpp
  •   src/lib/LayerManager.h
  •   src/lib/MarbleMap.cpp
4 files changed in total