X-Git-Url: http://pileus.org/git/?p=aweather;a=blobdiff_plain;f=src%2Fplugins%2Fradar.c;fp=src%2Fplugins%2Fradar.c;h=50c66a8bab19011a77949951a206e70563a7fc62;hp=560adc830f3f7f347b56c74de5e02c043d8fcc81;hb=09e7e102e065b1984669c93fb4f8d324a774116b;hpb=276728b7cc42bad3ec38acfe375c3a30ae87e587 diff --git a/src/plugins/radar.c b/src/plugins/radar.c index 560adc8..50c66a8 100644 --- a/src/plugins/radar.c +++ b/src/plugins/radar.c @@ -218,10 +218,7 @@ void _site_update(RadarSite *site) /* Remove old volume */ g_debug("RadarSite: update - remove - %s", site->city->code); - if (site->level2) { - grits_viewer_remove(site->viewer, GRITS_OBJECT(site->level2)); - site->level2 = NULL; - } + grits_object_destroy_pointer(&site->level2); /* Fork loading right away so updating the * list of times doesn't take too long */ @@ -249,10 +246,7 @@ void radar_site_unload(RadarSite *site) gtk_widget_destroy(site->config); /* Remove radar */ - if (site->level2) { - grits_viewer_remove(site->viewer, GRITS_OBJECT(site->level2)); - site->level2 = NULL; - } + grits_object_destroy_pointer(&site->level2); site->status = STATUS_UNLOADED; } @@ -355,7 +349,7 @@ RadarSite *radar_site_new(city_t *city, GtkWidget *pconfig, void radar_site_free(RadarSite *site) { radar_site_unload(site); - grits_viewer_remove(site->viewer, GRITS_OBJECT(site->marker)); + grits_object_destroy_pointer(&site->marker); if (site->location_id) g_signal_handler_disconnect(site->viewer, site->location_id); grits_http_free(site->http); @@ -626,11 +620,8 @@ void radar_conus_free(RadarConus *conus) if (conus->idle_source) g_source_remove(conus->idle_source); - for (int i = 0; i < 2; i++) { - GritsTile *tile = conus->tile[i]; - grits_viewer_remove(conus->viewer, GRITS_OBJECT(tile)); - g_object_unref(tile); - } + for (int i = 0; i < 2; i++) + grits_object_destroy_pointer(&conus->tile[i]); g_object_unref(conus->viewer); g_free(conus); @@ -812,11 +803,10 @@ static void grits_plugin_radar_dispose(GObject *gobject) GritsViewer *viewer = self->viewer; self->viewer = NULL; g_signal_handler_disconnect(self->config, self->tab_id); - grits_viewer_remove(viewer, GRITS_OBJECT(self->hud)); + grits_object_destroy_pointer(&self->hud); radar_conus_free(self->conus); g_hash_table_destroy(self->sites); g_object_unref(self->config); - g_object_unref(self->hud); g_object_unref(self->prefs); g_object_unref(viewer); }