#47 list.removecomponents: it uses a while loop that causes headaches

999 Backlog
closed
nobody
None
2020-09-14
2020-08-17
i-campbell
No

Headaches?
yes, PLC crashes

Discussion

  • i-campbell

    i-campbell - 2020-08-17

    @aliazzz do you have a sample code where this can show this?

     
  • aliazzz

    aliazzz - 2020-08-18

    I suspect this is caused as a side-effect of previously not having silo'ed the testcode correct. E.g a having a single FB and several different testmethods that access the single FB. This way of programming should be avoided in the future.

    If I encounter this specific issue, I'll post the code which causes the behaviour.

     
  • i-campbell

    i-campbell - 2020-08-25

    We should use this on the List FB, so that you cannot assign a list to a list.
    eg: List1 := List2;
    {attribute 'no_assign'}

    When you do assign a list to a list, both lists think they own the same objects, but they don't, and that's all kinds of mess.

     
  • aliazzz

    aliazzz - 2020-08-25

    {attribute 'no_assign'}
    Smart addition! => Saves a lot of headaches 💪

     
  • aliazzz

    aliazzz - 2020-09-02

    Done, List is now decorated with;

    {attribute 'no_assign'}
    
     
  • i-campbell

    i-campbell - 2020-09-03
    • status: open --> closed
     

Log in to post a comment.