Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. General and Desktop
  4. Segmentation fault when exiting when linked against Qt 6.9.1

Segmentation fault when exiting when linked against Qt 6.9.1

Scheduled Pinned Locked Moved Solved General and Desktop
36 Posts 7 Posters 8.2k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • l3u_L Offline
    l3u_L Offline
    l3u_
    wrote on last edited by
    #19

    Thanks :-)

    1 Reply Last reply
    0
    • l3u_L Offline
      l3u_L Offline
      l3u_
      wrote on last edited by l3u_
      #20

      Just to also leave this here: I meanwhile could strip it down to a minimal example producing the crash, cf. the sources attached to https://bugreports.qt.io/browse/QTBUG-137755

      Produces the crash reliably when linked against Qt 6.9.1. You have to run the program twice: The first time, it exits normally. The second time, when the window geometry and state are restored, it segfaults on exiting.

      No delete, no deleteLater, nothing special at all …

      1 Reply Last reply
      0
      • Axel SpoerlA Offline
        Axel SpoerlA Offline
        Axel Spoerl
        Moderators
        wrote on last edited by Axel Spoerl
        #21

        Great reproducer!
        Someone decades ago felt like storing unused tab bars for later re-usage in QMainWindowLayout.
        Those were soft-leaked and taken care off, when QApplication got destroyed.
        Reading the state back from settings causes the original tab bar (created in the C++ part) to become unused, but not removed from its QMainWindow parent. That ultimately lead to a double delete and the crash.
        Let's see, if my thorough reviewers let me get away without writing an autotest ;-)

        Software Engineer
        The Qt Company, Oslo

        1 Reply Last reply
        3
        • l3u_L Offline
          l3u_L Offline
          l3u_
          wrote on last edited by
          #22

          Wow, that was fast :-) Thanks for the immediate fix! Nice to see my stuff helped here!

          That was quite deep inside Qt apparently … where will this land? Qt 6.10.0? Or will it be backported?

          I tried to cherry-pick it to a 6.9.1 checkout to test it, but it seems that's no trivial task …

          jsulmJ 1 Reply Last reply
          0
          • l3u_L l3u_

            Wow, that was fast :-) Thanks for the immediate fix! Nice to see my stuff helped here!

            That was quite deep inside Qt apparently … where will this land? Qt 6.10.0? Or will it be backported?

            I tried to cherry-pick it to a 6.9.1 checkout to test it, but it seems that's no trivial task …

            jsulmJ Offline
            jsulmJ Offline
            jsulm
            Lifetime Qt Champion
            wrote on last edited by
            #23

            @l3u_ You can see in the bug report:
            Fix Version/s: 6.10.0 Beta2, 6.11.0 FF

            https://forum.qt.io/topic/113070/qt-code-of-conduct

            1 Reply Last reply
            0
            • l3u_L Offline
              l3u_L Offline
              l3u_
              wrote on last edited by l3u_
              #24

              Ah okay. So no 6.9 backport? I just wondered, because in the respective "Change ID" https://codereview.qt-project.org/c/qt/qtbase/+/653727, it's listed: "Fixes: QTBUG-137755 Pick-to: 6.10 6.9"

              jsulmJ 1 Reply Last reply
              0
              • l3u_L l3u_

                Ah okay. So no 6.9 backport? I just wondered, because in the respective "Change ID" https://codereview.qt-project.org/c/qt/qtbase/+/653727, it's listed: "Fixes: QTBUG-137755 Pick-to: 6.10 6.9"

                jsulmJ Offline
                jsulmJ Offline
                jsulm
                Lifetime Qt Champion
                wrote on last edited by
                #25

                @l3u_ Yes, it looks like it was cherry picked to 6.9 branch, so may end up in some 6.9.x version :-)

                https://forum.qt.io/topic/113070/qt-code-of-conduct

                1 Reply Last reply
                0
                • Axel SpoerlA Offline
                  Axel SpoerlA Offline
                  Axel Spoerl
                  Moderators
                  wrote on last edited by
                  #26

                  The fix will land in 6.9.2, which we plan to release on August 14th.

                  If you want to cherry pick and compile locally, please make sure to pick the following 5 commits in the right order:

                  1. https://codereview.qt-project.org/c/qt/qtbase/+/653890
                  2. https://codereview.qt-project.org/c/qt/qtbase/+/653891
                  3. https://codereview.qt-project.org/c/qt/qtbase/+/653892
                  4. https://codereview.qt-project.org/c/qt/qtbase/+/653893
                  5. https://codereview.qt-project.org/c/qt/qtbase/+/653894

                  Software Engineer
                  The Qt Company, Oslo

                  1 Reply Last reply
                  3
                  • l3u_L Offline
                    l3u_L Offline
                    l3u_
                    wrote on last edited by
                    #27

                    Nice :-)

                    I just tried it locally, cherry-picking the exact comments you linked. Worked without a collision on a v6.9.1 checkout.

                    And – you may already have thought that – I can confirm the segfault is gone now, also for my quite complex use-case :-)

                    1 Reply Last reply
                    3
                    • Axel SpoerlA Offline
                      Axel SpoerlA Offline
                      Axel Spoerl
                      Moderators
                      wrote on last edited by
                      #28

                      Great that you are using dock widgets! As you may have suspected: QDockWidget is slightly closer to my heart than other creatures in the widget zoo ;-)

                      Software Engineer
                      The Qt Company, Oslo

                      S 1 Reply Last reply
                      1
                      • l3u_L Offline
                        l3u_L Offline
                        l3u_
                        wrote on last edited by
                        #29

                        First, it was just a QTabBar interface. But over the years, it got more and more complex, and at some point, I learned about QDockWidgets – and I loved them at first sight ;-) The same as the tab bar if you want – but way more if you need it. The possibility to arrange them as you like and need is really nice. This is actually a powerful tool, with a great user experience. QDockWidgets really rock! They do, from time to time, cause some headache (this is actually not the first bug I filed about them ;-) – but they are really cool.

                        1 Reply Last reply
                        2
                        • Axel SpoerlA Offline
                          Axel SpoerlA Offline
                          Axel Spoerl
                          Moderators
                          wrote on last edited by
                          #30

                          @l3u_
                          Could you mark this thread as solved, please?

                          Software Engineer
                          The Qt Company, Oslo

                          1 Reply Last reply
                          0
                          • Axel SpoerlA Axel Spoerl

                            Great that you are using dock widgets! As you may have suspected: QDockWidget is slightly closer to my heart than other creatures in the widget zoo ;-)

                            S Offline
                            S Offline
                            StudentScripter
                            wrote on last edited by
                            #31

                            @Axel-Spoerl Love QDockwidget too, great work <3

                            I always miss them in QML ( i know that QML is mainly mobile focused but nevertheless). :D

                            1 Reply Last reply
                            1
                            • Axel SpoerlA Offline
                              Axel SpoerlA Offline
                              Axel Spoerl
                              Moderators
                              wrote on last edited by
                              #32

                              @StudentScripter Not as an immediate priority, but we are planning to implement something like dock widgets also in Quick Controls.

                              Software Engineer
                              The Qt Company, Oslo

                              S 1 Reply Last reply
                              1
                              • l3u_L l3u_ has marked this topic as solved on
                              • Axel SpoerlA Axel Spoerl

                                @StudentScripter Not as an immediate priority, but we are planning to implement something like dock widgets also in Quick Controls.

                                S Offline
                                S Offline
                                StudentScripter
                                wrote on last edited by
                                #33

                                @Axel-Spoerl Awesome <3 Is it on the near roadmap or will have to wait a few years?

                                JonBJ 1 Reply Last reply
                                0
                                • S StudentScripter

                                  @Axel-Spoerl Awesome <3 Is it on the near roadmap or will have to wait a few years?

                                  JonBJ Offline
                                  JonBJ Offline
                                  JonB
                                  wrote on last edited by JonB
                                  #34

                                  @StudentScripter Just so you know, @Axel-Spoerl is away atm and won't answer for a week or two...

                                  S 1 Reply Last reply
                                  2
                                  • JonBJ JonB

                                    @StudentScripter Just so you know, @Axel-Spoerl is away atm and won't answer for a week or two...

                                    S Offline
                                    S Offline
                                    StudentScripter
                                    wrote on last edited by
                                    #35

                                    @JonB Thanks for the hint, but im in no hurry right now. :D Have a nice day.

                                    1 Reply Last reply
                                    0
                                    • Axel SpoerlA Offline
                                      Axel SpoerlA Offline
                                      Axel Spoerl
                                      Moderators
                                      wrote on last edited by
                                      #36

                                      Thanks @JonB for notifying!
                                      The dock widget implementation has some obvious limitations, like e.g. permissions: You can limit allowed main window dock areas, but not the permission to dock on a floating dock. You can’t merge floating docks.

                                      That said, we’ll have to take a deeper look and come up with a solid concept for a quick control equivalent. My guess is a year or so. I’ll update this thread in case we have a Jira ticket for input and discussion. In the meanwhile feel free to post ideas here!

                                      Software Engineer
                                      The Qt Company, Oslo

                                      1 Reply Last reply
                                      0

                                      • Login

                                      • Login or register to search.
                                      • First post
                                        Last post
                                      0
                                      • Categories
                                      • Recent
                                      • Tags
                                      • Popular
                                      • Users
                                      • Groups
                                      • Search
                                      • Get Qt Extensions
                                      • Unsolved