The PHP C extension segfaults when `serialize()` is called on a protobuf message. > [!IMPORTANT] > This is a unusual use case but the extension should not crash if a proto message is serialize by mistake. ---- **What version of protobuf and what language are you using?** Version: main Language: php OS: Linux **What did you do?** ```php <?php # serialize_segfault.php require_once (dirname(__DIR__) . '/vendor/autoload.php'); use Foo\TestMessage; $msg = new TestMessage(['optional_string' => "Hello, World!"]); serialize($msg); ``` ```bash # Compile the extension ./php/tests/compile_extension.sh # Run script php -d display_errors=on -dextension=../ext/google/protobuf/modules/protobuf.so serialize_segfault.php ``` **What did you expect to see** ``` # no errors. ``` **What did you see instead?** ``` Segmentation fault ``` Patch [here](https://github.com/ChessCom/protobuf/commit/fd853cd66c3ab4dbafeb0b4c43d4b71c21f090c6)