cvut / qtrvsim

RISC-V CPU simulator for education purposes
GNU General Public License v3.0
466 stars 56 forks source link

[regression] 0.9.6 crashes when clicking "Example" as a first action #95

Closed okias closed 6 months ago

okias commented 8 months ago
$ flatpak install --user https://dl.flathub.org/build-repo/74697/cz.cvut.edu.comparch.qtrvsim.flatpakref
$ flatpak run cz.cvut.edu.comparch.qtrvsim

When you open the application and first action is clicking "Example" button, application silently crashes.

Works for 0.9.5 or when you press something else before pressing "Example" button

jdupak commented 7 months ago

I am getting 404 with that link, could you check it?

On Sun, 7 Jan 2024, at 15:28, David Heidelberg wrote:

$ flatpak install --user https://dl.flathub.org/build-repo/74697/cz.cvut.edu.comparch.qtrvsim.flatpakref $ flatpak run cz.cvut.edu.comparch.qtrvsim When you open the application and first action is clicking "Example" button, application silently crashes.

Works for 0.9.5 or when you press something else before pressing "Example" button

— Reply to this email directly, view it on GitHub https://github.com/cvut/qtrvsim/issues/95, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFNB76END5JBPQ2RQGTDSQDYNKWIXAVCNFSM6AAAAABBQLURISVHI2DSMVQWIX3LMV43ASLTON2WKOZSGA3DSMJVGE3TCNI. You are receiving this because you are subscribed to this thread.Message ID: @.***>

ArielHeleneto commented 7 months ago

With the help of bitect, I found out that the commit causing the problem is https://github.com/cvut/qtrvsim/commit/16c78c16948799a008b47569ea53989623c33e1f .

Bitect details ```text 16c78c16948799a008b47569ea53989623c33e1f is the first bad commit commit 16c78c16948799a008b47569ea53989623c33e1f Author: Jakub Dupak Date: Sun Jul 16 23:40:44 2023 +0200 GUI: split central widget tabs to coreview and editor src/gui/mainwindow/mainwindow.cpp | 17 +++++++++++------ src/gui/mainwindow/mainwindow.h | 3 ++- 2 files changed, 13 insertions(+), 7 deletions(-) ```

I have checked https://github.com/cvut/qtrvsim/commit/3dcd6963818c0f368d6ae5713d3b1b14f4d98217 whose everything's fine.

I have checked https://github.com/cvut/qtrvsim/commit/16c78c16948799a008b47569ea53989623c33e1f which causes an error during building process.

