Edit report at https://bugs.php.net/bug.php?id=62852&edit=1
ID: 62852 Updated by: [email protected] Reported by: kasper at webmasteren dot eu Summary: Unserialize Invalid Date causes crash Status: Re-Opened Type: Bug Package: Reproducible crash Operating System: windows, linux PHP Version: Irrelevant Assigned To: laruence Block user comment: N Private report: N New Comment: @reeze first: it's not about why he want to do this, like:"why do you want to unserialize a abnormal data?" and your new fix, will allow a incomplete date object in $foo, right? I don't this this fix is acceptable, the fix should warning about the wrong data, and result a NULL or FALSE. Previous Comments: ------------------------------------------------------------------------ [2012-09-16 02:31:20] [email protected] @laruence, What do you think about this, if you have any better solutions will be much appreciated :) ------------------------------------------------------------------------ [2012-09-16 02:23:42] [email protected] @tstarling the partially initialize problem could be fixed by adding and exception checking. (the attache patch is a fix for this) As the exception throwing, I think it's not bc break, since before the fix, it will just crash, fix the crash is not bc break, and the use could define __walkup method, it may throw exception too, so I think throw exception won't make unserialize inconsistant. Just my 2 cents; ------------------------------------------------------------------------ [2012-09-16 02:18:49] [email protected] The following patch has been added/updated: Patch Name: Fix-add-exception-checking Revision: 1347761929 URL: https://bugs.php.net/patch-display.php?bug=62852&patch=Fix-add-exception-checking&revision=1347761929 ------------------------------------------------------------------------ [2012-09-15 06:57:20] [email protected] closed by commit email, reopen ------------------------------------------------------------------------ [2012-09-15 04:26:07] [email protected] Yeah, the segfault is bad. but the test script is wired, why do you want to refer to it before wakeup? When construct the DateTime if invalid date it throw exception, so when unserialize from an invalid date throw exception is reasonable. ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=62852 -- Edit this bug report at https://bugs.php.net/bug.php?id=62852&edit=1
