Recent

Author Topic: Watch window greyed out / Access violation  (Read 4220 times)

plusmore

  • New member
  • *
  • Posts: 8
Watch window greyed out / Access violation
« on: August 15, 2021, 09:06:02 pm »
I have just installed 2.2.0RC2 using FPCUPDELUXE and have set the LLDB debugger to the recommended /usr/bin/lldb but the watch window is permanently grey when I set watches.

Then, when stepping through a program that is building a Dictionary structure I get an access violation after a couple of entries have been added.

Anyone any ideas anyone?

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9754
  • Debugger - SynEdit - and more
    • wiki
Re: Watch window greyed out / Access violation
« Reply #1 on: August 15, 2021, 09:49:32 pm »
Not suer why it would be greyed out.....
- Have you accidentality pressed the "power" button?
- Or used the "history" window, and selected a history entry? (that will be reset, when you run)



You are on Intel or M1?

Also, if Intel, LazDebuggerFpLldb or LazDebuggerLldb? (with/without FP?)

About the crash: Please provide a logfile.

* If LazDebuggerLldb  (without FP / no fpdebug in name)
This is for gdb, but should work for lldb to:
https://wiki.lazarus.freepascal.org/GDB_Debugger_Tips#Log_info_for_debug_session

* If LazDebuggerFpLldb  (fpdebug in name)
https://forum.lazarus.freepascal.org/index.php/topic,42869.0.html



What is "RC2" there only is RC1 so far.
You mean you are on the fixes branch?

If you are on the branch, and have M1 then LazDebuggerFpLldb (with FP) should also work now.

plusmore

  • New member
  • *
  • Posts: 8
Re: Watch window greyed out / Access violation
« Reply #2 on: August 15, 2021, 10:19:13 pm »
This is Intel, built using 2.2.0RC2 using 'fixes'.

LLDB debugger (with fpdebug) (Beta)

LazDebuggerFpLldb, LazDebuggerGdbmi and LazDebuggerLldb are installed

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9754
  • Debugger - SynEdit - and more
    • wiki
Re: Watch window greyed out / Access violation
« Reply #3 on: August 15, 2021, 11:24:43 pm »
Unfortunately fpc does not print line info on Mac.... So it is gonna be complicated to get a trace.

Anyway first:

I noticed that you pressed F7, F8 or F9 while the watches were still evaluated. Now this should work, but it would be could to find out if that is related.

So if you always wait for the watches to fully eval, before stepping => does the crash still happen?
If yes, what watch is the first one that is not yet evaluated (i.e. the watch on which it crashes)? How is it declared (type of data)?


plusmore

  • New member
  • *
  • Posts: 8
Re: Watch window greyed out / Access violation
« Reply #4 on: August 15, 2021, 11:46:08 pm »
I'm not sure I can as the problem is that although I set a watch on a variable the Watches window never fills in, it is just grey so I'm not sure which of the watches is causing the issue

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9754
  • Debugger - SynEdit - and more
    • wiki
Re: Watch window greyed out / Access violation
« Reply #5 on: August 16, 2021, 12:28:13 am »
"grey" or "empty"

When you say gray (like disabled), you should still see whatever content is in it.

From the log, it seems there are
Code: [Select]
        DebugDataWindow: TWatchesDlg.WatchUpdate  Upd:False  Watch=client_classification_table
        DebugDataWindow: TWatchesDlg.WatchUpdate  Upd:False  Watch=filepath
        DebugDataWindow: TWatchesDlg.WatchUpdate  Upd:False  Watch=tCustomer.Text
        DebugDataWindow: TWatchesDlg.WatchUpdate  Upd:False  Watch=tCustomer
        DebugDataWindow: TWatchesDlg.WatchUpdate  Upd:False  Watch=client_classification_table.
        DebugDataWindow: TWatchesDlg.WatchUpdate  Upd:False  Watch=customer
        DebugDataWindow: TWatchesDlg.WatchUpdate  Upd:False  Watch=indir
And it seems it was starting to eval them. But I do not know how far it got.

Is the window only grey for this project?
If you change to another project, and restart the IDE, does it get back to normal?


Also grey:

That is the toolbar? (so you can't click any buttons)? Including the power button?

And/Or the area where the watches are / should be?
Double clicking the area of the watches does do nothing either?

Other debug windows (stack) work normal?

If you temp remove the *.lps file (back it up), that then?
This should remove the watches. Does the window come back to live?

plusmore

  • New member
  • *
  • Posts: 8
Re: Watch window greyed out / Access violation
« Reply #6 on: August 16, 2021, 02:49:49 pm »
I think I have narrowed it down to a conflict of some sort with the package anchordockingdsgn as when that is installed I get the greyed out window as shown in the attachment but once I have removed it I get the undocked window displayed as it should be.

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9754
  • Debugger - SynEdit - and more
    • wiki
Re: Watch window greyed out / Access violation
« Reply #7 on: August 16, 2021, 02:58:28 pm »
I think I have narrowed it down to a conflict of some sort with the package anchordockingdsgn as when that is installed I get the greyed out window as shown in the attachment but once I have removed it I get the undocked window displayed as it should be.

That would be an AnchorDocking issue then. Unfortunately not my area. I suggest to check the bugtracker for any reports, and if none exists yet make a new one..

The new log did not show any crash. Does that mean the crash also went away?

plusmore

  • New member
  • *
  • Posts: 8
Re: Watch window greyed out / Access violation
« Reply #8 on: August 16, 2021, 03:01:15 pm »
The crashes were intermittent so it may be connected - I'll do some more testing and raise a bug report for the window greying out issue.

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 9754
  • Debugger - SynEdit - and more
    • wiki
Re: Watch window greyed out / Access violation
« Reply #9 on: August 16, 2021, 03:29:02 pm »
ok, keep in mind, the crashes may have to do with continue to step, while watches are still evaluated.

One should be allowed to step, but it could be that there is a bug in it.

 

TinyPortal © 2005-2018