Compile Log ```bash PS E:\56\qtrvsim> D:\CMake\bin\cmake.exe E:\56\qtrvsim -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER_LAUNCHER="E:\ccache-4.9-windows-x86_64\ccache.exe" -DCMAKE_CXX_COMPILER_LAUNCHER="E:\ccache-4.9-windows-x86_64\ccache.exe" -DFORCE_COLORED_OUTPUT=true -G "MinGW Makefiles" -- Debug prints globally suppressed. -- Could NOT find LibElf (missing: LIBELF_LIBRARY LIBELF_INCLUDE_DIR) -- Using local libelf fallback. -- Qt5 version: 5.12.9 -- Qt5 print support: 1 -- Configuring done (0.2s) -- Generating done (0.2s) -- Build files have been written to: E:/56/qtrvsim PS E:\56\qtrvsim> D:\CMake\bin\cmake.exe --build . -j24 [ 2%] Automatic MOC for target mulh64_test [ 3%] Automatic MOC and UIC for target svgscene [ 3%] Automatic MOC for target registers_test [ 5%] [ 5%] Automatic MOC for target alu_test Automatic MOC for target memory_test [ 5%] Automatic MOC for target assembler [ 6%] [ 6%] Automatic MOC for target cache_test Automatic MOC for target os_emulation [ 30%] Built target libelf [ 30%] Built target svgscene_autogen [ 30%] Built target instruction_test_autogen [ 30%] Built target mulh64_test_autogen [ 30%] Built target alu_test_autogen [ 30%] Built target registers_test_autogen [ 30%] Built target memory_test_autogen [ 30%] Built target cache_test_autogen [ 30%] Built target assembler_autogen [ 30%] Built target os_emulation_autogen [ 31%] Automatic MOC for target core_test [ 31%] Automatic MOC for target machine [ 32%] Automatic MOC for target program_loader_test [ 32%] Built target core_test_autogen [ 32%] Built target machine_autogen [ 32%] Built target program_loader_test_autogen [ 33%] Built target mulh64_test [ 34%] Built target os_emulation [ 36%] Built target assembler [ 41%] Built target svgscene [ 42%] Built target alu_test [ 44%] Built target registers_test [ 47%] Built target memory_test [ 53%] Built target cache_test [ 55%] Built target instruction_test [ 58%] Built target program_loader_test [ 68%] Built target machine [ 74%] Built target core_test [ 75%] Automatic MOC for target cli [ 76%] Automatic MOC and UIC for target gui [ 76%] Built target cli_autogen [ 79%] Built target cli [ 79%] Built target gui_autogen [ 80%] Building CXX object src/gui/CMakeFiles/gui.dir/gui_autogen/mocs_compilation.cpp.obj [ 81%] Building CXX object src/gui/CMakeFiles/gui.dir/dialogs/new/newdialog.cpp.obj [ 82%] Building CXX object src/gui/CMakeFiles/gui.dir/main.cpp.obj [ 82%] Building CXX object src/gui/CMakeFiles/gui.dir/mainwindow/mainwindow.cpp.obj [ 82%] Linking CXX executable ..\..\target\qtrvsim_gui.exe [100%] Built target gui PS E:\56\qtrvsim> D:\CMake\bin\cmake.exe E:\56\qtrvsim -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_C_COMPILER_LAUNCHER="E:\ccache-4.9-windows-x86_64\ccache.exe" -DCMAKE_CXX_COMPILER_LAUNCHER="E:\ccache-4.9-windows-x86_64\ccache.exe" -DFORCE_COLORED_OUTPUT=true -G "MinGW Makefiles" -- Debug prints globally suppressed. -- Could NOT find LibElf (missing: LIBELF_LIBRARY LIBELF_INCLUDE_DIR) -- Using local libelf fallback. -- Qt5 version: 5.12.9 -- Qt5 print support: 1 -- Configuring done (0.2s) -- Generating done (0.2s) -- Build files have been written to: E:/56/qtrvsim PS E:\56\qtrvsim> D:\CMake\bin\cmake.exe --build . -j24 [ 1%] Automatic MOC and UIC for target svgscene [ 2%] Automatic MOC for target mulh64_test [ 2%] Automatic MOC for target registers_test [ 3%] Automatic MOC for target memory_test [ 4%] Automatic MOC for target alu_test [ 4%] Automatic MOC for target assembler [ 4%] Automatic MOC for target cache_test [ 5%] Automatic MOC for target instruction_test [ 6%] Automatic MOC for target os_emulation [ 30%] Built target libelf [ 30%] Built target svgscene_autogen [ 30%] Built target mulh64_test_autogen [ 30%] Built target registers_test_autogen [ 30%] Built target memory_test_autogen [ 30%] Built target alu_test_autogen [ 30%] Built target cache_test_autogen [ 30%] Built target instruction_test_autogen [ 30%] Built target assembler_autogen [ 30%] Built target os_emulation_autogen [ 30%] Automatic MOC for target machine [ 31%] Automatic MOC for target core_test [ 32%] Automatic MOC for target program_loader_test [ 32%] Built target machine_autogen [ 32%] Built target program_loader_test_autogen [ 32%] Built target core_test_autogen [ 33%] Built target mulh64_test [ 34%] Built target os_emulation [ 35%] Built target alu_test [ 40%] Built target svgscene [ 42%] Built target registers_test [ 44%] Built target assembler [ 47%] Built target memory_test [ 53%] Built target cache_test [ 55%] Built target instruction_test [ 58%] Built target program_loader_test [ 68%] Built target machine [ 74%] Built target core_test [ 76%] [ 76%] Automatic MOC for target cli Automatic MOC and UIC for target gui [ 76%] Built target cli_autogen [ 79%] Built target cli [ 79%] Built target gui_autogen [ 80%] Building CXX object src/gui/CMakeFiles/gui.dir/gui_autogen/mocs_compilation.cpp.obj [ 81%] Building CXX object src/gui/CMakeFiles/gui.dir/dialogs/new/newdialog.cpp.obj [ 82%] Building CXX object src/gui/CMakeFiles/gui.dir/main.cpp.obj [ 82%] Building CXX object src/gui/CMakeFiles/gui.dir/mainwindow/mainwindow.cpp.obj E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In constructor 'MainWindow::MainWindow(QSettings*, QWidget*)': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:56:26: error: 'class HidingTabWidget' has no member named 'setTabVisibl '; did you mean 'setVisible'? central_widget_tabs->setTabVisible(central_widget_tabs->indexOf(editor_tabs.data()), false); ^~~~~~~~~~~~~ setVisible E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:141:9: error: 'central_window' was not declared in this scope central_window.data(), &HidingTabWidget::currentChanged, this, ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:141:9: note: suggested alternative: 'centralWidget' central_window.data(), &HidingTabWidget::currentChanged, this, ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::show_hide_coreview(bool)': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:180:13: error: 'central_window' was not declared in this scope central_window->removeTab(central_window->indexOf(coreview.data())); ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:180:13: note: suggested alternative: 'centralWidget' central_window->removeTab(central_window->indexOf(coreview.data())); ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:194:5: error: 'central_window' was not declared in this scope central_window->insertTab(0, coreview.data(), "Core"); ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:194:5: note: suggested alternative: 'centralWidget' central_window->insertTab(0, coreview.data(), "Core"); ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::create_core(const machine::MachineConfig&, bool, bool)': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:233:26: error: 'central_window' was not declared in this scope auto focused_index = central_window->currentIndex(); ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:233:26: note: suggested alternative: 'centralWidget' auto focused_index = central_window->currentIndex(); ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::save_exit_or_ignore(bool, const QStringList&)': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:472:26: error: 'central_window' was not declared in this scope if (save_unnamed && (central_window != nullptr)) { ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:472:26: note: suggested alternative: 'centralWidget' if (save_unnamed && (central_window != nullptr)) { ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::central_tab_changed(int)': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:560:23: error: 'central_window' was not declared in this scope QWidget *widget = central_window->widget(index); ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:560:23: note: suggested alternative: 'centralWidget' QWidget *widget = central_window->widget(index); ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::add_src_editor_to_tabs(SrcEditor* ': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:566:5: error: 'central_window' was not declared in this scope central_window->addTab(editor, editor->title()); ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:566:5: note: suggested alternative: 'centralWidget' central_window->addTab(editor, editor->title()); ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::update_open_file_list()': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:573:10: error: 'central_window' was not declared in this scope if ((central_window == nullptr) || (settings == nullptr)) { return; } ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:573:10: note: suggested alternative: 'centralWidget' if ((central_window == nullptr) || (settings == nullptr)) { return; } ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:574:25: error: 'central_window' was not declared in this scope for (int i = 0; i < central_window->count(); i++) { ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:574:25: note: suggested alternative: 'centralWidget' for (int i = 0; i < central_window->count(); i++) { ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'bool MainWindow::modified_file_list(QStringList&, bool)': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:587:9: error: 'central_window' was not declared in this scope if (central_window == nullptr) { return false; } ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:587:9: note: suggested alternative: 'centralWidget' if (central_window == nullptr) { return false; } ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:588:25: error: 'central_window' was not declared in this scope for (int i = 0; i < central_window->count(); i++) { ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:588:25: note: suggested alternative: 'centralWidget' for (int i = 0; i < central_window->count(); i++) { ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'SrcEditor* MainWindow::source_editor_for_file(const QString&, bool)': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:611:9: error: 'central_window' was not declared in this scope if (central_window == nullptr) { return nullptr; } ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:611:9: note: suggested alternative: 'centralWidget' if (central_window == nullptr) { return nullptr; } ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:614:25: error: 'central_window' was not declared in this scope for (int i = 0; i < central_window->count(); i++) { ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:614:25: note: suggested alternative: 'centralWidget' for (int i = 0; i < central_window->count(); i++) { ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::open_source()': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:652:17: error: 'central_window' was not declared in this scope if (central_window != nullptr) { central_window->setCurrentWidget(editor); } ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:652:17: note: suggested alternative: 'centralWidget' if (central_window != nullptr) { central_window->setCurrentWidget(editor); } ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::save_source_as()': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:687:15: error: 'central_window' was not declared in this scope int idx = central_window->indexOf(current_srceditor); ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:687:15: note: suggested alternative: 'centralWidget' int idx = central_window->indexOf(current_srceditor); ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::src_editor_save_to(const QString& ': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:710:15: error: 'central_window' was not declared in this scope int idx = central_window->indexOf(current_srceditor); ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:710:15: note: suggested alternative: 'centralWidget' int idx = central_window->indexOf(current_srceditor); ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::close_source()': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:770:15: error: 'central_window' was not declared in this scope int idx = central_window->indexOf(editor); ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:770:15: note: suggested alternative: 'centralWidget' int idx = central_window->indexOf(editor); ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'void MainWindow::message_selected(messagetype::Type, const QString&, int, int, const QString&, const QString&)': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:819:9: error: 'central_window' was not declared in this scope if (central_window != nullptr) { central_window->setCurrentWidget(editor); } ^~~~~~~~~~~~~~ E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:819:9: note: suggested alternative: 'centralWidget' if (central_window != nullptr) { central_window->setCurrentWidget(editor); } ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp: In member function 'virtual bool SimpleAsmWithEditorCheck::process_pragma(QStringList&, const QString&, int, QString*)': E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:867:29: error: 'class MainWindow' has no member named 'central_window'; did you mean 'centralWidget'? && (mainwindow->central_window != nullptr) && (mainwindow->coreview != nullptr)) { ^~~~~~~~~~~~~~ centralWidget E:\56\qtrvsim\src\gui\mainwindow\mainwindow.cpp:868:25: error: 'class MainWindow' has no member named 'central_window'; did you mean 'centralWidget'? mainwindow->central_window->setCurrentWidget(mainwindow->coreview.data()); ^~~~~~~~~~~~~~ centralWidget mingw32-make.exe[2]: *** [src\gui\CMakeFiles\gui.dir\build.make:477: src/gui/CMakeFiles/gui.dir/mainwindow/mainwindow.cpp.obj] Error 1 mingw32-make.exe[1]: *** [CMakeFiles\Makefile2:1068: src/gui/CMakeFiles/gui.dir/all] Error 2 mingw32-make.exe: *** [Makefile:145: all] Error 2 ```

