https://issues.apache.org/bugzilla/show_bug.cgi?id=46211





--- Comment #3 from Andreas L. Delmelle <[EMAIL PROTECTED]>  2008-11-14 
10:39:15 PST ---
(In reply to comment #2)

> no, i didn't tried it - but it seems quite obvious.

OK, thanks for the feedback.

> 1. it happens only when two threads have failed to load the font properly,
> which is seldom enough by itself. and this got to happen to those threads in
> this special order - one thread faile, tried to call isFailedFont, but got
> outrun by another thread which grabs the changeLock ...

Yep. A classic example of what is known as a 'race condition'. Unless the check
is moved into the synchronized block as you suggest, this is bound to lead to
trouble in some exceptional cases.

> so, i suggest changing the "if" and "synchronized" order as in my previous
> comment AND making changeLock final and initializing it along with that.
> 

OK, will do. Just waiting for some feedback on fop-dev@ to see if I've
overlooked anything. If not, then the changes will be committed in a few days.

Thanks for tracking this and reporting the bug!


-- 
Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.

Reply via email to