--- freeWAIS-sf-2.2.14/lib/ir/ircfiles.c	Thu Jun  8 08:33:10 2000
+++ /home/wosch/tmp/freewais-sf/work/freeWAIS-sf-2.2.14/lib/ir/ircfiles.c	Sun Oct 22 23:57:32 2000
@@ -1419,24 +1419,30 @@
 
   while(!isdigit(*temp)) temp++;
 
-  sscanf(temp, "%d %25s %d", &day, cmonth, &year);
+  sscanf(temp, "%d %3s %4d", &day, cmonth, &year);
+  /* fprintf(stderr, "XXX %s", temp); */
 
   for(month = 0; months[month] != NULL; month++)
     if(!strcmp(cmonth, months[month])) break;
 
-  if (year > 99) year = year % 100;
+  if (year >= 1900) year = year - 1900;
+  /* fprintf(stderr, "%s X %d-%d-%d\n", temp, year, month, day);  */
 
   if(day > 0 && 
      month < 12 &&
      year > 0) {
     return (10000 * year + 100 * (month+1) + day);
   }
+  return 0;
+
+  /* fprintf(stderr, "%s X %d-%d-%d\n", temp, year, month, day); */
 
   month = -1; day = -1; year = -1;
 
   sscanf(temp, "%d/%d/%d", &month, &day, &year);
 
   if (year > 99) year = year % 100;
+  /* fprintf(stderr, "%s X %d-%d-%d\n", temp, year, month, day); */
 
   if(day > 0 && 
      month < 12 &&
@@ -1447,6 +1453,7 @@
   month = -1; day = -1; year = -1;
 
   sscanf(temp, "%d/%d/%d", &year, &month, &day);
+  /* fprintf(stderr, "%s X %d-%d-%d\n", temp, year, month, day); */
 
   if (year > 99) year = year % 100;
 
@@ -1459,6 +1466,7 @@
   temp = date;
 
   sscanf(temp, "%5s %25s %d %10s %d", dow, cmonth, &day, tod, &year);
+  /* fprintf(stderr, "%s X %d-%d-%d\n", temp, year, month, day); */
 
   for(month = 0; months[month] != NULL; month++)
     if(!strcmp(cmonth, months[month])) break;