Environment Info

Configurations ```text -- The C compiler identification is GNU 8.1.0 -- The CXX compiler identification is GNU 8.1.0 -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: E:/mingw64/bin/gcc.exe - skipped -- Detecting C compile features -- Detecting C compile features - done -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: E:/mingw64/bin/g++.exe - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Debug prints globally suppressed. -- Could NOT find LibElf (missing: LIBELF_LIBRARY LIBELF_INCLUDE_DIR) -- Using local libelf fallback. -- Qt5 version: 5.12.9 -- Qt5 print support: 1 -- Configuring done (1.6s) -- Generating done (0.2s) -- Build files have been written to: E:/56/qtrvsim ```

Qt 5.12.9 comes from Qt Downloads.

Compiler comes from mingw-w64.

ArielHeleneto commented 7 months ago

I confirmed that the issue was successfully reproduced on Window on 0.9.6 .

After clicking the "Example" button for a while, the program crashes with nothing.

okias commented 7 months ago

Sure, it's building again. https://github.com/flathub/cz.cvut.edu.comparch.qtrvsim/pull/4#issuecomment-1911932988

ArielHeleneto commented 7 months ago

Sure, it's building again. flathub/cz.cvut.edu.comparch.qtrvsim#4 (comment)

emmm I think it's a bug inside code. Rebuild this can't fix bug on Windows.

