From 572c170cd6772e7ff633b6406b3eebbb57965bce Mon Sep 17 00:00:00 2001 From: Nishi Date: Wed, 29 Apr 2026 12:27:53 +0000 Subject: [PATCH] fix --- src/backend/haiku.cc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/backend/haiku.cc b/src/backend/haiku.cc index 8d509ba..ee24763 100644 --- a/src/backend/haiku.cc +++ b/src/backend/haiku.cc @@ -185,10 +185,13 @@ void MwView::MessageReceived(BMessage* message) { void MwView::PostMessage(BMessage* message) { BMessage copy = *message; + MwLL top = this->handle; + + while(top->haiku.parent != NULL) top = top->haiku.parent; copy.AddPointer("window-view", this); - this->Window()->PostMessage(©); + top->haiku.app->window->PostMessage(©); } void MwView::PostMessage(uint32 command) { @@ -413,7 +416,7 @@ MwLL MwLLCreateImpl(MwLL parent, int x, int y, int width, int height) { r->haiku.app_thread = spawn_thread(app_thread, NULL, B_NORMAL_PRIORITY, p); resume_thread(r->haiku.app_thread); - while(r->haiku.app == NULL) MwTimeSleep(10); + while(r->haiku.app == NULL || r->haiku.app->window == NULL || r->haiku.view == NULL) MwTimeSleep(10); } else { MwLL top = r; while(top->haiku.parent != NULL) {