GNOME Bugzilla – Bug 697304
Crash on using CHAMPLAIN_MAP_SOURCE_OAM
Last modified: 2013-04-08 17:01:30 UTC
The following C code: -----C code----------- ClutterActor *actor; ChamplainMapSourceFactory *factory; ChamplainMapSource *source; actor = champlain_view_new (); factory = champlain_map_source_factory_dup_default(); source = champlain_map_source_factory_create_cached_source(factory, CHAMPLAIN_MAP_SOURCE_OAM); champlain_view_set_map_source(CHAMPLAIN_VIEW (actor), source); ----------------------- Crashes for me: ** (animated-marker:31006): CRITICAL **: champlain_map_source_get_tile_size: assertion `CHAMPLAIN_IS_MAP_SOURCE (map_source)' failed ** (animated-marker:31006): CRITICAL **: champlain_map_source_chain_push: assertion `CHAMPLAIN_IS_TILE_SOURCE (map_source)' failed [New Thread 0x7fffe7d4f700 (LWP 31012)] [New Thread 0x7fffe754e700 (LWP 31013)] [New Thread 0x7fffe6d4d700 (LWP 31014)] [New Thread 0x7fffe654c700 (LWP 31015)] [New Thread 0x7fffe5d4b700 (LWP 31016)] [New Thread 0x7fffe554a700 (LWP 31017)] [New Thread 0x7fffe4d49700 (LWP 31018)] [New Thread 0x7fffdbfff700 (LWP 31019)] [New Thread 0x7fffdb7fe700 (LWP 31020)] [New Thread 0x7fffdaffd700 (LWP 31021)] (animated-marker:31006): Clutter-WARNING **: Unable to create a context for an image surface of width 0 and height 0. Set the surface size to be at least 1 pixel by 1 pixel. Program received signal SIGSEGV, Segmentation fault. INT_cairo_set_source (cr=0x0, source=0x1953c70) at cairo.c:794 794 if (unlikely (cr->status)) Missing separate debuginfos, use: debuginfo-install libpng-1.5.13-1.fc18.x86_64 libwayland-client-1.0.5-1.fc18.x86_64 libwayland-server-1.0.5-1.fc18.x86_64 systemd-libs-197-1.fc18.2.x86_64 xz-libs-5.1.2-2alpha.fc18.x86_64 (gdb) bt
+ Trace 231729
Apparently, the main cause is https://git.gnome.org/browse/libchamplain/commit/?id=c897259245497520c860f19139c7ae1972c2fd97 as you can see from the backtraces of the criticals and warnings below. So the aerial map was disabled (for totally undocumented reason :() but its still exposed/advertized to apps as something usable. I'll investigate about reasons and see how we can fix this. ** (animated-marker:4039): CRITICAL **: champlain_map_source_get_tile_size: assertion `CHAMPLAIN_IS_MAP_SOURCE (map_source)' failed Program received signal SIGTRAP, Trace/breakpoint trap. 0x00007ffff57d851a in g_logv (log_domain=0x0, log_level=G_LOG_LEVEL_CRITICAL, format=0x7ffff585fbcc "%s: assertion `%s' failed", args=0x7fffffffd2a8) at gmessages.c:974 974 G_BREAKPOINT (); Missing separate debuginfos, use: debuginfo-install libpng-1.5.13-1.fc18.x86_64 libwayland-client-1.0.5-1.fc18.x86_64 libwayland-server-1.0.5-1.fc18.x86_64 systemd-libs-197-1.fc18.2.x86_64 xz-libs-5.1.2-2alpha.fc18.x86_64 (gdb) bt
+ Trace 231734
Created attachment 240746 [details] [review] Add Mapquest Open Aerial map source Seems after the demise of OAM, this is the only usable and open service of aerial tiles.
Created attachment 240747 [details] [review] Drop OAM map source completely OAM has been offline for quite a while now and the code to register this source was already disabled in commit c89725924 a while back. Any application that tries to use it ends-up crashing. Better remove all support for it already. Since the using apps are crashing anyways, there is no real API/ABI break involved here. I already added an alternative aerial source in the previous commit so application can use that instead.
Applied, thanks.