I think it is connected with https://github.com/cvut/qtrvsim/pull/73

jdupak commented 7 months ago

Agreed, I managed to reproduce it on Linux too now.

/data/Dev/school/comparch/qtrvsim_project/QtRvSim/src/gui/windows/editor/editordock.cpp:51:54: runtime error: member call on null pointer of type 'struct EditorTab' /data/Dev/school/comparch/qtrvsim_project/QtRvSim/src/gui/windows/editor/editordock.cpp:51:54: runtime error: member access within null pointer of type 'struct EditorTab' AddressSanitizer:DEADLYSIGNAL

==14401==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x55a6d5bace4e bp 0x7ffcc562d940 sp 0x7ffcc562d7c0 T0) ==14401==The signal is caused by a READ memory access. ==14401==Hint: address points to the zero page.

0 0x55a6d5bace4e in operator() /data/Dev/school/comparch/qtrvsim_project/QtRvSim/src/gui/windows/editor/editordock.cpp:51

#1 0x55a6d5bbe48c in call /usr/include/qt6/QtCore/qobjectdefs_impl.h:137
#2 0x55a6d5bbdfcb in call<QtPrivate::List<int>, void> /usr/include/qt6/QtCore/qobjectdefs_impl.h:339
#3 0x55a6d5bbdc95 in impl /usr/include/qt6/QtCore/qobjectdefs_impl.h:522
#4 0x7fc7c6ba5446 in QObject::event(QEvent*) (/usr/lib/libQt6Core.so.6+0x1a5446) (BuildId: cb022489bffbb1eff08dc837c4e1efc95941a304)
#5 0x7fc7c7b7319a in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib/libQt6Widgets.so.6+0x17319a) (BuildId: 305870387cf40cf3e39e744eaebb2d1e5c9a3798)
#6 0x7fc7c6b62a77 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (/usr/lib/libQt6Core.so.6+0x162a77) (BuildId: cb022489bffbb1eff08dc837c4e1efc95941a304)
#7 0x7fc7c6b62dfa in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (/usr/lib/libQt6Core.so.6+0x162dfa) (BuildId: cb022489bffbb1eff08dc837c4e1efc95941a304)
#8 0x7fc7c6d9ead3  (/usr/lib/libQt6Core.so.6+0x39ead3) (BuildId: cb022489bffbb1eff08dc837c4e1efc95941a304)
#9 0x7fc7c5bcaf68  (/usr/lib/libglib-2.0.so.0+0x59f68) (BuildId: d310ee36df88b18d95f79813384e6f7decd59c68)
#10 0x7fc7c5c29366  (/usr/lib/libglib-2.0.so.0+0xb8366) (BuildId: d310ee36df88b18d95f79813384e6f7decd59c68)
#11 0x7fc7c5bc9161 in g_main_context_iteration (/usr/lib/libglib-2.0.so.0+0x58161) (BuildId: d310ee36df88b18d95f79813384e6f7decd59c68)
#12 0x7fc7c6d9d073 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/libQt6Core.so.6+0x39d073) (BuildId: cb022489bffbb1eff08dc837c4e1efc95941a304)
#13 0x7fc7c6b6cf5d in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/libQt6Core.so.6+0x16cf5d) (BuildId: cb022489bffbb1eff08dc837c4e1efc95941a304)
#14 0x7fc7c6b65517 in QCoreApplication::exec() (/usr/lib/libQt6Core.so.6+0x165517) (BuildId: cb022489bffbb1eff08dc837c4e1efc95941a304)
#15 0x55a6d5bd94c8 in main /data/Dev/school/comparch/qtrvsim_project/QtRvSim/src/gui/main.cpp:40
#16 0x7fc7c6445ccf  (/usr/lib/libc.so.6+0x27ccf) (BuildId: 8bfe03f6bf9b6a6e2591babd0bbc266837d8f658)
#17 0x7fc7c6445d89 in __libc_start_main (/usr/lib/libc.so.6+0x27d89) (BuildId: 8bfe03f6bf9b6a6e2591babd0bbc266837d8f658)
#18 0x55a6d5928e54 in _start (/data/Dev/school/comparch/qtrvsim_project/QtRvSim/build/Debug/target/qtrvsim_gui+0x1132e54) (BuildId: 17e833c3d4a8dd13e4c58946f79d9f32c7eccf03)

