- GisPluginElev *self = _self;
- g_mutex_lock(self->mutex);
- gdouble lat, lon, elev;
- gis_viewer_get_location(self->viewer, &lat, &lon, &elev);
- gis_tile_update(self->tiles,
+ GisPluginElev *elev = _elev;
+ if (!g_mutex_trylock(elev->mutex))
+ return NULL;
+ GisPoint eye;
+ gis_viewer_get_location(elev->viewer, &eye.lat, &eye.lon, &eye.elev);
+ gis_tile_update(elev->tiles, &eye,