Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-125388

dom: lazy files do not support commitToBase workflow

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: P2: Important P2: Important
    • 6.8.0 FF
    • 6.8
    • QML: Tooling
    • None
    • 13761ee3c (dev)

      It seems that the lazy QmlFiles in the Dom do not support the commitToBase workflow, where:

      1. you create a (base) DomEnvironment
      2. you copy it to change it
        1. if you populate a file obtained from the copy then it should find and use the copy environment
      3. you use commitToBase on the copy to move the modifications into the base environment, and can safely destroy the copy
        1. if you populate the file obtained from the copy now, you get a heap-use-after-free memory error because of the referenced DomEnvironment

      The lazy file needs to know its environment when it does populate itself, and therefore needs a way to decide if it needs to use the copy or the base environment.

       

      This leads to crashes in qmlls's completion, see linked bug.

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            sami.shalayel Sami Shalayel
            sami.shalayel Sami Shalayel
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes