From d15aa22b8e8dc1bcb606cd8d2e856591b9b5e96a Mon Sep 17 00:00:00 2001 From: Stefano Ceccherini Date: Mon, 2 May 2005 15:22:32 +0000 Subject: [PATCH] Re-fixed widthbuffer locking. I obviously broke this when I made that change in InterfaceDefs.cpp git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12526 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/kits/interface/BTextView/TextView.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/kits/interface/BTextView/TextView.cpp b/src/kits/interface/BTextView/TextView.cpp index adb3f68934..94990108b9 100644 --- a/src/kits/interface/BTextView/TextView.cpp +++ b/src/kits/interface/BTextView/TextView.cpp @@ -4448,7 +4448,7 @@ BTextView::CancelInputMethod() void BTextView::LockWidthBuffer() { - if (atomic_add(&sWidthAtom, -1) <= 0) { + if (atomic_add(&sWidthAtom, 1) > 0) { while (acquire_sem(sWidthSem) == B_INTERRUPTED) ; } @@ -4460,6 +4460,6 @@ BTextView::LockWidthBuffer() void BTextView::UnlockWidthBuffer() { - if (atomic_add(&sWidthAtom, 1) < 0) + if (atomic_add(&sWidthAtom, -1) > 1) release_sem(sWidthSem); }