- struct _TileData *data = tile->data;
- g_debug("GisPluginSrtm: _free_tile: %p=%d", data, data->opengl);
+
+ g_debug("GisPluginSrtm: _load_tile");
+ gchar *path = gis_wms_make_local(self->wms, tile);
+ struct _LoadTileData *load = g_new0(struct _LoadTileData, 1);
+ load->self = self;
+ load->tile = tile;
+ load->data = g_new0(struct _TileData, 1);
+ if (LOAD_BIL || LOAD_OPENGL)
+ load->data->bil = _load_bil(path);
+ if (LOAD_OPENGL)
+ load->pixbuf = _load_pixbuf(load->data->bil);
+
+ g_idle_add_full(G_PRIORITY_LOW, _load_tile_cb, load, NULL);
+ g_free(path);
+}
+
+static gboolean _free_tile_cb(gpointer _data)
+{
+ struct _TileData *data = _data;