AddressSanitizer can not provide additional info. SUMMARY: AddressSanitizer: SEGV /data/Dev/school/comparch/qtrvsim_project/QtRvSim/src/gui/windows/editor/editordock.cpp:51 in operator() ==14401==ABORTING

On Fri, 26 Jan 2024, at 13:20, Ariel Xiong wrote:

Sure, it's building again. flathub/cz.cvut.edu.comparch.qtrvsim#4 (comment) https://github.com/flathub/cz.cvut.edu.comparch.qtrvsim/pull/4#issuecomment-1911932988

emmm I think it's a bug inside code. Rebuild this can't fix bug on Windows.

— Reply to this email directly, view it on GitHub https://github.com/cvut/qtrvsim/issues/95#issuecomment-1911985326, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFNB76CU7YQPNGNOFFXU63TYQONPZAVCNFSM6AAAAABBQLURISVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJRHE4DKMZSGY. You are receiving this because you commented.Message ID: @.***>

ArielHeleneto commented 7 months ago

Hi gods,

The file comes from action https://github.com/cvut/qtrvsim/actions/runs/7679651824 still cause troubles.

I tested target-Windows-qt5.12.9 and it crashes many times.

Here's the log.

[DEBUG] gui.coreview:   Calling full update of 9BoolValue...
[DEBUG] gui.coreview:   Calling full update of 10DebugValue...
[DEBUG] gui.coreview:   Calling full update of 8RegValue...
[DEBUG] gui.coreview:   Calling full update of 10RegIdValue...
[DEBUG] gui.coreview:   Calling full update of 7PCValue...
[DEBUG] gui.coreview:   Calling full update of 14MultiTextValue...
[DEBUG] gui.coreview:   Calling full update of 16InstructionValue...
[DEBUG] gui.coreview:   Calling full update of 11MultiplexerIbE...
[DEBUG] gui.coreview:   Calling full update of 11MultiplexerIjE...
[FATAL ERROR]   ASSERT: "last >= first" in file itemmodels\qabstractitemmodel.cpp, line 2786

