Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 387744 Details for
Bug 524850
xfce-extra/xfce4-weather-plugin - no longer receiving data
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Backported fix
xfce4-weather-plugin-1.2api.patch (text/plain), 5.44 KB, created by
Yarda
on 2014-10-29 15:56:57 UTC
(
hide
)
Description:
Backported fix
Filename:
MIME Type:
Creator:
Yarda
Created:
2014-10-29 15:56:57 UTC
Size:
5.44 KB
patch
obsolete
>diff -Nur xfce4-weather-plugin-0.8.3.orig/panel-plugin/weather.c xfce4-weather-plugin-0.8.3/panel-plugin/weather.c >--- xfce4-weather-plugin-0.8.3.orig/panel-plugin/weather.c 2013-02-18 03:21:00.000000000 -0700 >+++ xfce4-weather-plugin-0.8.3/panel-plugin/weather.c 2014-10-11 11:08:02.577649363 -0600 >@@ -638,7 +638,7 @@ > /* build url */ > url = > g_strdup_printf("http://api.yr.no/weatherapi" >- "/locationforecastlts/1.1/?lat=%s;lon=%s;msl=%d", >+ "/locationforecastlts/1.2/?lat=%s;lon=%s;msl=%d", > data->lat, data->lon, data->msl); > > /* start receive thread */ >diff -Nur xfce4-weather-plugin-0.8.3.orig/panel-plugin/weather-parsers.c xfce4-weather-plugin-0.8.3/panel-plugin/weather-parsers.c >--- xfce4-weather-plugin-0.8.3.orig/panel-plugin/weather-parsers.c 2013-02-01 08:18:50.000000000 -0700 >+++ xfce4-weather-plugin-0.8.3/panel-plugin/weather-parsers.c 2014-10-11 11:07:43.801985639 -0600 >@@ -28,6 +28,7 @@ > #define _XOPEN_SOURCE > #define _XOPEN_SOURCE_EXTENDED 1 > #include "weather-parsers.h" >+#include "weather-translate.h" > #include "weather-debug.h" > > #include <time.h> >@@ -196,8 +197,8 @@ > } > if (NODE_IS_TYPE(child_node, "symbol")) { > g_free(loc->symbol); >- loc->symbol = PROP(child_node, "id"); > loc->symbol_id = strtol(PROP(child_node, "number"), NULL, 10); >+ loc->symbol = g_strdup(get_symbol_for_id(loc->symbol_id)); > } > } > >diff -Nur xfce4-weather-plugin-0.8.3.orig/panel-plugin/weather-translate.c xfce4-weather-plugin-0.8.3/panel-plugin/weather-translate.c >--- xfce4-weather-plugin-0.8.3.orig/panel-plugin/weather-translate.c 2013-01-24 07:45:10.000000000 -0700 >+++ xfce4-weather-plugin-0.8.3/panel-plugin/weather-translate.c 2014-10-11 11:07:43.802985621 -0600 >@@ -29,6 +29,7 @@ > #include "weather-translate.h" > > #define DAY_LOC_N (sizeof(gchar) * 100) >+#define NODATA "NODATA" > > > static const gchar *wdirs[] = { >@@ -169,7 +170,7 @@ > > { 15, "FOG", N_("Fog"), N_("Fog") }, > >- /* Symbols 16-19 are used for polar days */ >+ /* Symbols 16-19 are used for polar days (unused beginning with API version 1.2) */ > { 16, "SUN", N_("Sunny"), N_("Clear") }, > { 17, "LIGHTCLOUD", N_("Lightly cloudy"), N_("Lightly cloudy") }, > { 18, "LIGHTRAINSUN", N_("Rain showers"), N_("Rain showers") }, >@@ -185,6 +186,73 @@ > #define NUM_SYMBOLS (sizeof(symbol_to_desc) / sizeof(symbol_to_desc[0])) > > >+/* >+ * API version 1.2, published in May 2014, introduced new symbols. We >+ * try to match these with existing symbols, in order to be compatible >+ * with existing icon themes and to maintain translation completeness. >+ * >+ * See http://api.met.no/weatherapi/weathericon/1.1/documentation >+ * for a list of symbols. For a list of symbols with descriptions, >+ * see http://om.yr.no/forklaring/symbol. >+ */ >+gint >+replace_symbol_id(gint id) >+{ >+ /* Symbol ids greater than 100 are used for indicating polar >+ * night. These ids are over the ordinary id + 100. Since we >+ * don't support polar icons, we can simply subtract 100 to >+ * get the non-polar symbol ids. >+ */ >+ if (id > 100) >+ id -= 100; >+ >+ switch (id) { >+ case 24: return 22; /* Light rain showers and thunder */ >+ case 25: return 6; /* Heavy rain showers and thunder */ >+ case 26: return 20; /* Light sleet showers and thunder */ >+ case 27: return 20; /* Heavy sleet showers and thunder */ >+ case 28: return 21; /* Light snow showers and thunder */ >+ case 29: return 21; /* Heavy snow showers and thunder */ >+ case 30: return 22; /* Light rain and thunder */ >+ case 31: return 23; /* Light sleet and thunder */ >+ case 32: return 23; /* Heavy sleet and thunder */ >+ case 33: return 14; /* Light snow and thunder */ >+ case 34: return 14; /* Heavy snow and thunder */ >+ >+ /* symbols 35-39 are unused */ >+ >+ case 40: return 5; /* Light rain showers */ >+ case 41: return 5; /* Heavy rain showers */ >+ case 42: return 7; /* Light sleet showers */ >+ case 43: return 7; /* Heavy sleet showers */ >+ case 44: return 8; /* Light snow showers */ >+ case 45: return 8; /* Heavy snow showers */ >+ case 46: return 9; /* Light rain */ >+ case 47: return 12; /* Light sleet */ >+ case 48: return 12; /* Heavy sleet */ >+ case 49: return 13; /* Light snow */ >+ case 50: return 13; /* Heavy snow */ >+ default: return id; >+ } >+} >+ >+ >+const gchar * >+get_symbol_for_id(gint id) >+{ >+ if (G_UNLIKELY(id < 1)) >+ return NODATA; >+ >+ if (id >= NUM_SYMBOLS) >+ id = replace_symbol_id(id); >+ >+ if (id < NUM_SYMBOLS) >+ return symbol_to_desc[id-1].symbol; >+ >+ return NODATA; >+} >+ >+ > const gchar * > translate_desc(const gchar *desc, > const gboolean nighttime) >diff -Nur xfce4-weather-plugin-0.8.3.orig/panel-plugin/weather-translate.h xfce4-weather-plugin-0.8.3/panel-plugin/weather-translate.h >--- xfce4-weather-plugin-0.8.3.orig/panel-plugin/weather-translate.h 2013-01-24 07:45:10.000000000 -0700 >+++ xfce4-weather-plugin-0.8.3/panel-plugin/weather-translate.h 2014-10-11 11:07:43.802985621 -0600 >@@ -24,6 +24,8 @@ > > G_BEGIN_DECLS > >+const gchar *get_symbol_for_id(gint id); >+ > const gchar *translate_desc(const gchar *desc, > gboolean nighttime); >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 524850
:
386844
|
386846
|
386848
|
386850
| 387744