From 0b0f21372fac57f71435152f3ed3b4fca0944e1a Mon Sep 17 00:00:00 2001 From: Kaihui Luo Date: Mon, 22 Sep 2008 19:02:36 -0700 Subject: [PATCH] --- yaml --- r: 111757 b: refs/heads/master c: 2cdc55751c33829f00510e0104562d0f8d8a9b85 h: refs/heads/master i: 111755: f2b2d182ebc67a5157a4f062b0b404c8c91a2ebb v: v3 --- [refs] | 2 +- trunk/net/netfilter/xt_time.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index 5ae5b9566da5..6780c60e6900 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 147e70e62fdd5af6263106ad634b03c5154c1e56 +refs/heads/master: 2cdc55751c33829f00510e0104562d0f8d8a9b85 diff --git a/trunk/net/netfilter/xt_time.c b/trunk/net/netfilter/xt_time.c index 9f328593287e..307a2c3c2df4 100644 --- a/trunk/net/netfilter/xt_time.c +++ b/trunk/net/netfilter/xt_time.c @@ -136,17 +136,19 @@ static void localtime_3(struct xtm *r, time_t time) * from w repeatedly while counting.) */ if (is_leap(year)) { + /* use days_since_leapyear[] in a leap year */ for (i = ARRAY_SIZE(days_since_leapyear) - 1; - i > 0 && days_since_year[i] > w; --i) + i > 0 && days_since_leapyear[i] > w; --i) /* just loop */; + r->monthday = w - days_since_leapyear[i] + 1; } else { for (i = ARRAY_SIZE(days_since_year) - 1; i > 0 && days_since_year[i] > w; --i) /* just loop */; + r->monthday = w - days_since_year[i] + 1; } r->month = i + 1; - r->monthday = w - days_since_year[i] + 1; return; }