gchar *lat_min;
gchar *lon_deg;
gchar *lon_min;
- gchar *zd_path;
+ gchar *timezone_path;
ZoneDetect *cd;
ZoneDetectResult *results;
gboolean ret = FALSE;
+ gchar *basename;
+ gchar *path;
text_latitude = exif_get_data_as_text(exif, "Exif.GPSInfo.GPSLatitude");
text_longitude = exif_get_data_as_text(exif, "Exif.GPSInfo.GPSLongitude");
longitude = -longitude;
}
- zd_path = g_build_filename(GQ_BIN_DIR, TIMEZONE_DATABASE, NULL);
- if (g_file_test(zd_path, G_FILE_TEST_EXISTS))
+ path = path_from_utf8(TIMEZONE_DATABASE);
+ basename = g_path_get_basename(path);
+ timezone_path = g_build_filename(get_rc_dir(), basename, NULL);
+ if (g_file_test(timezone_path, G_FILE_TEST_EXISTS))
{
- cd = ZDOpenDatabase(zd_path);
+ cd = ZDOpenDatabase(timezone_path);
if (cd)
{
results = ZDLookup(cd, latitude, longitude, NULL);
}
else
{
- log_printf("Error: Init of timezone database %s failed\n", zd_path);
+ log_printf("Error: Init of timezone database %s failed\n", timezone_path);
}
ZDCloseDatabase(cd);
}
- g_free(zd_path);
+ g_free(path);
+ g_free(timezone_path);
+ g_free(basename);
}
if (ret && text_date && text_time)