Menu

Debugger does not work

2017-07-17
2017-07-17
  • John Arnold

    John Arnold - 2017-07-17

    Eclipse Neon, Strawberry Perl 5.26.0.1 (May 2017), PadWalker 2.2 installed

    Symptoms: Simple script to test debug.
    Start debug, perspective opens and breaks at 1st line.
    Hit Resume, break stays on 1st line
    Hit resume again, executes next line of code yet stays on 1st line. Resume icon deemphasised - cannot continue
    Note no variables displayed in Variables pane

     
  • Volker Pissors

    Volker Pissors - 2017-11-14

    Eclipse IDE for Java Developers 4.5.0.20150621-1200
    EPIC 0.6.57 org.epic.feature.main.feature.group Epic Project

    I see the same symtoms John Arnold reported. I tried to explore the root cause:
    The communication between Eclipse and Perl (cygwin perl 5.26 version) is using a socket. The messages sent by Eclipse to Perl (perl5db.pl) are catched by the recv() function using the socket handle. With Perl 5.26 a handle using utf-8 layer is not allowed anymore with recv() function. Initially the socket is opended without utf-8 layer. But after generating the first debug command (step over or so) the socket handle gets extended by the utf-8 layer. Subsequently all debugging actions are brocken between Eclipse and Perl. The utf-8 layer extension is done in dumpvar_epic.pm (generated in the .metadata folder org.epic.debug):
    binmode($DB::OUT, ":utf8");

    2 alternative solutions I see (may be not correct):
    1. disable this binmode line in dumpvar_expic.pm (might not be a good choice if source code under debug is using utf-8 coding)
    2. add the line binmode $IN, ":raw"; in front of the recv() loop in perl5db.pl (perl5db.pl is owned by the perl developer group but this code is patched by EPIC for reliable break point reasons)

     

Log in to post a comment.