win32: Remove now unused wpurple_get_timezone_abbreviation()

Wed, 25 Apr 2018 15:40:00 -0500

author
Mike Ruprecht <cmaiku@gmail.com>
date
Wed, 25 Apr 2018 15:40:00 -0500
changeset 39020
2f397c683f6c
parent 39019
da046e7a0d2b
child 39021
6593789ca155

win32: Remove now unused wpurple_get_timezone_abbreviation()

libpurple/win32/libc_interface.c file | annotate | diff | comparison | revisions
libpurple/win32/libc_internal.h file | annotate | diff | comparison | revisions
--- a/libpurple/win32/libc_interface.c	Fri Jul 14 13:22:50 2017 -0500
+++ b/libpurple/win32/libc_interface.c	Wed Apr 25 15:40:00 2018 -0500
@@ -522,547 +522,3 @@
 		return NULL;
 }
 
-/*
- * Used by purple_utf8_strftime() by way of purple_internal_strftime()
- * in src/util.c
- *
- * Code derived from PostgreSQL src/timezone/pgtz.c:
- * http://developer.postgresql.org/cvsweb.cgi/pgsql/src/timezone/pgtz.c
- */
-
-/*
-PostgreSQL Database Management System
-(formerly known as Postgres, then as Postgres95)
-
-Portions Copyright (c) 1996-2005, PostgreSQL Global Development Group
-
-Portions Copyright (c) 1994, The Regents of the University of California
-
-Permission to use, copy, modify, and distribute this software and its
-documentation for any purpose, without fee, and without a written agreement
-is hereby granted, provided that the above copyright notice and this
-paragraph and the following two paragraphs appear in all copies.
-
-IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR
-DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, INCLUDING
-LOST PROFITS, ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS
-DOCUMENTATION, EVEN IF THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGE.
-
-THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
-INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY
-AND FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
-ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATIONS TO
-PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
-
-*/
-static struct
-{
-	char *wstd;		/* Windows name of standard timezone */
-	char *wdst;		/* Windows name of daylight timezone */
-	char *ustd;		/* Unix name of standard timezone */
-	char *udst;		/* Unix name of daylight timezone */
-} win32_tzmap[] =
-{
-	{
-		"", "",
-		"", "",
-	},
-	/*
-	 * This list was built from the contents of the registry at
-	 * "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Time Zones"
-	 * on Windows XP Professional SP1
-	 */
-	{
-		"Afghanistan Standard Time", "Afghanistan Daylight Time",
-		"AFT", "AFT"
-	},
-	{
-		"Alaskan Standard Time", "Alaskan Daylight Time",
-		"AKST", "AKDT"
-	},
-	{
-		"Arab Standard Time", "Arab Daylight Time",
-		"AST", "AST"
-	},
-	{
-		"Arabian Standard Time", "Arabian Daylight Time",
-		"GST", "GST"
-	},
-	{
-		"Arabic Standard Time", "Arabic Daylight Time",
-		"AST", "ADT"
-	},
-	{
-		"Atlantic Standard Time", "Atlantic Daylight Time",
-		"AST", "ADT"
-	},
-	{
-		"AUS Central Standard Time", "AUS Central Daylight Time",
-		"CST", "CST"
-	},
-	{
-		"AUS Eastern Standard Time", "AUS Eastern Daylight Time",
-		"EST", "EST"
-	},
-	{
-		"Azores Standard Time", "Azores Daylight Time",
-		"AZOT", "AZOST"
-	},
-	{
-		"Canada Central Standard Time", "Canada Central Daylight Time",
-		"CST", "MDT"
-	},
-	{
-		"Cape Verde Standard Time", "Cape Verde Daylight Time",
-		"CVT", "CVST"
-	},
-	{
-		"Caucasus Standard Time", "Caucasus Daylight Time",
-		"AZT", "AZST"
-	},
-	{
-		"Cen. Australia Standard Time", "Cen. Australia Daylight Time",
-		"CST", "CST"
-	},
-	{
-		"Central America Standard Time", "Central America Daylight Time",
-		"CST", "CDT"
-	},
-	{
-		"Central Asia Standard Time", "Central Asia Daylight Time",
-		"BDT", "BDT"
-	},
-	{
-		"Central Europe Standard Time", "Central Europe Daylight Time",
-		"CET", "CEST"
-	},
-	{
-		"Central European Standard Time", "Central European Daylight Time",
-		"CET", "CEST"
-	},
-	{
-		"Central Pacific Standard Time", "Central Pacific Daylight Time",
-		"NCT", "NCST"
-	},
-	{
-		"Central Standard Time", "Central Daylight Time",
-		"CST", "CDT"
-	},
-	{
-		"China Standard Time", "China Daylight Time",
-		"HKT", "HKST"
-	},
-	{
-		"Dateline Standard Time", "Dateline Daylight Time",
-		"GMT+12", "GMT+12"
-	},
-	{
-		"E. Africa Standard Time", "E. Africa Daylight Time",
-		"EAT", "EAT"
-	},
-	{
-		"E. Australia Standard Time", "E. Australia Daylight Time",
-		"EST", "EST"
-	},
-	{
-		"E. Europe Standard Time", "E. Europe Daylight Time",
-		"EET", "EEST"
-	},
-	{
-		"E. South America Standard Time", "E. South America Daylight Time",
-		"BRT", "BRST"
-	},
-	{
-		"Eastern Standard Time", "Eastern Daylight Time",
-		"EST", "EDT"
-	},
-	{
-		"Egypt Standard Time", "Egypt Daylight Time",
-		"EET", "EEST"
-	},
-	{
-		"Ekaterinburg Standard Time", "Ekaterinburg Daylight Time",
-		"YEKT", "YEKST"
-	},
-	{
-		"Fiji Standard Time", "Fiji Daylight Time",
-		"FJT", "FJST"
-	},
-	{
-		"FLE Standard Time", "FLE Daylight Time",
-		"EET", "EEST"
-	},
-	{
-		"GMT Standard Time", "GMT Daylight Time",
-		"GMT", "IST"
-	},
-	{
-		"Greenland Standard Time", "Greenland Daylight Time",
-		"WGT", "WGST"
-	},
-	{
-		"Greenwich Standard Time", "Greenwich Daylight Time",
-		"WET", "WEST"
-	},
-	{
-		"GTB Standard Time", "GTB Daylight Time",
-		"EET", "EEST"
-	},
-	{
-		"Hawaiian Standard Time", "Hawaiian Daylight Time",
-		"HST", "HPT"
-	},
-	{
-		"India Standard Time", "India Daylight Time",
-		"IST", "IST"
-	},
-	{
-		"Iran Standard Time", "Iran Daylight Time",
-		"IRST", "IRDT"
-	},
-	{
-		"Jerusalem Standard Time", "Jerusalem Daylight Time",
-		"IST", "IDT"
-	},
-	{
-		"Korea Standard Time", "Korea Daylight Time",
-		"KST", "KDT"
-	},
-	{
-		"Mexico Standard Time", "Mexico Daylight Time",
-		"CST", "CDT"
-	},
-	{
-		"Mexico Standard Time", "Mexico Daylight Time",
-		"BOT", "BOST"
-	},
-	{
-		"Mid-Atlantic Standard Time", "Mid-Atlantic Daylight Time",
-		"GST", "GST"
-	},
-	{
-		"Mountain Standard Time", "Mountain Daylight Time",
-		"MST", "MDT"
-	},
-	{
-		"Myanmar Standard Time", "Myanmar Daylight Time",
-		"MMT", "MMT"
-	},
-	{
-		"N. Central Asia Standard Time", "N. Central Asia Daylight Time",
-		"ALMT", "ALMST"
-	},
-	{
-		"Nepal Standard Time", "Nepal Daylight Time",
-		"NPT", "NPT"
-	},
-	{
-		"New Zealand Standard Time", "New Zealand Daylight Time",
-		"NZST", "NZDT"
-	},
-	{
-		"Newfoundland Standard Time", "Newfoundland Daylight Time",
-		"NST", "NDT"
-	},
-	{
-		"North Asia East Standard Time", "North Asia East Daylight Time",
-		"IRKT", "IRKST"
-	},
-	{
-		"North Asia Standard Time", "North Asia Daylight Time",
-		"KRAT", "KRAST"
-	},
-	{
-		"Pacific SA Standard Time", "Pacific SA Daylight Time",
-		"CLT", "CLST"
-	},
-	{
-		"Pacific Standard Time", "Pacific Daylight Time",
-		"PST", "PDT"
-	},
-	{
-		"Romance Standard Time", "Romance Daylight Time",
-		"CET", "CEST"
-	},
-	{
-		"Russian Standard Time", "Russian Daylight Time",
-		"MSK", "MSD"
-	},
-	{
-		"SA Eastern Standard Time", "SA Eastern Daylight Time",
-		"ART", "ARST"
-	},
-	{
-		"SA Pacific Standard Time", "SA Pacific Daylight Time",
-		"COT", "COST"
-	},
-	{
-		"SA Western Standard Time", "SA Western Daylight Time",
-		"VET", "VET"
-	},
-	{
-		"Samoa Standard Time", "Samoa Daylight Time",
-		"SST", "NDT"
-	},
-	{
-		"SE Asia Standard Time", "SE Asia Daylight Time",
-		"ICT", "ICT"
-	},
-	{
-		"Malay Peninsula Standard Time", "Malay Peninsula Daylight Time",
-		"MYT", "MALST"
-	},
-	{
-		"South Africa Standard Time", "South Africa Daylight Time",
-		"CAT", "CAT"
-	},
-	{
-		"Sri Lanka Standard Time", "Sri Lanka Daylight Time",
-		"LKT", "IST"
-	},
-	{
-		"Taipei Standard Time", "Taipei Daylight Time",
-		"CST", "CDT"
-	},
-	{
-		"Tasmania Standard Time", "Tasmania Daylight Time",
-		"EST", "EST"
-	},
-	{
-		"Tokyo Standard Time", "Tokyo Daylight Time",
-		"JST", "JDT"
-	},
-	{
-		"Tonga Standard Time", "Tonga Daylight Time",
-		"TOT", "TOST"
-	},
-	{
-		"US Eastern Standard Time", "US Eastern Daylight Time",
-		"EST", "EDT"
-	},
-	{
-		"US Mountain Standard Time", "US Mountain Daylight Time",
-		"MST", "MDT"
-	},
-	{
-		"Vladivostok Standard Time", "Vladivostok Daylight Time",
-		"VLAT", "VLAST"
-	},
-	{
-		"W. Australia Standard Time", "W. Australia Daylight Time",
-		"WST", "WST"
-	},
-
-	/* Not mapped in PostgreSQL.
-	 *
-	 * I mapped this based on the following information... -- rlaager
-	 * $ cd /usr/share/zoneinfo/Africa
-	 * $ for i in * ; do echo `TZ=Africa/$i date +"%z %Z"` $i ; done | grep +0100
-	 * +0100 CET Algiers
-	 * +0100 WAT Bangui
-	 * +0100 WAT Brazzaville
-	 * +0100 CET Ceuta
-	 * +0100 WAT Douala
-	 * +0100 WAT Kinshasa
-	 * +0100 WAT Lagos
-	 * +0100 WAT Libreville
-	 * +0100 WAT Luanda
-	 * +0100 WAT Malabo
-	 * +0100 WAT Ndjamena
-	 * +0100 WAT Niamey
-	 * +0100 WAT Porto-Novo
-	 * +0100 CET Tunis
-	 **/
-	{
-		"W. Central Africa Standard Time", "W. Central Africa Daylight Time",
-		"WAT", "WAT"
-	},
-
-	{
-		"W. Europe Standard Time", "W. Europe Daylight Time",
-		"CET", "CEST"
-	},
-	{
-		"West Asia Standard Time", "West Asia Daylight Time",
-		"PKT", "PKST"
-	},
-	{
-		"West Pacific Standard Time", "West Pacific Daylight Time",
-		"ChST", "ChST"
-	},
-	{
-		"Yakutsk Standard Time", "Yakutsk Daylight Time",
-		"YAKT", "YAKST"
-	},
-	{
-		NULL, NULL,
-		NULL, NULL
-	}
-};
-
-const char *
-wpurple_get_timezone_abbreviation(const struct tm *tm)
-{
-	int i;
-	char tzname[128];
-	char localtzname[256];
-	HKEY rootKey;
-	int idx;
-
-	if (!tm)
-	{
-		purple_debug_warning("wpurple", "could not determine current date/time: localtime failed\n");
-		return "";
-	}
-
-	if (strftime(tzname, sizeof(tzname) - 1, "%Z", tm) == 0)
-	{
-		purple_debug_error("wpurple", "timezone name is too long for the buffer\n");
-		return "";
-	}
-
-	for (i = 0; win32_tzmap[i].wstd != NULL; i++)
-	{
-		if (purple_strequal(tzname, win32_tzmap[i].wstd))
-		{
-			/* Cache the Result */
-			if (i > 0) {
-				if (win32_tzmap[0].wstd[0] != '\0')
-					g_free(win32_tzmap[0].wstd);
-				win32_tzmap[0].wstd = g_strdup(tzname);
-				win32_tzmap[0].ustd = win32_tzmap[i].ustd;
-			}
-
-			return win32_tzmap[i].ustd;
-		}
-		if (purple_strequal(tzname, win32_tzmap[i].wdst))
-		{
-			/* Cache the Result */
-			if (i > 0) {
-				if (win32_tzmap[0].wdst[0] != '\0')
-					g_free(win32_tzmap[0].wdst);
-				win32_tzmap[0].wdst = g_strdup(tzname);
-				win32_tzmap[0].udst = win32_tzmap[i].udst;
-			}
-
-			return win32_tzmap[i].udst;
-		}
-	}
-
-	/*
-	 * Localized Windows versions return localized names for the timezone.
-	 * Scan the registry to find the English name, and then try matching
-	 * against our table again.
-	 */
-	memset(localtzname, 0, sizeof(localtzname));
-	if (RegOpenKeyEx(HKEY_LOCAL_MACHINE,
-			   "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones",
-					 0,
-					 KEY_READ,
-					 &rootKey) != ERROR_SUCCESS)
-	{
-		purple_debug_warning("wpurple", "could not open registry key to identify Windows timezone: %i\n", (int) GetLastError());
-		return "";
-	}
-
-	for (idx = 0;; idx++)
-	{
-		char keyname[256];
-		char zonename[256];
-		DWORD namesize;
-		FILETIME lastwrite;
-		HKEY key;
-		LONG r;
-
-		memset(keyname, 0, sizeof(keyname));
-		namesize = sizeof(keyname);
-		if ((r = RegEnumKeyEx(rootKey,
-							  idx,
-							  keyname,
-							  &namesize,
-							  NULL,
-							  NULL,
-							  NULL,
-							  &lastwrite)) != ERROR_SUCCESS)
-		{
-			if (r == ERROR_NO_MORE_ITEMS)
-				break;
-			purple_debug_warning("wpurple", "could not enumerate registry subkeys to identify Windows timezone: %i\n", (int) r);
-			break;
-		}
-
-		if ((r = RegOpenKeyEx(rootKey, keyname, 0, KEY_READ, &key)) != ERROR_SUCCESS)
-		{
-			purple_debug_warning("wpurple", "could not open registry subkey to identify Windows timezone: %i\n", (int) r);
-			break;
-		}
-
-		memset(zonename, 0, sizeof(zonename));
-		namesize = sizeof(zonename);
-		if ((r = RegQueryValueEx(key, "Std", NULL, NULL, (LPBYTE)zonename, &namesize)) != ERROR_SUCCESS)
-		{
-			purple_debug_warning("wpurple", "could not query value for 'std' to identify Windows timezone: %i\n", (int) r);
-			RegCloseKey(key);
-			break;
-		}
-		if (purple_strequal(tzname, zonename))
-		{
-			/* Matched zone */
-			g_strlcpy(localtzname, keyname, sizeof(localtzname));
-			RegCloseKey(key);
-			break;
-		}
-		memset(zonename, 0, sizeof(zonename));
-		namesize = sizeof(zonename);
-		if ((r = RegQueryValueEx(key, "Dlt", NULL, NULL, (LPBYTE)zonename, &namesize)) != ERROR_SUCCESS)
-		{
-			purple_debug_warning("wpurple", "could not query value for 'dlt' to identify Windows timezone: %i\n", (int) r);
-			RegCloseKey(key);
-			break;
-		}
-		if (purple_strequal(tzname, zonename))
-		{
-			/* Matched DST zone */
-			g_strlcpy(localtzname, keyname, sizeof(localtzname));
-			RegCloseKey(key);
-			break;
-		}
-
-		RegCloseKey(key);
-	}
-
-	RegCloseKey(rootKey);
-
-	if (localtzname[0])
-	{
-		/* Found a localized name, so scan for that one too */
-		for (i = 0; win32_tzmap[i].wstd != NULL; i++)
-		{
-			if (purple_strequal(localtzname, win32_tzmap[i].wstd))
-			{
-				/* Cache the Result */
-				if (win32_tzmap[0].wstd[0] != '\0')
-					g_free(win32_tzmap[0].wstd);
-				win32_tzmap[0].wstd = g_strdup(tzname);
-				win32_tzmap[0].ustd = win32_tzmap[i].ustd;
-
-				return win32_tzmap[i].ustd;
-			}
-			if (purple_strequal(localtzname, win32_tzmap[i].wdst))
-			{
-				/* Cache the Result */
-				if (win32_tzmap[0].wdst[0] != '\0')
-					g_free(win32_tzmap[0].wdst);
-
-				win32_tzmap[0].wdst = g_strdup(tzname);
-				win32_tzmap[0].udst = win32_tzmap[i].udst;
-
-				return win32_tzmap[i].udst;
-			}
-		}
-	}
-
-	purple_debug_warning("wpurple", "could not find a match for Windows timezone \"%s\"\n", tzname);
-	return "";
-}
--- a/libpurple/win32/libc_internal.h	Fri Jul 14 13:22:50 2017 -0500
+++ b/libpurple/win32/libc_internal.h	Wed Apr 25 15:40:00 2018 -0500
@@ -29,9 +29,6 @@
 extern "C" {
 #endif /* __cplusplus */
 
-/* helper for purple_utf8_strftime() by way of purple_internal_strftime() in src/util.c */
-const char *wpurple_get_timezone_abbreviation(const struct tm *tm);
-
 /* sys/socket.h */
 int wpurple_socket(int domain, int style, int protocol);
 int wpurple_connect(int socket, struct sockaddr *addr, u_long length);

mercurial