-
Notifications
You must be signed in to change notification settings - Fork 118
Open
@earthiverse
Description
This one works fine:
enum Random: int { case One = 1; case Two = 2; case Three = 3; case Four = 4; case Five = 5; } $value = (object)[ 'one' => Random::One ]; $serialized = msgpack_serialize($value); $unserialized = msgpack_unserialize($serialized);
This one seems to fail with zend_mm_heap corrupted after running
enum Random: int { case One = 1; case Two = 2; case Three = 3; case Four = 4; case Five = 5; } $value = (object)[ 'one' => Random::One ]; $serialized = msgpack_serialize($value); $unserialized = msgpack_unserialize($serialized); $serialized2 = msgpack_serialize($value); $unserialized = msgpack_unserialize($serialized);
Using the object methods also fails:
$value = (object)[ 'one' => Random::One ]; $packer = new \MessagePack(true); $unpacker = new \MessagePackUnpacker(true); $serialized = $packer->pack($value); $unpacker->feed($serialized); $unpacker->execute(); $unserialized = $unpacker->data(); $unpacker->reset(); $serialized2 = $packer->pack($value); $unpacker->feed($serialized); $unpacker->execute(); $unserialized2 = $unpacker->data(); $unpacker->reset();
Errors in both
PHP 8.4.14 (cli) (built: Oct 24 2025 19:07:34) (NTS)
Copyright (c) The PHP Group
Built by https://github.com/docker-library/php
Zend Engine v4.4.14, Copyright (c) Zend Technologies
with Zend OPcache v8.4.14, Copyright (c), by Zend Technologies
with Xdebug v3.4.7, Copyright (c) 2002-2025, by Derick Rethans
and
PHP 8.4.16 (cli) (built: Dec 16 2025 16:03:34) (NTS)
Copyright (c) The PHP Group
Built by Homebrew
Zend Engine v4.4.16, Copyright (c) Zend Technologies
with Xdebug v3.5.0, Copyright (c) 2002-2025, by Derick Rethans
with Zend OPcache v8.4.16, Copyright (c), by Zend Technologies
Metadata
Metadata
Assignees
Labels
No labels