Bug 96858 - JSC: Windows port needs a proper JSLock implementation
Summary: JSC: Windows port needs a proper JSLock implementation
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Mark Lam
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2012-09-15 01:07 PDT by Mark Lam
Modified: 2012-09-15 23:31 PDT (History)
2 users (show)

See Also:


Attachments
Fix. (5.23 KB, patch)
2012-09-15 22:25 PDT, Mark Lam
fpizlo: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Lam 2012-09-15 01:07:24 PDT
Currently, the JSLock methods are implemented for platforms that support pthreads.  As a result, the Windows port is only using a stub JSLock that does nothing.  This stub implementation causes ASSERT(!m_apiLock.currentThreadIsHoldingLock()) (in JSGlobalData::~JSGlobalData()) to always fail.  In addition, the stub JSLock implementation does not provide the needed synchronization, and as a result, the Windows port crashes or fails in intermittent ways when running the layout tests.
Comment 1 Mark Lam 2012-09-15 01:09:11 PDT
<rdar://problem/12297283>
Comment 2 Mark Lam 2012-09-15 22:25:32 PDT
Created attachment 164307 [details]
Fix.
Comment 3 Mark Lam 2012-09-15 23:31:43 PDT
Committed r128704: <http://trac.webkit.org/changeset/128704>