Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 319795 - Step into included file happens at wrong line of source code
Summary: Step into included file happens at wrong line of source code
Status: REOPENED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: PDT (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows XP
: P1 normal (vote)
Target Milestone: ---   Edit
Assignee: PHP UI CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-07-13 18:40 EDT by James McCall CLA
Modified: 2020-05-14 10:16 EDT (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description James McCall CLA 2010-07-13 18:40:46 EDT
Build Identifier: 20100617-1415

I have recorded a screen capture and commentary and posted it to Youtube here: http://www.youtube.com/watch?v=IGJpDdE0I_w

Running a remote debug of server side PHP script on Apache. XDebug version 2.1.0 is in use.
I put a breakpoint in my code then step towards an "include( )" function call.
It steps into the included file on the line before the include statement.
The library has been refreshed and the web server restarted.
It seems to be a symptom of a deeper problem because if I put a breakpoint inside the included file and "Resume (F8)" from the first breakpoint, rather than stepping into, then the second breakpoint isn't hit at all. In fact the web app. just seems to hang in some lost/suspended state.
 

Reproducible: Always

Steps to Reproduce:
Not sure how I would reproduce this on any code but that which I am running. However the video posted to YouTube (http://www.youtube.com/watch?v=IGJpDdE0I_w) shows it quite clearly and I'm happy to help, within my newcomer abilities.
Comment 1 David Kelsey CLA 2010-07-14 03:34:31 EDT
Thanks for the you tube video, that was very interesting.

The behaviour does appear to be odd, so here are some things that are worth checking.

1. Double check that the files in your eclipse project are the exact same versions as those running on the web server, just in case.

2. could you try using xdebug 2.0.5 and see if you get the same problems

3. We will need to capture an xdebug log of the failing scenarios (It would be great if you could also annotate in the log each of the scenarios). So this way we can see how PDT and xdebug are interating. To generate the log add the following to you php.ini file.
xdebug.remote_log=c:\xdebug.log

storing the file in an appropriate location on the file system of course.


4. check your path mappings for your server. (These can be found when you configure your server in the path mapping tab. You can configure your server from the debug configuration you have). You may want to clear any path mappings in case they are old.


Thanks.
Comment 2 David Kelsey CLA 2010-09-20 11:48:08 EDT
unable to recreate and no feedback from bug reporter. Marking as resolved
Comment 3 James McCall CLA 2010-09-20 13:48:30 EDT
This is not resolved. I was waiting for a response from you guys. I had done all you asked and sent the results.
Comment 4 David Kelsey CLA 2010-09-21 03:29:32 EDT
Sorry where did you post the results ? This bugzilla entry doesn't have anything after my append to request more info.

Sorry
Comment 5 James McCall CLA 2010-10-19 11:26:47 EDT
(In reply to comment #4)

I have installed a brand new web server and now have a chance to take a look at this again.

First of all the step-into thing is a complete red-herring. It is simply because it is a single statement which is split across two lines, the second line is not within braces.

The big problem is the second part, with breakpoints. It is more succinctly shown in this video:
http://www.youtube.com/watch?v=jb0lOI4hL08

Basically if there is a breakpoint set in an included file then all breakpoints are ignored.

Even with a brand new installation on a new computer I get the same behaviour. 

Note that the included files are not in a subdirectory of the web project root - they have been included in the project as libraries, added as an external source folder (ie. opened the project properties, when to the Libraries tab and clicked the [Add External Source Folder …] button).

Thanks again,
James