+\r
+const time_t DateTime::TimeGM(struct tm *gmtimein)\r
+{\r
+ //This looks good but I don't think will work when TZ isn't set (Windows)\r
+ //http://developer.apple.com/documentation/Darwin/Reference/ManPages/man3/timegm.3.html\r
+ \r
+ //This should work\r
+ //http://lists2.ais.fraunhofer.de/pipermail/emx/1999-September/000874.html\r
+\r
+ struct tm ttm;\r
+ time_t t, t2;\r
+\r
+ ttm = *gmtimein; /* make a local copy to fiddle with */\r
+ ttm.tm_isdst = 0; /* treat it as standard time */\r
+\r
+ t2 = t = mktime(&ttm); /* calculate the time as a local time */\r
+\r
+ ttm = *gmtime(&t2); /* now calculate the difference between */\r
+ ttm.tm_isdst = 0; /* gm and local time */\r
+ t2 = mktime(&ttm);\r
+\r
+ t += t - t2; /* and adjust our answer by that difference */\r
+ return t;\r
+}\r