app_server/Screen: fix finalization order to avoid use after free

Change-Id: I41ba464a365be9449dfd47b2248746b9a338769e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/7416
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
This commit is contained in:
X512 2024-02-18 18:44:39 +09:00 committed by Axel Dörfler
parent 98166ebe04
commit 0e268215f3
2 changed files with 4 additions and 4 deletions

View File

@ -42,8 +42,8 @@ get_mode_frequency(const display_mode& mode)
Screen::Screen(::HWInterface *interface, int32 id)
:
fID(id),
fDriver(interface ? interface->CreateDrawingEngine() : NULL),
fHWInterface(interface)
fHWInterface(interface),
fDriver(interface != NULL ? interface->CreateDrawingEngine() : NULL)
{
}

View File

@ -61,10 +61,10 @@ private:
uint32 colorspace, float frequency) const;
int32 fID;
ObjectDeleter<DrawingEngine>
fDriver;
ObjectDeleter< ::HWInterface>
fHWInterface;
ObjectDeleter<DrawingEngine>
fDriver;
};
#endif /* SCREEN_H */