php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #61925 Crashes on using variable equal to conditional shortcut
Submitted: 2012-05-03 16:12 UTC Modified: 2013-02-18 00:35 UTC
Votes:1
Avg. Score:3.0 ± 0.0
Reproduced:0 of 0 (0.0%)
From: alex dot erwin at dilithiumtoys dot com Assigned:
Status: No Feedback Package: *Programming Data Structures
PHP Version: 5.4.1 OS: Windows 7 32-bit
Private report: No CVE-ID: None
View Add Comment Developer Edit
Anyone can comment on a bug. Have a simpler test case? Does it work for you on a different platform? Let us know!
Just going to say 'Me too!'? Don't clutter the database with that please — but make sure to vote on the bug!
Your email address:
MUST BE VALID
Solve the problem:
30 - 2 = ?
Subscribe to this entry?

 
 [2012-05-03 16:12 UTC] alex dot erwin at dilithiumtoys dot com
Description:
------------
I am using Apache 2.4 with PHP 5.4 on Windows 7 32bit. When executing the code shown, from within a private class method, the server crashes. PHP is compiled as a DSO. If the code is changed to utilize long form conditional processing the execution works.

If I use the command line to execute the script, the class loaded by require does not get called.

// my index.php
require("C:/Infinity/application/shared/classes/a.php"); 
$x = new a();

// my a.php
class a { __constructor(){ $this->import_variables($_POST); }}

further code in test script.

Test script:
---------------
# retrieve caller name
$calledby = debug_backtrace(); print_r($calledby);
// does not work
$caller = (strlen($calledby[1]['class'])) ? $calledby[1]['class'] : $calledby[0]['class'];
// works and does does not segfault
if (strlen($calledby[1]['class']))  $caller = $calledby[1]['class'];
else                                $caller = $calledby[0]['class'];

# arguments are required
if (!func_num_args()) { return; }
# fill variables with argument contents if exists
$variables = (func_num_args() == 0) ? NULL : (is_array(func_get_arg(0)) ? func_get_arg(0) : NULL);

Expected result:
----------------
I expect that Apache will not SEGFAULT


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2012-09-12 02:34 UTC] reeze@php.net
Please try using this snapshot:

  http://snaps.php.net/php5.4-latest.tar.gz
 
For Windows:

  http://windows.php.net/snapshots/

Could you please try lastest version.

I can't reproduce it. http://3v4l.org/to5RB
 [2012-09-12 02:34 UTC] reeze@php.net
-Status: Open +Status: Feedback
 [2013-02-18 00:35 UTC] php-bugs at lists dot php dot net
No feedback was provided. The bug is being suspended because
we assume that you are no longer experiencing the problem.
If this is not the case and you are able to provide the
information that was requested earlier, please do so and
change the status of the bug back to "Open". Thank you.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Fri Apr 26 00:01:30 2024 UTC