text.log

I'd say that my own build on my Windows 10 works fine. So that might be some bug inside CI.

jdupak commented 7 months ago

Hi, do you mean actual crashes (application window disappears) or just the text in console? I am asking, bacause I cannot see any problem in the log file you posted.

There is only (very detailed) information about execution, which is enabled only in debug builds. Everything not prefixed error or warning is fine.

On Sun, 28 Jan 2024, at 08:03, Ariel Xiong wrote:

Hi gods,

The file comes from action https://github.com/cvut/qtrvsim/actions/runs/7679651824 still cause troubles.

I tested target-Windows-qt5.12.9 and it crashes many times.

Here's the log.

text.log https://github.com/cvut/qtrvsim/files/14075241/text.log

I'd say that my own build on my Windows 10 works fine. So that might be some bug inside CI.

— Reply to this email directly, view it on GitHub https://github.com/cvut/qtrvsim/issues/95#issuecomment-1913480010, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFNB76DX3OAGE6BVVEI2R5DYQXZ3RAVCNFSM6AAAAABBQLURISVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJTGQ4DAMBRGA. You are receiving this because you modified the open/close state.Message ID: @.***>

ArielHeleneto commented 7 months ago

Hi, do you mean actual crashes (application window disappears) or just the text in console? I am asking, bacause I cannot see any problem in the log file you posted. There is only (very detailed) information about execution, which is enabled only in debug builds. Everything not prefixed error or warning is fine. On Sun, 28 Jan 2024, at 08:03, Ariel Xiong wrote: Hi gods, The file comes from action https://github.com/cvut/qtrvsim/actions/runs/7679651824 still cause troubles. I tested target-Windows-qt5.12.9 and it crashes many times. Here's the log. text.log https://github.com/cvut/qtrvsim/files/14075241/text.log I'd say that my own build on my Windows 10 works fine. So that might be some bug inside CI. — Reply to this email directly, view it on GitHub <#95 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AFNB76DX3OAGE6BVVEI2R5DYQXZ3RAVCNFSM6AAAAABBQLURISVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMJTGQ4DAMBRGA. You are receiving this because you modified the open/close state.Message ID: @.***>

actual crashes (application window disappears)

jdupak commented 6 months ago

[FATAL ERROR] ASSERT: "last >= first" in file itemmodels\qabstractitemmodel.cpp, line 2786

jdupak commented 6 months ago

@ArielHeleneto Oh, my apologies. You identified the issue correctly. I somehow missed the assert in your log. I am blind. Anyway should be fixed now. Tested on windows10.

Can you confirm?