-
- Notifications
You must be signed in to change notification settings - Fork 45
Open
Description
Version: 3.3.1
PHP version: 8.4.1
Bug Description
Warning: unserialize(): Error at offset 0 of 26 bytes in /var/www/html/vendor/nette/caching/src/Caching/Storages/FileStorage.php on line 306 Deprecated: Automatic conversion of false to array is deprecated in /var/www/html/vendor/nette/caching/src/Caching/Storages/FileStorage.php on line 307 Warning: unserialize(): Error at offset 0 of 3 bytes in /var/www/html/vendor/nette/caching/src/Caching/Storages/FileStorage.php on line 306 Deprecated: Automatic conversion of false to array is deprecated in /var/www/html/vendor/nette/caching/src/Caching/Storages/FileStorage.php on line 307 Warning: unserialize(): Error at offset 0 of 26 bytes in /var/www/html/vendor/nette/caching/src/Caching/Storages/FileStorage.php on line 306 Deprecated: Automatic conversion of false to array is deprecated in /var/www/html/vendor/nette/caching/src/Caching/Storages/FileStorage.php on line 307 Notice: Possible problem: you are sending a HTTP header while already having some data in output buffer. Try Tracy\OutputDebugger or send cookies/start session earlier. in /var/www/html/vendor/nette/http/src/Http/Response.php on line 279
Steps To Reproduce
Happens occasionally on my production server, but the problem seems to be syntax-centered. The code around the problem is as follows:
$size = (int) stream_get_contents($handle, self::MetaHeaderLen); if ($size) { $meta = stream_get_contents($handle, $size, self::MetaHeaderLen); $meta = unserialize($meta); $meta[self::File] = $file; $meta[self::Handle] = $handle; return $meta; }
unserialize may return false, in which case the $meta variable shouldn't be be treated as an array. PHP's unserialize is a bit of a cursed function, though. Not very reliable.
Expected Behavior
No warnings.
Possible Solution
Metadata
Metadata
Assignees
Labels
No labels