From 0f18208594daf4efd4bbf6aca7c14b64e14b5072 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Sun, 25 Jan 2004 15:56:10 +0000 Subject: [PATCH] BMediaFormats::InitCheck() now checks if the global lock could be initialized to give its existance a bit more sense. update_media_formats() no longer ASSERTS if the lock is held, but fails if it's not locked. git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6300 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/media/MediaFormats.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/kits/media/MediaFormats.cpp b/src/kits/media/MediaFormats.cpp index 674e061e7b..85e2fcbfa9 100644 --- a/src/kits/media/MediaFormats.cpp +++ b/src/kits/media/MediaFormats.cpp @@ -261,7 +261,8 @@ meta_format::Compare(const meta_format *a, const meta_format *b) static status_t update_media_formats() { - ASSERT(sLock.IsLocked()); + if (!sLock.IsLocked()) + return B_NOT_ALLOWED; BMessage request(MEDIA_SERVER_GET_FORMATS); request.AddInt64("last_timestamp", sLastFormatsUpdate); @@ -337,7 +338,7 @@ BMediaFormats::~BMediaFormats() status_t BMediaFormats::InitCheck() { - return B_OK; + return sLock.Sem() >= B_OK ? B_OK : sLock.Sem(); }