Assertion error when using 1dqwtplot

Issue #85 resolved
Oliver Schwanke created an issue

Hi, when using the current devsetupt(msvc2017, qt5.12, win10) a debug assertion fails when trying to create ui from form/mainwindow when using 1dqwtplotwidget. gui = ui("./gui.ui") produces error with provided ui file.

Comments (12)

  1. M. Gronle

    With MSVC 2017, Qt 5.9 and Win 10, I cannot reproduce this.

    Can you please RE-build itom, the plugins and designer plugins, since we changed the addInInterface and interface to the designerPlugins last week (due to the actuator changes). There might be some incompatibilities with old DLLs. Else, if the assertion stills appears, please try to break and make a screenshot of the assertion and (if possible) of the callstack.

    @Photoniker will test it tomorrow with MSVC 2017, Qt 5.12 and Win10.

  2. Johann Krauter

    Hi Oli,

    I rebuild my itom today (MS2017, Qt5.10, Win10). No debug assertion occurs when ich start your gui.ui as you can see in the screenshot. As @magro11 mentioned, try to rebuild the designerplugins.

    screen.PNG

  3. Oliver Schwanke reporter

    lucky you, problem persists after pulling itom, plugins and designer plugins, triggered full rebuild.(itom, designerplugins, plugins) I'm not having this on a machine with qt5.9 neither. Fehlermeldung.pngcallStack.png

  4. Oliver Schwanke reporter

    ... okayokay. after another more patiently performed rebuild the message disappears. Sry for the inconvenience...

  5. Oliver Schwanke reporter
    • changed status to open

    okay, problem persists. assertions obviously take place when run in debug mode. affects all qwtplots. makes debugging almost impossible.

  6. M. Gronle

    Hi Olli,

    if your crash is still caused by the screenshot, that you published above, then I hope that I could find a solution (see commit https://bitbucket.org/itom/itom/commits/16cc136b16b68e1c1b2d4d24a39220854d9928c0). I have seen, that the method QAbstractItemModel::beginRemoveRows added a new assertion with Qt >= 5.11. I have VS2017 and Qt 5.9, therefore there was no error. However, if I compare the sources of this method in Qt < 5.11 and Qt >= 5.11 (see https://code.qt.io/cgit/qt/qtbase.git/tree/src/corelib/itemmodels/qabstractitemmodel.cpp?h=5.11), I could see, that beginRemoveRows has to be called with a first and last index which have to point both to valid items in a model. However, if the model is currently empty, this assertion will fail.

    This error was induced by the qpropertyeditor library of itom (Property Widget), used by all plots.

    Could you please check, if my commit fixes your assertion? Please give a short reply, since ITO is currently compiling a new setup.

  7. Log in to comment