[Chugalug] Calculating the next Thanksgivukkah
Robert A. Kelly III
bluethegrappler at gmail.com
Wed Oct 9 01:39:34 UTC 2013
On 10/08/2013 08:41 PM, Wil Wade wrote:
> 79811 according to http://message.snopes.com/showthread.php?t=84036
> (Depending on how you count day vs night). Although calculating it
> yourself is so much more fun.
> I get a date overflow error before I find another Thanksgivukkah.
> Are you running it on a 64bit computer? Shouldn't have an issue getting
> to 79811 in Unixtime with 64bits.
I found the problem in the HebToJul() function in hbcal.c:
int HebToJul(int hy, int hm, int hd)
char const *monlens;
/* Do some range checking */
if (hy - 3761 < BASE || hy - 3760 > BASE+YR_RANGE) return -1;
ylen = DaysInHebYear(hy);
monlens = DaysInHebMonths(ylen);
/* Get the Rosh Hashana of the year */
rh = RoshHashana(hy);
/* Bump up to the appropriate month */
for (m=0; m<hm; m++) rh += monlens[m];
/* Add in appropriate number of days */
rh += hd - 1;
When this function returns <0, GetNextHebrewDate() returns E_DATE_OVER.
Quick and dirty fix, commenting out the range checking line allowed me
to determine that the next date of Thanksgivukkah is indeed November 23,
More information about the Chugalug