X-Git-Url: http://pileus.org/git/?p=aweather;a=blobdiff_plain;f=src%2Fmain.c;fp=src%2Fmain.c;h=7ae60d8cd601595aba29d54eafc59ed29a22ed8e;hp=a8bc42692c31fd7d426efeb7985e507317c62d9a;hb=586aa8e4a407bf11df9504a78904aa401edd239a;hpb=b7cd91211f8fd12d13c67e6167c133dc8c4e3c8f diff --git a/src/main.c b/src/main.c index a8bc426..7ae60d8 100644 --- a/src/main.c +++ b/src/main.c @@ -68,19 +68,23 @@ static void set_location_time(AWeatherGui *gui, char *site, char *time) /* Set time * Do this before setting setting location * so that it doesn't refresh twice */ - int year, mon, day, hour, min; - sscanf(time, "%d-%d-%d %d:%d", &year, &mon, &day, &hour, &min); - time_t sec = mktime(&(struct tm){0, year-1900, mon-1, day, hour, min}); - if (sec > 0) - grits_viewer_set_time(gui->viewer, sec); - g_debug("date = [%s] == %lu\n", time, sec); + if (time) { + int year, mon, day, hour, min; + sscanf(time, "%d-%d-%d %d:%d", &year, &mon, &day, &hour, &min); + time_t sec = mktime(&(struct tm){0, year-1900, mon-1, day, hour, min}); + if (sec > 0) + grits_viewer_set_time(gui->viewer, sec); + g_debug("date = [%s] == %lu\n", time, sec); + } /* Set location */ - for (city_t *city = cities; city->type; city++) { - if (city->type == LOCATION_CITY && g_str_equal(city->code, site)) { - grits_viewer_set_location(gui->viewer, - city->pos.lat, city->pos.lon, EARTH_R/35); - break; + if (site) { + for (city_t *city = cities; city->type; city++) { + if (city->type == LOCATION_CITY && g_str_equal(city->code, site)) { + grits_viewer_set_location(gui->viewer, + city->pos.lat, city->pos.lon, EARTH_R/35); + break; + } } } } @@ -111,8 +115,8 @@ int main(int argc, char *argv[]) { /* Defaults */ gint debug = 2; // G_LOG_LEVEL_WARNING - gchar *site = ""; - gchar *time = ""; + gchar *site = NULL; + gchar *time = NULL; gboolean autoupdate = FALSE; gboolean offline = FALSE; gboolean fullscreen = FALSE;