php5 crashed with SIGSEGV in execute()
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
php5 (Ubuntu) |
Invalid
|
Medium
|
Unassigned |
Bug Description
Binary package hint: php5
1. lsb_release -rd
Description: Ubuntu 9.10
Release: 9.10
2. php5:
Installed: (none)
Candidate: 5.2.10.
Version table:
5.
500 http://
500 http://
5.
500 http://
Crashes are random, I was unable to create a minimal test case.
ProblemType: Crash
Architecture: amd64
CrashCounter: 1
Date: Sun May 9 02:54:11 2010
DistroRelease: Ubuntu 9.10
ExecutablePath: /usr/bin/php5
NonfreeKernelMo
Package: php5-cli 5.2.10.
ProcCmdline: php wp-config.php
ProcEnviron:
SHELL=/bin/bash
LANG=en_US.UTF-8
ProcVersionSign
SegvAnalysis:
Segfault happened at: 0x68e333 <execute+195>: callq 0x45f0d8 <memset@plt>
PC (0x0068e333) ok
source "0x45f0d8" (0x0045f0d8) ok
Reason could not be automatically determined.
Signal: 11
SourcePackage: php5
StacktraceTop:
execute (op_array=
zend_do_
execute (op_array=
zend_do_
execute (op_array=
Title: php5 crashed with SIGSEGV in execute()
Uname: Linux 2.6.31-21-server x86_64
UserGroups:
visibility: | private → public |
Changed in php5 (Ubuntu): | |
status: | New → Triaged |
importance: | Undecided → Medium |
Attached is the test case that always reproduces this bug.
The bug is triggered when a child class calls a PHP4-style constructor from the base class which has both PHP4 and PHP5-style constructors and PHP4-style one calls PHP5-style one.
One example where this can happen is WordPress - its WP_Widget class has both constructors and PHP4-style one calls PHP5-style constructor. If a class that inherits from WP_Widget is unlucky enough to call parent::WP_Widget() instead of parent: :__construct( ), php crashes.