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

Double free with RHI resources while using Qt3D compute

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • P2: Important
    • 6.7.0 Beta2, 6.8.0 FF
    • 6.6, 6.7
    • Qt3D
    • None
    • All
    • 708b851eb (dev), 46cebd024 (6.7)

    Description

      The attached example makes RHI abort in a debug build. 

      ASSERT: "poolIndex >= 0 && rhi->resUpdPool[poolIndex] == q" in file /Users/philip/qt6/qtbase/src/gui/rhi/qrhi.cpp, line 9059

      Checkout the code that makes it fail:
      https://github.com/vpicaver/Qt3D_compute_particles_cpp

      From my investigation, when Qt3D switches rendering pass between compute and graphics pass, it double frees the compute resources. I've uploaded a patch that fixes this double free. I'm not sure if patch is correct way to fix it.

       

      Attachments

        For Gerrit Dashboard: QTBUG-119657
        # Subject Branch Project Status CR V

        Activity

          People

            seanharmer Sean Harmer
            vpicaver Philip Schuchardt
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There is 1 open Gerrit change