View Issue Details

IDProjectCategoryView StatusLast Update
0002085XdebugCode Coveragepublic2022-05-11 13:38
Reporterrayperea Assigned Toderick  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionwon't fix 
PlatformLinuxOSArch LinuxOS VersionRoling Release
Product Version3.1.2 
Fixed in Version3.1dev 
Summary0002085: Crash when used with source guardian encoded files
Description

When including files that are encoded with source guardian (https://www.sourceguardian.com/) I get a segmentation fault
This only happens when collecting coverage with filters set

Steps To Reproduce

First, you must be able to run files using the Source Guardian loaders. So install the loaders for your system
https://www.sourceguardian.com/loaders.html

Next, you'll need to encode a file with the Source Guardian encoder. You can sign up for a 14 day trial.
The file can be as simple as: echo "Hello World"; You can name it whatever you want, I named it encoded.php so the attached file has that as the file to include.

Next, execute the php file that's attached with the following command:
php -dxdebug.mode=coverage test1.php

I get the following:
Segmentation fault (core dumped)

It works fine on the non encoded version of the file
And if I take out the xdebug_set_filter call, it works fine on the encoded file.

I suspect that the issue has something to do with xdebug_set_filter

TagsNo tags attached.
Operating SystemArch Linux
PHP Version8.1.0-8.1.4

Activities

rayperea

2022-04-26 23:31

reporter  

test1.php (256 bytes)   
<?php

xdebug_set_filter(
	XDEBUG_FILTER_CODE_COVERAGE,
	XDEBUG_PATH_INCLUDE,
	["src/"]
);
xdebug_start_code_coverage(XDEBUG_CC_UNUSED);

require_once "encoded.php";

$coverage = xdebug_get_code_coverage();
xdebug_stop_code_coverage();
print_r($coverage);
test1.php (256 bytes)   

derick

2022-04-27 17:31

administrator   ~0006279

Hi,

sorry, but I am not going to install software and closed binaries to fix a compatibility issue with a proprietary third party closed-source extension. If you want to have Xdebug work together with that, you're going to have to get them to provide a pull request to fix it.

cheers,
Derick

rayperea

2022-04-27 18:31

reporter   ~0006280

Hi Derick
No problem, I fully understand. However, I think I know where the issue is.
Can I submit a pull request? The reason I'm asking is that I doubt that they'll spend time fixing a piece of software that isn't theirs.

derick

2022-04-27 18:36

administrator   ~0006281

Certainly, have a look at the contributing guidelines at https://github.com/xdebug/xdebug/blob/master/CONTRIBUTING.rst, and let me know if you have questions.

rayperea

2022-05-11 06:23

reporter   ~0006293

Hi Derick
I've pinpointed the issue and reason it crashes and I have a fix.
I've submitted a pull request
https://github.com/xdebug/xdebug/pull/836

derick

2022-05-11 13:38

administrator   ~0006296

I've merged this into the Xdebug 3.1 and master branches.

Thanks for the patch!

cheers,
Derick

Issue History

Date Modified Username Field Change
2022-04-26 23:31 rayperea New Issue
2022-04-26 23:31 rayperea File Added: test1.php
2022-04-27 17:31 derick Assigned To => derick
2022-04-27 17:31 derick Status new => resolved
2022-04-27 17:31 derick Resolution open => won't fix
2022-04-27 17:31 derick Note Added: 0006279
2022-04-27 18:31 rayperea Note Added: 0006280
2022-04-27 18:36 derick Note Added: 0006281
2022-05-11 06:23 rayperea Note Added: 0006293
2022-05-11 13:38 derick Status resolved => closed
2022-05-11 13:38 derick Fixed in Version => 3.1dev
2022-05-11 13:38 derick Note Added: 0006296