Add new $TrigAttempts special var.

This commit is contained in:
David F. Skoll
2012-12-09 11:17:16 -05:00
parent 292262c128
commit 9ef3be33e5
4 changed files with 10 additions and 2 deletions

View File

@@ -178,7 +178,7 @@
/*---------------------------------------------------------------------*/
/* How many attempts to resolve a weird date spec? */
/*---------------------------------------------------------------------*/
#define TRIG_ATTEMPTS 50
#define TRIG_ATTEMPTS 500
/*---------------------------------------------------------------------*/
/* How many global omits of the form YYYY MM DD do we handle? */

View File

@@ -88,6 +88,7 @@ EXTERN INIT( unsigned int IfFlags, 0);
EXTERN INIT( int LastTriggerDate, 0);
EXTERN INIT( int LastTrigValid, 0);
EXTERN INIT( int LastTriggerTime, 0);
EXTERN INIT( int TrigAttempts, 0);
EXTERN INIT( int ShouldCache, 0);
EXTERN char const *CurLine;
EXTERN INIT( int NumTriggered, 0);

View File

@@ -426,7 +426,10 @@ int ComputeTrigger(int today, Trigger *trig, int *err, int save_in_globals)
result;
trig->expired = 0;
if (save_in_globals) LastTrigValid = 0;
if (save_in_globals) {
LastTrigValid = 0;
TrigAttempts = 0;
}
/* Assume everything works */
*err = OK;
@@ -448,6 +451,9 @@ int ComputeTrigger(int today, Trigger *trig, int *err, int save_in_globals)
while (nattempts++ < TRIG_ATTEMPTS) {
if (save_in_globals) {
TrigAttempts = nattempts;
}
result = GetNextTriggerDate(trig, start, err, &nextstart);
/* If there's an error, die immediately */

View File

@@ -612,6 +612,7 @@ static SysVar SysVarArr[] = {
{"T", 0, SPECIAL_TYPE, trig_date_func, 0, 0 },
{"Td", 0, SPECIAL_TYPE, trig_day_func, 0, 0 },
{"TimeSep", 1, SPECIAL_TYPE, time_sep_func, 0, 0 },
{"TrigAttempts", 0, INT_TYPE, &TrigAttempts, 0, 0 },
{"Tm", 0, SPECIAL_TYPE, trig_mon_func, 0, 0 },
{"Tw", 0, SPECIAL_TYPE, trig_wday_func, 0, 0 },
{"Ty", 0, SPECIAL_TYPE, trig_year_func, 0, 0 },