angr / angr/angr-management

Test cases do not schedule to GUI thread as expected

Đang mở
#549 1 bình luận 0 reaction 1 người được giao Được @mborgerson nhận Xem trên GitHub
bug
Ngôn ngữ chính
Python
Star
1.2k
Fork
131
Merge trung bình
1 ngày 11 giờ
Pull request đã merge (30 ngày)
14

Mô tả

* Test cases do not use typical `start_management`, instead creating MainWindow directly https://github.com/angr/angr-management/blob/5872bcd0f5487b22590124ea4e8c459bc26af86f/tests/test_workflow.py#L16
* `GlobalInfo.gui_thread` is never set (by `start_management`), so `is_gui_thread` always returns `True` https://github.com/angr/angr-management/blob/5872bcd0f5487b22590124ea4e8c459bc26af86f/angrmanagement/logic/threads.py#L126
* Because `is_gui_thread` always returns `True`, any callable passed to `gui_thread_schedule[_async]` will actually be run on caller thread
* I had an issue with deadlocking after some Qt objects were created with parents on worker threads because of this. Ideally the test cases would also run through the `start_management` init path.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.