From 42b5ae7db9ba5a8e96a96a016d494bc399921640 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Mon, 7 Nov 2005 11:08:27 +0000 Subject: [PATCH] BFont::_GetExtraFlags() no longer returns a status value, but fills in default values in case the server communication failed. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14742 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- headers/os/interface/Font.h | 2 +- src/kits/interface/Font.cpp | 16 ++++++++-------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/headers/os/interface/Font.h b/headers/os/interface/Font.h index cb213a0aba..796f1677e9 100644 --- a/headers/os/interface/Font.h +++ b/headers/os/interface/Font.h @@ -247,7 +247,7 @@ class BFont { mutable uint32 fExtraFlags; uint32 _reserved[2]; - status_t _GetExtraFlags() const; + void _GetExtraFlags() const; void _GetBoundingBoxes(const char charArray[], int32 numChars, font_metric_mode mode, bool string_escapement, escapement_delta *delta, diff --git a/src/kits/interface/Font.cpp b/src/kits/interface/Font.cpp index dcc0dc5d36..562ba174fd 100644 --- a/src/kits/interface/Font.cpp +++ b/src/kits/interface/Font.cpp @@ -585,9 +585,7 @@ BFont::Flags() const font_direction BFont::Direction() const { - if (_GetExtraFlags() != B_OK) - return B_FONT_LEFT_TO_RIGHT; - + _GetExtraFlags(); return (font_direction)(fExtraFlags >> B_PRIVATE_FONT_DIRECTION_SHIFT); } @@ -1170,12 +1168,12 @@ BFont::PrintToStream() const } -status_t +void BFont::_GetExtraFlags() const { // TODO: this has to be const in order to allow other font getters to stay const as well if (fExtraFlags != kUninitializedExtraFlags) - return B_OK; + return; BPrivate::AppServerLink link; link.StartMessage(AS_GET_EXTRA_FONT_FLAGS); @@ -1184,9 +1182,11 @@ BFont::_GetExtraFlags() const status_t status = B_ERROR; if (link.FlushWithReply(status) != B_OK - || status != B_OK) - return status; + || status != B_OK) { + // use defaut values for the flags + fExtraFlags = (uint32)B_FONT_LEFT_TO_RIGHT << B_PRIVATE_FONT_DIRECTION_SHIFT; + return; + } link.Read(&fExtraFlags); - return B_OK; }