chiark / gitweb /
Merge some more mini-Disobedience work
[disorder] / lib / xgetdate.c
index de1c4d3c56f1cd867e07fc1d0ef72322d73f1ace..ae9e183ab448518a68887a67b1afc9c48cae9cfa 100644 (file)
@@ -1,7 +1,11 @@
-/* Derived from getdate.c in glibc 2.3.6.  This is pretty much
+/** @file lib/xgetdate.c
+ * @brief Date parsing
+ *
+ * Derived from getdate.c in glibc 2.3.6.  This is pretty much
  * standard getdate() except that you supply the template in an
  * argument, rather than messing around with environment variables and
- * files.  */
+ * files.
+ */
 
 /* Convert a string representation of time to a time value.
    Copyright (C) 1997,1998,1999,2000,2001,2003 Free Software Foundation, Inc.
@@ -23,6 +27,7 @@
    Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
    02111-1307 USA.  */
 
+#define _GNU_SOURCE 1          /* to expose strptime */
 #include <limits.h>
 #include <stdio.h>
 #include <stdlib.h>
@@ -30,6 +35,7 @@
 #include <time.h>
 
 #include "dateparse.h"
+#include "strptime.h"
 
 #define TM_YEAR_BASE 1900
 
@@ -52,7 +58,7 @@ static int check_mday (int year, int mon, int mday);
      8  invalid input specification Example: February 31 or a time is
         specified that can not be represented in a time_t (representing
        the time in seconds since 00:00:00 UTC, January 1, 1970) */
-int xgetdate_err;
+/*int xgetdate_err;*/
 
 
 /* Returns the first weekday WDAY of month MON in the year YEAR.  */
@@ -129,7 +135,7 @@ xgetdate_r (const char *string, struct tm *tp,
       tp->tm_isdst = -1;
       tp->tm_gmtoff = 0;
       tp->tm_zone = NULL;
-      result = strptime (string, line, tp);
+      result = my_strptime (string, line, tp);
       if (result && *result == '\0')
        break;
     }
@@ -208,7 +214,7 @@ xgetdate_r (const char *string, struct tm *tp,
 }
 
 
-
+#if 0
 struct tm *
   xgetdate (const char *string, const char *const *template)
 {
@@ -218,9 +224,10 @@ struct tm *
 
   if (errval != 0)
     {
-      getdate_err = errval;
+      xgetdate_err = errval;
       return NULL;
     }
 
   return &tmbuf;
 }
+#endif