Menu

#2855 squirrelmail-20200812_0200-SVN.stable - PHP warning non numeric value in date.php line 90

Produces PHP errors
pending-out-of-date
date (1)
3
2025-03-14
2020-08-12
Arno
No

Hello,

I am still happily using SquirrelMail in 2020, keep up the good work !

Currently running on Apache 2.4.46 / PHP 7.4.9 and it seems to work apart from one minor glitch:

Version installed:

squirrelmail-20200812_0200-SVN.stable

PHP warning:

A non-numeric value encountered in /volumes/www/secure/private/mail/functions/date.php on line 90

I fixed it with this patch, which seems to work fine. As always; It works for me ;-)

Maybe my fix is of use to others.

Kind regards,

Arno

*** functions/date.php.orig 2020-01-07 07:42:38.000000000 +0000
--- functions/date.php 2020-08-12 16:45:55.856538750 +0100
** function getGMTSeconds($stamp, $tzc) {
*** 87,93

}
$hh = substr($tzc,1,2);
$mm = substr($tzc,3,2);
! $iTzc = ($hh * 60 + $mm) * 60;
if ($neg) $iTzc = -1 * (int) $iTzc;
/
stamp in gmt
/
$stamp -= $iTzc;
--- 87,93 ----
}
$hh = substr($tzc,1,2);
$mm = substr($tzc,3,2);
! $iTzc = (intval($hh) * 60 + intval($mm)) * 60;
if ($neg) $iTzc = -1 * (int) $iTzc;
/
stamp in gmt */
$stamp -= $iTzc;

Discussion

  • Paul Lesniewski

    Paul Lesniewski - 2022-05-22
    • status: open --> pending
     
  • Paul Lesniewski

    Paul Lesniewski - 2022-05-22

    Can you indicate what timezone you are using? This seems to indicate a timezone that is not accounted for, so I'd like to add that to our code instead of obscuring the genesis of the issue.

    If you don't know for certain what the internal value of the timezone is, just go into date.php and at the top of the function getGMTSeconds() do something like this:

    echo "<hr />"; var_dump($tzc); echo "<hr />";

    Make sure to do that at the top of the function.

    Thanks for using SquirrelMail

     
  • Paul Lesniewski

    Paul Lesniewski - 2022-05-22
    • assigned_to: Paul Lesniewski
     
  • LadeSchale

    LadeSchale - 2022-12-11

    Hello Paul,

    i come from here https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=265395

    The echo in a mailbox with affected mails sounds like this, for one mail:
    string(5) "+0200"
    string(2) "UT"

    Mailheader looks like this, hopefully i guessed the right headers:
    for mail@example.com; Fri, 30 Sep 2016 18:41:57 +0100 (BST)
    and
    Date: Fri, 30 Sep 2016 17:41:57 UT

    Looks like some mua format their header like they want.

     
    • Paul Lesniewski

      Paul Lesniewski - 2025-03-14

      Sorry I didn't see this when you submitted, but I can't reproduce with that date header ending with "UT" under PHP8

      When you submitted this, were you running the latest version of 1.4.23-svn?

       
  • Paul Lesniewski

    Paul Lesniewski - 2025-03-14

    I haven't been able to verify this bug or get any working examples. If someone has this problem, please provide as much detail as possible - ideally fully message source but at least the headers, or the headers that cause this, as well as your SquirrelMail timezone setting.

    I suspect this change may have fixed this problem:
    https://sourceforge.net/p/squirrelmail/code/14978/

     
  • Paul Lesniewski

    Paul Lesniewski - 2025-03-14
    • status: pending --> pending-out-of-date
     

Log in to post a comment.

MongoDB Logo MongoDB