Bug #63486 [Com]: mysqli_free_result leave the resource variable in a messy state

From: Date: Fri, 16 Jan 2015 08:57:50 +0000
Subject: Bug #63486 [Com]: mysqli_free_result leave the resource variable in a messy state
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-189985@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=63486&edit=1

 ID:                 63486
 Comment by:         hans dot puac at gmail dot com
 Reported by:        derick@php.net
 Summary:            mysqli_free_result leave the resource variable in a
                     messy state
 Status:             Verified
 Type:               Bug
 Package:            MySQLi related
 PHP Version:        5.4.8
 Assigned To:        mysql
 Block user comment: N
 Private report:     N

 New Comment:

This Problem still exists in different PHP-Versions.
I got it in 5.5.9 and 5.6.3 with XAMPP on Windows 7.
Please fix this bug!

And here a little workaround for all developer who want to use xDebug now.
function free_result_fix(&$rs){
  $out = mysqli_free_result($rs);
  $rs = null;
  return $out;
}

Replace every mysqli_free_result with the free_result_fix and xDebug will work :-)


Previous Comments:
------------------------------------------------------------------------
[2014-02-28 08:20:07] hugh dot messenger at gmail dot com

Pretty please can someone take a look at this?  It's still making it almost impossible to
xdebug anything that involves MySQLi.

------------------------------------------------------------------------
[2014-02-28 03:34:05] exsysemchina at gmail dot com

Please fix this bug as soon as possible, otherwise debugging is painful with XDebug when fighting
with MYSQLi.

------------------------------------------------------------------------
[2013-07-19 12:35:16] suchy63 at hotmail dot com

I'm experiencing this problem as well, both in 5.4 and 5.5, and it's very problematic. It
makes it impossible for me to upgrade past 5.3. Our application has a custom error handler which
throws an exception if error is below the reporting level. I an unable to step over the code after a
breakpoint. The error handler is triggered and I am booted to the error page after an uncaught
exception.

------------------------------------------------------------------------
[2013-05-08 06:20:57] hugh dot messenger at gmail dot com

Just wondering if anyone has given this any thought recently?  It's been 
absolutely crippling my xdebug usage since upgrading to 5.4.14 a month ago.  I'd 
vote for including it in the next release of 5.4, given that as far as I can tell, 
most of the world is only just now starting to move from 5.3 to 5.4 as their 
minimum requirement / standard development version, so punting this till 5.5 is 
going to mean a long time for us work-a-day application developers having to deal 
with page upon page upon page of "can't fetch result" and "property access"

warnings on xdebug sessions.  Or at the very least, make it a notice instead of a 
warning.  My $0.02.

------------------------------------------------------------------------
[2013-01-30 12:56:09] dev at pp3345 dot net

Hello,

I've also experienced this bug in the past, using reflection on a freed resource. 
Are there any news on when the bug fix will be included in PHP? I think it 
wouldn't be a problem to include it in the next PHP 5.4/5.3 release since a ton of 
warnings isn't intended behavior. At least it should be in PHP 5.5.

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=63486


--
Edit this bug report at https://bugs.php.net/bug.php?id=63486&edit=1


Thread (24 messages)

« previous php.bugs (#189985) next »