Branch: Tag:

2013-06-10

2013-06-10 14:56:44 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Calendar.Timezone: Make compile() reentrant.

Each time compile() was called an additional set of rules
was appended. This could be triggered when a zone had
compilation errors.

Also fixes issue with throwing broken errors from compile().

1186:    float t1=time(t);   #endif    +  rules = ({});    foreach(lines, string line) add(line);       string c=dump();
1206:    {    int i=0;    foreach (c/"\n",string line) write("%2d: %s\n",++i,line); -  error(err); +  throw(err);    }    object zo=p();    if (zo->thezone) zo=zo->thezone;