Menu

Protoeditor DBG crashes

2007-08-09
2013-04-17
  • Pavel Shevaev

    Pavel Shevaev - 2007-08-09

    Hi, I'm using Protoeditor from Subversion and experience fatal crashes when debugging some scripts with DBG. It's obviously not DBG which causes Protoeditor to crash, since dbg-cli with DDD work just fine, it has something to do with Protoeditor itself :(

    I tried to debug Protoeditor and here's what I found out, hopefully it can help:

    1) Before crashing Protoeditor writes to console stuff like:

    protoeditor: +++++ Bug on PHPVariableParser!
    protoeditor: +++++ Bug on PHPPHPVariableParser!

    2) Debugging a little deeper I found out that it's the following string being a value of an attribute m_raw in PHPVariableParser which causes the error messages above to appear:

    { "a:11:{s:5:\"$this\";?;s:8:\"$GLOBALS\";a:10:{s:7:\"GLOBALS\";r:3;s:4:\"argv\";a:4:{i:0;s:69:\"/home/pachanga/" }

    Seems like '?' symbol is not processed by Protoeditor and maybe this is what it makes it crash...

     
    • Thiago Silva

      Thiago Silva - 2007-08-09

      Hi,
      thanks for the info.

      Just a few questions:
      What is your PHP version?
      What is your DBG version?

      Thiago

       
      • Pavel Shevaev

        Pavel Shevaev - 2007-08-09

        PHP 5.2.3 (cli) (built: Jul 27 2007 14:25:51)
        Copyright (c) 1997-2007 The PHP Group
        Zend Engine v2.2.0, Copyright (c) 1998-2007 Zend Technologies
            with DBG v2.15.5, (C) 2000,2007, by Dmitri Dmitrienko

         
        • Thiago Silva

          Thiago Silva - 2007-08-10

          One more thing,
          Can you provide a php script wich makes protoeditor crash?

          Thiago

           
          • Pavel Shevaev

            Pavel Shevaev - 2007-08-10

            Yep, sure, it's a test case: https://svn.limb-project.com/limb/3.x/trunk/limb/fs/tests/cases/lmbFsRecursiveIteratorTest.class.php

            I needed to debug lmbFsRecursiveIterator class being tested in this test case.

            I simply put "debugBreak();" in testComplexIterate() method just after "asort($res);" line and run the test case under PHP cli with dbg enabled. Protoeditor popus up on debugBreak() line but it crashes on the next line.

             
          • Pavel Shevaev

            Pavel Shevaev - 2007-08-10

            One more thing, this how it crashes under gdb session exactly:

            ...
            protoeditor: +++++ Bug on PHPVariableParser!
            protoeditor: +++++ Bug on PHPPHPVariableParser!
            protoeditor: +++++ Bug on PHPVariableParser!
            protoeditor: +++++ Bug on PHPPHPVariableParser!
            protoeditor: +++++ Bug on PHPVariableParser!
            protoeditor: +++++ Bug on PHPPHPVariableParser!
            protoeditor: +++++ Bug on PHPVariableParser!
            protoeditor: +++++ Bug on PHPPHPVariableParser!
            protoeditor: +++++ Bug on PHPVariableParser!
            protoeditor: +++++ Bug on PHPPHPVariableParser!
            protoeditor: +++++ Bug on PHPVariableParser!
            protoeditor: +++++ Bug on PHPPHPVariableParser!
            protoeditor: +++++ Bug on PHPVariableParser!
            protoeditor: +++++ Bug on PHPPHPVariableParser!
            protoeditor: +++++ Bug on PHPVariableParser!
            protoeditor: +++++ Bug on PHPPHPVariableParser!
            protoeditor: +++++ Bug on PHPVariableParser!
            protoeditor: +++++ Bug on PHPPHPVariableParser!
            protoeditor: +++++ Bug on PHPVariableParser!
            protoeditor: +++++ Bug on PHPPHPVariableParser!
            protoeditor: +++++ Bug on PHPVariableParser!

            Program received signal SIGSEGV, Segmentation fault.
            0x08095787 in VariableValue::isScalar () at phpvariableparser.cpp:310

             
    • Thiago Silva

      Thiago Silva - 2007-08-18

      I just made a quick fix for it in the Svn repository.
      Please, try it if you can.

      Thanks again,
      Thiago

       
      • Pavel Shevaev

        Pavel Shevaev - 2007-08-27

        Thanks! It did the trick ;)

         

Log in to post a comment.

MongoDB Logo MongoDB