Dear Maintainer, Simply removing updates on sunrise/sunset appears to have fixed the issue. I have attached a patch to this email which is apply-able to both the 1.6 branch and the master branch.
>From 6fc574987f9c2f4d52b2f452acd8194061d32623 Mon Sep 17 00:00:00 2001 From: Hal Gentz <zegen...@gmail.com> Date: Wed, 15 Mar 2017 17:44:26 -0600 Subject: [PATCH] Fixes bug 823790 in Debian by removing the update every sunrise/sunset... why do we have it anyways?
Signed-off-by: Hal Gentz <zegen...@gmail.com> --- mateweather/mateweather-applet.c | 8 -------- mateweather/mateweather-applet.h | 1 - mateweather/mateweather-pref.c | 12 ------------ mateweather/mateweather.h | 1 - 4 files changed, 22 deletions(-) diff --git a/mateweather/mateweather-applet.c b/mateweather/mateweather-applet.c index 9d774e5..c15cbb7 100644 --- a/mateweather/mateweather-applet.c +++ b/mateweather/mateweather-applet.c @@ -515,14 +515,6 @@ update_finish (WeatherInfo *info, gpointer data) } } -gint suncalc_timeout_cb (gpointer data) -{ - WeatherInfo *info = ((MateWeatherApplet *)data)->mateweather_info; - update_finish(info, data); - return 0; /* Do not repeat timeout (will be reset by update_finish) */ -} - - void mateweather_update (MateWeatherApplet *gw_applet) { WeatherPrefs prefs; diff --git a/mateweather/mateweather-applet.h b/mateweather/mateweather-applet.h index eef4f8b..8073429 100644 --- a/mateweather/mateweather-applet.h +++ b/mateweather/mateweather-applet.h @@ -21,7 +21,6 @@ G_BEGIN_DECLS extern void mateweather_applet_create(MateWeatherApplet *gw_applet); extern gint timeout_cb (gpointer data); -extern gint suncalc_timeout_cb (gpointer data); extern void mateweather_update (MateWeatherApplet *applet); G_END_DECLS diff --git a/mateweather/mateweather-pref.c b/mateweather/mateweather-pref.c index d2b31c0..ec535d7 100644 --- a/mateweather/mateweather-pref.c +++ b/mateweather/mateweather-pref.c @@ -321,7 +321,6 @@ static void auto_update_toggled(GtkToggleButton* button, MateWeatherPref* pref) { MateWeatherApplet* gw_applet = pref->priv->applet; gboolean toggled; - gint nxtSunEvent; toggled = gtk_toggle_button_get_active(button); gw_applet->mateweather_pref.update_enabled = toggled; @@ -333,20 +332,9 @@ static void auto_update_toggled(GtkToggleButton* button, MateWeatherPref* pref) g_source_remove(gw_applet->timeout_tag); } - if (gw_applet->suncalc_timeout_tag > 0) - { - g_source_remove(gw_applet->suncalc_timeout_tag); - } - if (gw_applet->mateweather_pref.update_enabled) { gw_applet->timeout_tag = g_timeout_add_seconds(gw_applet->mateweather_pref.update_interval, timeout_cb, gw_applet); - nxtSunEvent = weather_info_next_sun_event(gw_applet->mateweather_info); - - if (nxtSunEvent >= 0) - { - gw_applet->suncalc_timeout_tag = g_timeout_add_seconds(nxtSunEvent, suncalc_timeout_cb, gw_applet); - } } } diff --git a/mateweather/mateweather.h b/mateweather/mateweather.h index f486017..1fe270b 100644 --- a/mateweather/mateweather.h +++ b/mateweather/mateweather.h @@ -38,7 +38,6 @@ typedef struct _MateWeatherApplet { MatePanelAppletOrient orient; gint size; gint timeout_tag; - gint suncalc_timeout_tag; /* preferences */ MateWeatherPrefs mateweather_pref; -- 2.11.0