|  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #79270 segfault in with ReflectionFunction($functio)->getParameters()
Submitted: 2020-02-13 11:22 UTC Modified: -
Avg. Score:5.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:0 (0.0%)
Same OS:0 (0.0%)
From: martin dot aschenbrenner at erwinmueller dot de Assigned:
Status: Open Package: PDO ODBC
PHP Version: 7.3.14 OS: Linux Ubuntu 18.04 x86_64
Private report: No CVE-ID: None
View Add Comment Developer Edit
Welcome! If you don't have a Git account, you can't do anything here.
You can add a comment by following this link or if you reported this bug, you can edit this bug over here.
Block user comment
Status: Assign to:
Bug Type:
From: martin dot aschenbrenner at erwinmueller dot de
New email:
PHP Version: OS:


 [2020-02-13 11:22 UTC] martin dot aschenbrenner at erwinmueller dot de
getting randomly (approximately each second request) following segfault:

kernel: php-fpm7.3[17905]: segfault at 860 ip 00007f7e4e77cec0 sp 00007ffdcda8b040 error 4 in[7f7e4e765000+62000]

some strange behaviors:
- uncommenting line 17 fixes the issue.
- also execution someReflection() with same parameter and an even number of times the issue doesn't occur.

additional info:
- libodbc1 package: 2.3.4-1.1ubuntu3
- php is executed by fpm
- affects php versions 7.1.33, 7.2.27, 7.3.14, 7.4.2 (not more tested)

Test script:
class Core {
  public $conn;
  public function __construct() {
    $this->circularReference = $this;

  public function connect() {
    $this->conn = new PDO("odbc:mysql");

  public $stm;

  function createStm( string $foo ) {
    $this->stm = $this->conn->prepare("SELECT * FROM mytable");
//    $this->stm = NULL;

function someReflection( $function ) {
  $rParameters = (new \ReflectionFunction($function))->getParameters();


$app = new Core;


Add a Patch

Pull Requests

Add a Pull Request

PHP Copyright © 2001-2020 The PHP Group
All rights reserved.
Last updated: Sat Jul 04 16:01:27 2020 UTC