diff options
Diffstat (limited to 'www/firefox3-devel/files/patch-bugzilla361075')
-rw-r--r-- | www/firefox3-devel/files/patch-bugzilla361075 | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/www/firefox3-devel/files/patch-bugzilla361075 b/www/firefox3-devel/files/patch-bugzilla361075 new file mode 100644 index 000000000..e03e3656a --- /dev/null +++ b/www/firefox3-devel/files/patch-bugzilla361075 @@ -0,0 +1,60 @@ +Index: js/src/prmjtime.c +=================================================================== +RCS file: /cvsroot/mozilla/js/src/prmjtime.c,v +retrieving revision 3.55 +diff -u -p -d -8 -r3.55 prmjtime.c +--- js/src/prmjtime.c 13 Nov 2006 21:33:06 -0000 3.55 ++++ js/src/prmjtime.c 17 Nov 2006 21:30:44 -0000 +@@ -341,44 +341,47 @@ PRMJ_basetime(JSInt64 tsecs, PRMJTime *p + JSInt32 yday = 0; + JSInt32 mday = 0; + JSInt32 wday = 6; /* start on a Sunday */ + JSInt32 days = 0; + JSInt32 seconds = 0; + JSInt32 minutes = 0; + JSInt32 hours = 0; + JSInt32 isleap = 0; ++ ++ /* Temporaries used for various computations */ + JSInt64 result; + JSInt64 result1; + JSInt64 result2; ++ + JSInt64 base; + + /* Some variables for intermediate result storage to make computing isleap + easier/faster */ + JSInt32 fourCenturyBlocks; + JSInt32 centuriesLeft; + JSInt32 fourYearBlocksLeft; + JSInt32 yearsLeft; + + /* Since leap years work by 400/100/4 year intervals, precompute the length + of those in seconds if they start at the beginning of year 1. */ + JSInt64 fourYears; + JSInt64 century; + JSInt64 fourCenturies; + ++ JSLL_UI2L(result, PRMJ_DAY_SECONDS); ++ + JSLL_I2L(fourYears, PRMJ_FOUR_YEARS_DAYS); +- JSLL_MUL(fourYears, fourYears, PRMJ_DAY_SECONDS); ++ JSLL_MUL(fourYears, fourYears, result); + + JSLL_I2L(century, PRMJ_CENTURY_DAYS); +- JSLL_MUL(century, century, PRMJ_DAY_SECONDS); ++ JSLL_MUL(century, century, result); + + JSLL_I2L(fourCenturies, PRMJ_FOUR_CENTURIES_DAYS); +- JSLL_MUL(fourCenturies, fourCenturies, PRMJ_DAY_SECONDS); +- +- JSLL_UI2L(result,0); ++ JSLL_MUL(fourCenturies, fourCenturies, result); + + /* get the base time via UTC */ + base = PRMJ_ToExtendedTime(0); + JSLL_UI2L(result, PRMJ_USEC_PER_SEC); + JSLL_DIV(base,base,result); + JSLL_ADD(tsecs,tsecs,base); + + /* Compute our |year|, |isleap|, and part of |days|. When this part is |