Author Topic: Hang while editing fileman.e  (Read 2378 times)

jporkkahtc

  • Senior Community Member
  • Posts: 2620
  • Hero Points: 210
  • Text
Hang while editing fileman.e
« on: August 23, 2016, 06:37:12 PM »
So I was looking for how to run a macro over a bunch of files.
Which lead me to the filemanager - which I've never used before.


So I started looking at repeat_command (but it requires that your macro know how to select the buffer)...


Anyways, I found that Slick would hang when I jumped to fileman_replace in fileman.e from Macro->GotoSlickCDefinition.


It has done this twice - using the macro break key, I get this stack:

 Break key pressed.  Macro halted
stdcmds.ex 46618 _isdiffed(4)   p_window_id: 610   p_object: OI_EDITOR   p_name:
mouse.ex 3833 mou_click(,,0,0)   p_window_id: 610   p_object: OI_EDITOR   p_name:




I've not made any changes to fileman.e, I was just looking to see what it does.




So, I attached the SlickC debugger, reproed the hang again. I clicked pause in the debugger.
The stack in the debugger is:

     isalpha()                 sc.lang.modules.stdprocs
     isalnum()                 sc.lang.modules.stdprocs
     nextsym()                 sc.lang.modules.math
     unary_exp()               sc.lang.modules.math
     exp()                     sc.lang.modules.math
     eval_exp()                sc.lang.modules.math
     eval_exp()                sc.lang.modules.math
     EvaluateMouseExpression() sc.lang.modules.debugpkg
     debug_get_mouse_expr()    sc.lang.modules.debugpkg
     _mouse_move()             sc.lang.modules.mouse

I set a break at line976 of C:\Program Files\SlickEdit Pro 21.0.0 Beta3\macros\math.e -- never reached -- so that loop in exp() seems to never complete.


In eval, the loop doesn't make progress. The locals:
     sym      **Symbol not found in this scope**
     prec_tab  (21 items)
       
  •    "14"
  •    "13"
  • [|]   "6"
            [-]   "13"
            [&&]  "4"
            [/]   "14"
            [:+]  "11"
            [>=]  "10"
            [^]   "7"
            [>>]  "12"
            [<]   "10"
            [<<]  "12"
            [<=]  "10"
            [>]   "10"
            [||]  "3"
            [!=]  "9"
           
  •    "15"
  • [$]   "0"
            [==]  "9"
            [%]   "14"
            [&]   "8"
         op_stack  (2 items)
           
  •    "$"
  • [1]   "+"
         orig_sym 0
         vtop     1
         < add >

Clark

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 6867
  • Hero Points: 528
Re: Hang while editing fileman.e
« Reply #1 on: August 23, 2016, 07:12:08 PM »
A regular Slick-C stack would have been more helpful than the debugger stack.

Looks like it's trying to provide popup-help when hovering the mouse over a number. Any idea what line/column your mouse was on?

Clark

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 6867
  • Hero Points: 528
Re: Hang while editing fileman.e
« Reply #2 on: August 23, 2016, 07:15:26 PM »
Reproduced. Just need to hover over "rc"

Clark

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 6867
  • Hero Points: 528
Re: Hang while editing fileman.e
« Reply #3 on: August 23, 2016, 07:27:39 PM »
Fixed for beta 4

jporkkahtc

  • Senior Community Member
  • Posts: 2620
  • Hero Points: 210
  • Text
Re: Hang while editing fileman.e
« Reply #4 on: August 23, 2016, 07:51:21 PM »
Cool.


WRT stack: I gave both.




Question, why is the stack I get from breaking the macro (ctrl+alt+f2) totally different than what I get when I break in with the debugger?




Clark

  • SlickEdit Team Member
  • Senior Community Member
  • *
  • Posts: 6867
  • Hero Points: 528
Re: Hang while editing fileman.e
« Reply #5 on: August 23, 2016, 08:53:25 PM »
the isdiffed stack must be the wrong stack.