Bug #76233 [Fbk->Opn]: php-cgi.exe crash (see small dump)

From: Date: Wed, 18 Apr 2018 17:44:42 +0000
Subject: Bug #76233 [Fbk->Opn]: php-cgi.exe crash (see small dump)
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-214802@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=76233&edit=1 ID: 76233 Updated by: cmb@php.net Reported by: 1978 dot jl at gmail dot com Summary: php-cgi.exe crash (see small dump) -Status: Feedback +Status: Open Type: Bug Package: CGI/CLI related Operating System: All Windows PHP Version: 5.6.35 -Assigned To: cmb +Assigned To: Block user comment: N Private report: N New Comment: Thanks for further investigation! Since this *may* be an ionCube issue, I suggest to contact them. Anyhow, I have to bail out here, since I'm neither an engine guru, nor accustomed to ionCube. Previous Comments: ------------------------------------------------------------------------ [2018-04-18 17:21:39] 1978 dot jl at gmail dot com Hi Christoph, after analyze with DebugDiag, the cause should be in a ioncube module (ioncube_loader_win_5.6.dll), the source code that cause this stack overflow seems to be : $property = null; // bad case $p = $my_object->$property; // seems to crash only when used in ioncube context, seems no crash if ioncube deactivated But I don't understand why this crash not appear on PHP 5.6.34 in same conditions. Greetings. ------------------------------------------------------------------------ [2018-04-18 13:18:19] cmb@php.net Okay, I was asking for a reproduce script, since the backtrace is not particularly helpful ("Stack unwind information not available. Following frames may be wrong."), and since the stack overflow might be caused by deep (infinite?) recursion in the userland code. Can you provide a debug backtrace[1]? Also note that PHP 5 will not receive normal bugfixes anymore, but only security fixes. So unless it can be shown that this issue is indeed a security issue, we won't fix it for PHP 5, so it might be best if you test the project under an actively supported PHP version[2] if possible. [1] <https://bugs.php.net/bugs-generating-backtrace-win32.php> [2] <http://www.php.net/supported-versions.php ------------------------------------------------------------------------ [2018-04-18 13:08:28] 1978 dot jl at gmail dot com Hi, Sorry, at this moment, we analyze the problem but the code is in a huge project, I couldn't extract a short script to reproduce this bug. Greetings. ------------------------------------------------------------------------ [2018-04-18 12:27:12] cmb@php.net Thank you for this bug report. To properly diagnose the problem, we need a short but complete example script to be able to reproduce this bug ourselves. A proper reproducing script starts with , is max. 10-20 lines long and does not require any external resources such as databases, etc. If the script requires a database to demonstrate the issue, please make sure it creates all necessary tables, stored procedures etc. Please avoid embedding huge scripts into the report. ------------------------------------------------------------------------ [2018-04-18 08:59:44] 1978 dot jl at gmail dot com Description: ------------ see dump Actual result: -------------- Microsoft (R) Windows Debugger Version 10.0.16299.91 X86 Copyright (c) Microsoft Corporation. All rights reserved. Loading Dump File [C:\ProgramData\Microsoft\Windows\WER\ReportQueue\AppCrash_php-cgi.exe_71738a7c251175f48a9d62b2d3d1120a0f92ce6_cab_462bffb4\WERFF4A.tmp.mdmp] User Mini Dump File: Only registers, stack and portions of memory are available Symbol search path is: srv* Executable search path is: Windows 7 Version 7601 (Service Pack 1) MP (4 procs) Free x86 compatible Product: WinNt, suite: SingleUserTS Machine Name: Debug session time: Wed Apr 18 10:55:55.000 2018 (UTC + 2:00) System Uptime: 19 days 0:03:27.782 Process Uptime: 0 days 0:00:03.000 ........................................................ Loading unloaded module list .. This dump file has an exception of interest stored in it. The stored exception information can be accessed via .ecxr. (198c.2324): Stack overflow - code c00000fd (first/second chance not available) *** ERROR: Symbol file could not be found. Defaulted to export symbols for php5ts.dll - eax=00063058 ebx=01f19950 ecx=00000002 edx=0fdda694 esi=00000002 edi=00000002 eip=0f931dfe esp=00063000 ebp=00063038 iopl=0 nv up ei pl zr na pe nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010246 php5ts!zend_parse_parameters+0x4e: 0f931dfe 56 push esi 0:000> k # ChildEBP RetAddr WARNING: Stack unwind information not available. Following frames may be wrong. 00 00063038 0f931dd9 php5ts!zend_parse_parameters+0x4e 01 00063050 0fa89b51 php5ts!zend_parse_parameters+0x29 02 00063070 0f91a93f php5ts!spl_iterator_apply+0x13f61 03 000630b4 0f94bad7 php5ts!emalloc+0x3f 04 00000000 00000000 php5ts!function_add_ref+0x6f7 ------------------------------------------------------------------------ -- Edit this bug report at https://bugs.php.net/bug.php?id=76233&edit=1

« previous php.bugs (#214802) next »