JavaScriptGlue/ChangeLog
changeset 0 4f2f89ce4247
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/JavaScriptGlue/ChangeLog	Fri Sep 17 09:02:29 2010 +0300
@@ -0,0 +1,2910 @@
+2010-07-01  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Maciej Stachowiak.
+
+        Add a FixedArray template to encapsulate fixed length arrays
+        https://bugs.webkit.org/show_bug.cgi?id=41506
+
+        Add forwarding header.
+
+        * ForwardingHeaders/wtf/FixedArray.h: Added.
+
+2010-06-02  Gavin Barraclough  <barraclough@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        Bug 40094 - The return type of NativeFunction should be EncodedJSValue
+        On Windows & Linux, using JSVALUE32_64, EncodedJSValue is returned in registers, but JSValue is not.
+
+        * JSObject.cpp:
+        (nativeCallFunction):
+
+2010-05-28  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Sam Weinig, Gavin Barraclough, Oliver Hunt.
+
+        Simplified the host calling convention.
+
+        PART ONE: Functional code changes.
+        
+        [ None in JavaScriptGlue ]
+        
+        PART TWO: Global search and replace.
+        
+        In the areas below, I used global search-and-replace to change
+            (ExecState*, JSObject*, JSValue, const ArgList&) => (ExecState*)
+            args.size() => exec->argumentCount()
+            args.at(i) => exec->argument(i)
+
+        * JSObject.cpp:
+        (nativeCallFunction):
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+        * UserObjectImp.h:
+
+2010-04-23  Sam Weinig  <sam@webkit.org>
+
+        Reviewed by David Levin.
+
+        Fix for https://bugs.webkit.org/show_bug.cgi?id=38060
+        Split up Threading.h
+
+        Add necessary forwarding headers.
+
+        * ForwardingHeaders/wtf/Atomics.h: Added.
+        * ForwardingHeaders/wtf/ThreadSafeShared.h: Added.
+        * ForwardingHeaders/wtf/ThreadingPrimitives.h: Added.
+
+2010-04-22  Sam Weinig  <sam@webkit.org>
+
+        Reviewed by Anders Carlsson.
+
+        Fix for https://bugs.webkit.org/show_bug.cgi?id=38022
+        Move isMainThread predicate function to MainThread.h
+
+        Added forwarding header for MainThread.h
+
+        * ForwardingHeaders/wtf/MainThread.h: Added.
+
+2010-04-22  Gavin Barraclough  <barraclough@apple.com>
+
+        Rubber stamped by Sam Weinig
+
+        Do not get the globaldata for the APIShim via the
+        global object; global object construction creates identifiers
+        which results in the ASSERTs checking the thread data's
+        identifierTable has been set failing.
+
+        * JSUtils.cpp:
+        (unprotectGlobalObject):
+        (getThreadGlobalData):
+        (getThreadGlobalObject):
+        (JSGlueAPIEntry::JSGlueAPIEntry):
+        (JSGlueAPICallback::~JSGlueAPICallback):
+
+2010-04-21  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        <rdar://problem/7879485> Leopard: Crash after opening Software Update dialog
+
+        * JSUtils.cpp:
+        (unprotectGlobalObject): Use the version of JSGlueAPIEntry that doesn't
+        call pthread_getspecific, since it's not safe to call pthread_getspecific
+        from a thread-specific data destructor. (<rdar://problem/7889842>
+        pthread_getspecific returns 0 when called from thread-specific data
+        destructor function)
+
+        (getThreadGlobalObject): Make sure to set the currentIdentifierTable
+        when first constructing our JSGlobalObject, since JSGlueAPIEntry has not
+        yet had an opportunity to do so.
+
+        (JSGlueAPIEntry::JSGlueAPIEntry):
+        * JSUtils.h: New version of JSGlueAPIEntry that doesn't call
+        pthread_getspecific.
+
+2010-04-21  Gavin Barraclough  <barraclough@apple.com>
+
+        Reviewed by NOBODY (build fix).
+        Errk! tree on fire, add fwd!
+
+        * ForwardingHeaders/wtf/text/StringHash.h: Added.
+
+2010-04-20  Gavin Barraclough  <barraclough@apple.com>
+
+        Reviewed by Oliver Hunt, Darin Adler.
+
+        Bug 37906 - Remove JSC::UStringImpl; unify with StringImpl.
+        Add forwarding header.
+
+        * ForwardingHeaders/wtf/ASCIICType.h: Added.
+        * ForwardingHeaders/wtf/text/StringImpl.h: Added.
+
+2010-04-20  Gavin Barraclough  <barraclough@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        Bug 37895 - Share common code from UStringImplBase with StringImpl
+        Add forwarding header.
+
+        * ForwardingHeaders/wtf/text/StringImplBase.h: Added.
+
+2010-04-20  Gavin Barraclough  <barraclough@apple.com>
+
+        Rubber stamped by Maciej Stachowiak (relanding r57829).
+        Added missing JS_EXPORTDATA
+
+        * ForwardingHeaders/wtf/WTFThreadData.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/WTFThreadData.h.
+        * JSUtils.cpp:
+        (JSGlueAPIEntry::JSGlueAPIEntry):
+        (JSGlueAPIEntry::~JSGlueAPIEntry):
+        (JSGlueAPICallback::JSGlueAPICallback):
+        (JSGlueAPICallback::~JSGlueAPICallback):
+
+2010-04-19  Gavin Barraclough  <barraclough@apple.com>
+
+        Reviewed by NOBODY (rolling out r57829).
+        This broke windows.
+
+        * ForwardingHeaders/wtf/WTFThreadData.h: Removed.
+        * JSUtils.cpp:
+        (JSGlueAPIEntry::JSGlueAPIEntry):
+        (JSGlueAPIEntry::~JSGlueAPIEntry):
+        (JSGlueAPICallback::JSGlueAPICallback):
+        (JSGlueAPICallback::~JSGlueAPICallback):
+
+2010-04-16  Gavin Barraclough  <barraclough@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        https://bugs.webkit.org/show_bug.cgi?id=37745
+        Move string uniquing tables to (new) WTFThreadData class.
+
+        Remove AtomicString's dependency on ThreadGlobalData so that we can move
+        WebCore's string classes up to WTF.
+
+        * ForwardingHeaders/wtf/WTFThreadData.h: Added.
+        * JSUtils.cpp: Update 
+        (JSGlueAPIEntry::JSGlueAPIEntry):
+        (JSGlueAPIEntry::~JSGlueAPIEntry):
+        (JSGlueAPICallback::JSGlueAPICallback):
+        (JSGlueAPICallback::~JSGlueAPICallback):
+
+2010-03-31  Gavin Barraclough  <barraclough@apple.com>
+
+        Reviewed by Geoff Garen.
+
+        Bug 36871 - Remove JSC::CString
+        Use WTF::CString instead (which until recently was WebCore::CString).
+
+        * ForwardingHeaders/wtf/text: Added.
+        * ForwardingHeaders/wtf/text/CString.h: Added.
+
+2010-03-11  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by David Kilzer.
+
+        <rdar://problem/7745082> Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version
+
+        Default to using the appropriate SDK if the target Mac OS X version is not the current Mac OS X version.
+
+        * Configurations/Base.xcconfig:
+
+2010-03-11  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Tim Hatcher.
+
+        <rdar://problem/7745082> Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version
+
+        Introduce TARGET_MAC_OS_X_VERSION_MAJOR to represent the Mac OS X version that is being targeted.  It defaults to the
+        current Mac OS X version unless otherwise specified.
+
+        Key off TARGET_MAC_OS_X_VERSION_MAJOR where we'd previously been keying off MAC_OS_X_VERSION_MAJOR.
+
+        Explicitly map from the target Mac OS X version to the preferred compiler since Xcode's default compiler choice
+        may not be usable when targetting a different Mac OS X version.
+
+        Key off TARGET_GCC_VERSION rather than MAC_OS_X_VERSION_MAJOR in locations where we'd previously been keying off
+        MAC_OS_X_VERSION_MAJOR but the decision is really related to the compiler version being used.
+
+        * Configurations/Base.xcconfig:
+        * Configurations/DebugRelease.xcconfig:
+        * Configurations/Version.xcconfig:
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2010-03-01  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Maciej Stachowiak.
+
+        Refactor named getter function signature to be in line with indexing getter signature
+        https://bugs.webkit.org/show_bug.cgi?id=35563
+
+        Fix method signature and update code as appropriate
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::userObjectGetter):
+        * UserObjectImp.h:
+
+2010-02-09  Alexey Proskuryakov  <ap@apple.com>
+
+        Reviewed by Geoffrey Garen.
+
+        https://bugs.webkit.org/show_bug.cgi?id=34490
+        WebCore::ImageEventSender::dispatchPendingEvents() crashes in certain conditions
+
+        * ForwardingHeaders/wtf/ValueCheck.h: Added.
+
+2010-02-04  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Timothy Hatcher.
+
+        Build fix.  Remove a symbol corresponding to an inline function from the linker export
+        file to prevent a weak external failure.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Accommodate rename of script.
+
+2010-01-28  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Gavin Barraclough.
+
+        Simplify anonymous slot implementation
+        https://bugs.webkit.org/show_bug.cgi?id=34282
+
+        Update JSGlue Structure usage to pass the anonymous slot count.
+
+        * UserObjectImp.h:
+        (UserObjectImp::createStructure):
+
+2010-01-12  Kent Hansen  <kent.hansen@nokia.com>
+
+        Reviewed by Geoffrey Garen.
+
+        [ES5] Implement Object.getOwnPropertyNames
+        https://bugs.webkit.org/show_bug.cgi?id=32242
+
+        Add new argument to the reimplementation of getOwnPropertyNames().
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::getOwnPropertyNames):
+        * UserObjectImp.h:
+
+2010-01-07  Alexey Proskuryakov  <ap@apple.com>
+
+        Mac build fix.
+
+        * config.h: Define JS_EXPORTCLASS for JavaScriptGlue.
+
+2010-01-05  Gavin Barraclough  <barraclough@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        https://bugs.webkit.org/show_bug.cgi?id=33236
+        Remove m_identifierTable pointer from UString
+
+        Add API shims similar to those used in the JSC API to track the current identifierTable.
+
+        * JSBase.cpp:
+        (JSBase::Release):
+        * JSUtils.cpp:
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (unprotectGlobalObject):
+        (JSGlueAPIEntry::JSGlueAPIEntry):
+        (JSGlueAPIEntry::~JSGlueAPIEntry):
+        (JSGlueAPICallback::JSGlueAPICallback):
+        (JSGlueAPICallback::~JSGlueAPICallback):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectCopyCFValue):
+        * JavaScriptGlue.cpp:
+        (JSRunCreate):
+        (JSRunEvaluate):
+        (JSRunCheckSyntax):
+        (JSCollect):
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+
+2010-01-04  Gavin Barraclough <barraclough@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Add a forwarding header so that StringHashFunctions.h can be found.
+
+        * ForwardingHeaders/wtf/StringHashFunctions.h: Added.
+
+2010-01-04  Dan Bernstein  <mitz@apple.com>
+
+        Reviewed by Ada Chan and Mark Rowe.
+
+        Updated copyright string
+
+        * Info.plist:
+
+2009-12-21  Gavin Barraclough  <barraclough@apple.com>
+
+        Reviewed by Darin Adler.
+
+        https://bugs.webkit.org/show_bug.cgi?id=32831
+        Replace UString::Rep implementation, following introduction of ropes to JSC.
+
+        * ForwardingHeaders/wtf/PossiblyNull.h: Added.
+            - add forwarding header.
+
+2009-12-16  Mark Rowe  <mrowe@apple.com>
+
+        Build fix.  Disable debug variants of WebKit frameworks.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2009-12-13  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Sam Weinig.
+        
+        Changed GC from mark-sweep to mark-allocate.
+        
+        * JavaScriptGlue.cpp:
+        (JSCollect): Updated for rename. Fixed a bug where JSGlue would not check
+        to avoid nested GC calls.
+
+2009-12-08  Dmitry Titov  <dimich@chromium.org>
+
+        Rubber-stamped by David Levin.
+
+        Revert and reopen "Add asserts to RefCounted to make sure ref/deref happens on the right thread."
+        It may have caused massive increase of reported leaks on the bots.
+        https://bugs.webkit.org/show_bug.cgi?id=31639
+
+        * ForwardingHeaders/wtf/ThreadVerifier.h: Removed.
+
+2009-12-08  Dmitry Titov  <dimich@chromium.org>
+
+        Reviewed by Darin Adler.
+
+        Add asserts to RefCounted to make sure ref/deref happens on the right thread.
+        https://bugs.webkit.org/show_bug.cgi?id=31639
+
+        * ForwardingHeaders/wtf/ThreadVerifier.h: Added.
+
+2009-11-24  Mark Rowe  <mrowe@apple.com>
+
+        Fix production builds where the source tree may be read-only.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2009-11-08  David Levin  <levin@chromium.org>
+
+        Reviewed by NOBODY (chromium build fix).
+
+        Added the use jsc define for files that use
+        this config file and DateMath.h. This should
+        be able to go away when DateMath is properly
+        split into wtf and jsc portions which is this bug:
+        https://bugs.webkit.org/show_bug.cgi?id=31246
+
+        * config.h:
+
+2009-11-06  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        https://bugs.webkit.org/show_bug.cgi?id=31197
+        Implemented a timezone cache not based on Mac OS X's notify_check API.
+        
+        * ForwardingHeaders/wtf/CurrentTime.h: Added.
+
+2009-10-27  Geoffrey Garen  <ggaren@apple.com>
+
+        Build fix: Updated for JavaScriptCore export changes.
+
+        * ForwardingHeaders/wtf/DateInstanceCache.h: Added.
+
+2009-10-27  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        Updated for JavaScriptCore export changes.
+
+        * ForwardingHeaders/wtf/DateMath.h: Added.
+
+2009-10-27  Dan Bernstein  <mitz@apple.com>
+
+        Reviewed by Darin Adler.
+
+        Updated license
+
+        * LICENSE:
+
+2009-10-16  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Gavin Barraclough.
+
+        Make typeinfo flags default to false
+        https://bugs.webkit.org/show_bug.cgi?id=30372
+
+        Last part -- replace HasDefaultGetPropertyNames with OverridesGetPropertyNames
+        flag.
+
+        * UserObjectImp.h:
+        (UserObjectImp::createStructure):
+
+2009-10-15  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Darin Adler.
+
+        Make typeinfo flags default to false
+        https://bugs.webkit.org/show_bug.cgi?id=30372
+
+        Part 2 -- Reverse the TypeInfo HasDefaultMark flag to OverridesMarkChildren, etc
+
+        * UserObjectImp.h:
+        (UserObjectImp::createStructure):
+
+2009-10-14  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Geoff Garen.
+
+        Make typeinfo flags default to false
+        https://bugs.webkit.org/show_bug.cgi?id=30372
+        
+        Part 1. Reverse the HasStandardGetOwnPropertySlot flag.
+
+        * UserObjectImp.h:
+        (UserObjectImp::createStructure):
+
+2009-09-28  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Removed virtual destructor from JSGlobalObjectData to eliminate pointer
+        fix-ups when accessing JSGlobalObject::d.
+        
+        Replaced with an explicit destructor function pointer.
+
+        * JSRun.cpp:
+        (JSGlueGlobalObject::destroyData):
+        * JSRun.h:
+        (JSGlueGlobalObject::Data::Data):
+
+2009-09-12  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Maciej Stachowiak.
+
+        [ES5] Implement Object.keys
+        https://bugs.webkit.org/show_bug.cgi?id=29170
+
+        Switch over to getOwnPropertyNames instead of getPropertyNames.
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::getOwnPropertyNames):
+        * UserObjectImp.h:
+
+2009-09-02  Darin Adler  <darin@apple.com>
+
+        Reviewed by Geoff Garen.
+
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectMark): Removed a check of the mark
+        bit. It's OK to do more work in this case, and there is no
+        longer a public function to access the mark bit.
+
+2009-08-14  Darin Adler  <darin@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Rename the confusing isObject(<class>) to inherits(<class>).
+        It still works on non-objects, returning false.
+
+        * JSUtils.cpp:
+        (KJSValueToJSObject):
+        (KJSValueToCFTypeInternal):
+        Changed from isObject to inherits.
+
+2009-08-13  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Maciej Stachowiak.
+
+        Devirtualise marking
+        https://bugs.webkit.org/show_bug.cgi?id=28294
+
+        Continue to jump through hoops to deal with the exposed marking routines
+        in JavaScriptGlue.
+
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectMark):
+
+2009-08-07  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Stack overflow crash in JavaScript garbage collector mark pass
+        https://bugs.webkit.org/show_bug.cgi?id=12216
+
+        Make JSGlue interact with the new iterative mark logic.
+
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectMark):
+          Unfortunately JSGlue exposes recursive marking so we can only flatten
+          the recursion.  We just create a local mark stack if necessary and mark
+          the given object iteratively from this point.
+        * UserObjectImp.cpp:
+        (UserObjectImp::markChildren):
+        * UserObjectImp.h:
+
+2009-08-06  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Sam Weinig.
+
+        Add explicit dependencies for our build verification scripts to ensure that they always run after linking has completed.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2009-07-27  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin Adler.
+
+        https://bugs.webkit.org/show_bug.cgi?id=27735
+        Give a helpful name to JSLock constructor argument
+
+        * JSBase.cpp:
+        (JSBase::Release):
+        * JSUtils.cpp:
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (unprotectGlobalObject):
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectCopyCFValue):
+        * JavaScriptGlue.cpp:
+        (JSRunCreate):
+        (JSRunEvaluate):
+        (JSRunCheckSyntax):
+        (JSCollect):
+        (JSLockInterpreter):
+        (JSUnlockInterpreter):
+
+2009-07-10  Adam Roben  <aroben@apple.com>
+
+        Sort all our Xcode projects
+
+        Accomplished using sort-Xcode-project-file.
+
+        Requested by Dave Kilzer.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2009-07-08  Darin Adler  <darin@apple.com>
+
+        Reviewed by Dan Bernstein
+
+        - fix <rdar://problem/6971484> REGRESSION (r30534): "Scrolling Credits"
+          effect does not scroll on iMovie 7.1.4 on Tiger
+
+        In <http://trac.webkit.org/changeset/30534>, the prototype of
+        JSObject::put() which UserObjectImp had been overriding changed, but
+        UserObjectImp wasn't updated, so its override was no longer getting
+        called after that.
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::put): Match the current prototype of JSObject::put().
+        The PutPropertySlot argument is unused.
+        * UserObjectImp.h: Ditto.
+
+2009-06-19  Zoltan Horvath  <hzoltan@inf.u-szeged.hu>
+
+        Reviewed by Darin Adler.
+
+        Add FastAllocBase.h to JavaScriptGlue's ForwardingHeaders/wtf, because it's needed by HashCountedSet.h on MAC.
+
+        * ForwardingHeaders/wtf/FastAllocBase.h: Added.
+
+2009-06-02  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Anders Carlsson.
+
+        Remove workaround that was added to address <rdar://problem/5488678> as it no longer affects our Tiger builds.
+
+        * Configurations/Base.xcconfig:
+
+2009-05-25  David Levin  <levin@chromium.org>
+
+        Reviewed by Maciej Stachowiak and Oliver Hunt.
+
+        https://bugs.webkit.org/show_bug.cgi?id=25126
+
+        Added forwarding headers.
+
+        * ForwardingHeaders/wtf/CrossThreadRefCounted.h: Added.
+        * ForwardingHeaders/wtf/OwnFastMallocPtr.h: Added.
+
+2009-05-23  David Kilzer  <ddkilzer@apple.com>
+
+        Part 1 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr
+
+        <https://bugs.webkit.org/show_bug.cgi?id=25495>
+
+        Reviewed by Oliver Hunt.
+
+        * ForwardingHeaders/wtf/OwnPtrCommon.h: Added.
+        * ForwardingHeaders/wtf/PassOwnPtr.h: Added.
+
+2009-05-14  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Darin Adler.
+
+        <rdar://problem/6681868> When building with Xcode 3.1.3 should be using gcc 4.2
+
+        The meaning of XCODE_VERSION_ACTUAL is more sensible in newer versions of Xcode.
+        Update our logic to select the compiler version to use the more appropriate XCODE_VERSION_MINOR
+        if the version of Xcode supports it, and fall back to XCODE_VERSION_ACTUAL if not.
+
+        * Configurations/Base.xcconfig:
+
+2009-05-07  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Gavin Barraclough.
+
+        Add calling convention annotation
+
+        * JSObject.cpp:
+
+2009-05-01  Geoffrey Garen  <ggaren@apple.com>
+
+        Rubber Stamped by Sam Weinig.
+        
+        Renamed JSValuePtr => JSValue.
+
+        * JSObject.cpp:
+        (nativeCallFunction):
+        * JSUtils.cpp:
+        (KJSValueToJSObject):
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (KJSValueToCFType):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSValueWrapper):
+        (JSValueWrapper::GetValue):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        * JSValueWrapper.h:
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+        (UserObjectImp::userObjectGetter):
+        (UserObjectImp::getOwnPropertySlot):
+        (UserObjectImp::put):
+        (UserObjectImp::toPrimitive):
+        * UserObjectImp.h:
+        (UserObjectImp::createStructure):
+
+2009-04-29  Oliver Hunt  <oliver@apple.com>
+
+        Reviewed by Gavin Barraclough.
+
+        Clean up ArgList to be a trivial type
+
+        Start using MarkedArgumentBuffer to create argument lists for function calls
+
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCallFunction):
+
+2009-04-28  Geoffrey Garen  <ggaren@apple.com>
+
+        Rubber stamped by Beth Dakin.
+        
+        Missed one.
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+
+2009-04-21  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Mark Rowe.
+
+        Tiger crash fix: Put VM tags in their own header file, and fixed up the
+        #ifdefs so they're not used on Tiger.
+
+        * ForwardingHeaders/wtf/VMTags.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/HashTraits.h.
+
+2009-04-20  Sam Weinig  <sam@webkit.org>
+
+        Rubber-stamped by Tim Hatcher.
+
+        Add licenses for xcconfig files.
+
+        * Configurations/Base.xcconfig:
+        * Configurations/DebugRelease.xcconfig:
+        * Configurations/JavaScriptGlue.xcconfig:
+        * Configurations/Version.xcconfig:
+
+2009-03-13  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Dan Bernstein.
+
+        Take advantage of the ability of recent versions of Xcode to easily switch the active
+        architecture.
+
+        * Configurations/DebugRelease.xcconfig:
+
+2009-02-24  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Dan Bernstein.
+
+        <rdar://problem/6407844> JavaScriptGlue should use -Os rather than -O2
+
+        * Configurations/Base.xcconfig:
+
+2009-01-28  Sam Weinig  <sam@webkit.org>
+
+        Reviewed by Gavin Barraclough.
+
+        Fix for <rdar://problem/6525537>
+        Hang occurs when closing Installer window (iTunes, Aperture)
+
+        * JSUtils.cpp:
+        (getThreadGlobalObject): Use the shared JSGlobalData instance.
+
+2009-01-22  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Anders Carlsson.
+
+        Disable GCC_WARN_ABOUT_MISSING_PROTOTYPES temporarily.
+
+        Current versions of Xcode only respect it for C and Objective-C files,
+        and our code doesn't currently compile if it is applied to C++ and
+        Objective-C++ files.
+
+        * Configurations/Base.xcconfig:
+
+2009-01-19  Sam Weinig  <sam@webkit.org>
+
+        Rubber-stamped by Gavin Barraclough.
+
+        Remove temporary operator-> from JSValuePtr.
+
+        * JSUtils.cpp:
+        (KJSValueToJSObject):
+        (KJSValueToCFTypeInternal):
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectMark):
+        * UserObjectImp.cpp:
+        (UserObjectImp::getOwnPropertySlot):
+
+2009-01-14  Dan Bernstein  <mitz@apple.com>
+
+        Reviewed by John Sullivan.
+
+        - update copyright
+
+        * Info.plist:
+
+2009-01-09  David Levin  <levin@chromium.org>
+
+        Reviewed by Oliver Hunt.
+
+        https://bugs.webkit.org/show_bug.cgi?id=23175
+
+        Added forwarding header.
+
+        * ForwardingHeaders/wtf/PtrAndFlags.h: Added.
+
+2009-01-05  Gavin Barraclough  <baraclough@apple.com>
+
+        Rubber Stamped by Oliver Hunt.
+
+        Replace all uses of JSValue* with new wrapper class, JSValuePtr.
+        See JavaScriptCore/ChangeLog for more detailed description.
+
+        * JSObject.cpp:
+        (nativeCallFunction):
+        * JSUtils.cpp:
+        (KJSValueToJSObject):
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (KJSValueToCFType):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSValueWrapper):
+        (JSValueWrapper::GetValue):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        * JSValueWrapper.h:
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+        (UserObjectImp::userObjectGetter):
+        (UserObjectImp::getOwnPropertySlot):
+        (UserObjectImp::put):
+        (UserObjectImp::toPrimitive):
+        * UserObjectImp.h:
+        (UserObjectImp::createStructure):
+
+2008-12-15  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Cameron Zwarich.
+
+        <rdar://problem/6289933> Change WebKit-related projects to build with GCC 4.2 on Leopard.
+
+        * Configurations/Base.xcconfig:
+        * Configurations/DebugRelease.xcconfig:
+
+2008-12-08  David Kilzer  <ddkilzer@apple.com>
+
+        Bug 22555: Sort "children" sections in Xcode project files
+
+        <https://bugs.webkit.org/show_bug.cgi?id=22555>
+
+        Reviewed by Eric Seidel.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Sorted.
+
+2008-11-17  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Sam Weinig.
+        
+        Updated for JavaScriptCore rename.
+
+        * ForwardingHeaders/runtime/CallFrame.h: Copied from JavaScriptGlue/ForwardingHeaders/runtime/ExecState.h.
+        * ForwardingHeaders/runtime/ExecState.h: Removed.
+        * config.h:
+
+2008-11-17  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Sam Weinig.
+        
+        Updated for JavaScriptCore rename.
+
+        * ForwardingHeaders/interpreter: Added.
+        * ForwardingHeaders/interpreter/CallFrame.h: Copied from ForwardingHeaders/runtime/ExecState.h.
+        * ForwardingHeaders/runtime/ExecState.h: Removed.
+
+2008-11-15  Darin Adler  <darin@apple.com>
+
+        Rubber stamped by Geoff Garen.
+
+        - do the long-planned StructureID -> Structure rename
+
+        * JSRun.cpp:
+        (JSGlueGlobalObject::JSGlueGlobalObject):
+        (JSRun::JSRun):
+        * JSRun.h:
+        (JSGlueGlobalObject::userObjectStructure):
+        * JSUtils.cpp:
+        (getThreadGlobalObject):
+        * UserObjectImp.cpp:
+        (UserObjectImp::UserObjectImp):
+        * UserObjectImp.h:
+        (UserObjectImp::createStructure):
+
+2008-11-15  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Sam Weinig.
+        
+        Updated for JavaScriptCore renames.
+
+        * JSRun.cpp:
+        (JSRun::Evaluate):
+        (JSRun::CheckSyntax):
+
+2008-11-05  Cameron Zwarich  <zwarich@apple.com>
+
+        Not reviewed.
+
+        Fix the JavaScriptGlue build. This wouldn't show up unless one was
+        doing a clean build, because changes in JavaScriptCore don't cause
+        anything in JavaScriptGlue to get rebuilt.
+
+        * JSRun.cpp:
+        * JSUtils.h:
+        * JavaScriptGlue.cpp:
+
+2008-11-04  Cameron Zwarich  <zwarich@apple.com>
+
+        Reviewed by Mark Rowe.
+
+        Remove JavaScriptGlue forwarding headers that are no longer necessary,
+        and correct the path of the ExecState.h forwarding header.
+
+        * ForwardingHeaders/kjs: Removed.
+        * ForwardingHeaders/kjs/CTI.h: Removed.
+        * ForwardingHeaders/kjs/ExecState.h: Removed.
+        * ForwardingHeaders/kjs/JSValue.h: Removed.
+        * ForwardingHeaders/kjs/PutPropertySlot.h: Removed.
+        * ForwardingHeaders/kjs/ustring.h: Removed.
+        * ForwardingHeaders/runtime: Added.
+        * ForwardingHeaders/runtime/ExecState.h: Copied from ForwardingHeaders/kjs/ExecState.h.
+        * config.h:
+
+2008-10-31  Stephanie Lewis  <slewis@apple.com>
+
+        Fix build by including right files.
+
+        * JSRun.cpp:
+
+2008-10-30  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Jon Homeycutt.
+
+        Explicitly default to building for only the native architecture in debug and release builds.
+
+        * Configurations/DebugRelease.xcconfig:
+
+2008-10-24  Darin Adler  <darin@apple.com>
+
+        - finish rolling out https://bugs.webkit.org/show_bug.cgi?id=21732
+
+        * JSObject.cpp:
+        (nativeCallFunction):
+        * JSUtils.cpp:
+        (KJSValueToJSObject):
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (KJSValueToCFType):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSValueWrapper):
+        (JSValueWrapper::GetValue):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        * JSValueWrapper.h:
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+        (UserObjectImp::userObjectGetter):
+        (UserObjectImp::getOwnPropertySlot):
+        (UserObjectImp::put):
+        (UserObjectImp::toPrimitive):
+        * UserObjectImp.h:
+        (UserObjectImp::createStructureID):
+        Use JSValue* instead of JSValuePtr.
+
+2008-10-23  Darin Adler  <darin@apple.com>
+
+        - roll out https://bugs.webkit.org/show_bug.cgi?id=21732
+
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::GetValue): Added missing call to .get().
+        * JSValueWrapper.h: ProtectedPtr<JSValue> instead of ProtectedPtr<JSValuePtr>.
+
+2008-10-22  Darin Adler  <darin@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        - fix https://bugs.webkit.org/show_bug.cgi?id=21294
+          Bug 21294: Devirtualize getOwnPropertySlot()
+
+        * JSRun.cpp:
+        (JSGlueGlobalObject::JSGlueGlobalObject): Moved constructor here.
+        Set up flags in its new location in global object data, and set up
+        a structure for UserObjectImp too.
+        (JSRun::JSRun): Added code to give the JSGlueGlobalObject its own unique
+        structure, rather than using the default one from JSGlobalObject.
+
+        * JSRun.h: Made JSGlueGlobalObject take a structure ID. Also moved
+        the data into a separate data object. And added userObjectStructure,
+        a Structure to be used by UserObjectImp.
+
+        * JSUtils.cpp: Removed unused sharedGlobalData global.
+        (JSObjectKJSValue): Pass Structure in when creating UserObjectImp.
+        (unprotectGlobalObject): Use JSGlueGLobalObject type specifically.
+        (initializeGlobalObjectKey): Removed code to set up unused sharedGlobalData.
+        (getThreadGlobalObject): Added. Shared by JSObjectKJSValue and
+        getThreadGlobalExecState. Also now passes in a structure ID when creating
+        the global object.
+        (getThreadGlobalExecState): Changed to call getThreadGlobalObject.
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::UserObjectImp): Changed to take a structure.
+        * UserObjectImp.h:
+        (UserObjectImp::createStructureID): Added. Returns a structure without
+        HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
+
+2008-10-20  Sam Weinig  <sam@webkit.org>
+
+        Reviewed by Cameron Zwarich.
+
+        Fix for https://bugs.webkit.org/show_bug.cgi?id=21766
+        REGRESSION: 12 JSC tests fail
+
+        The JSGlobalObject constructor no longer takes a JSGlobalData
+        as an argument.
+
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        * JSRun.h:
+        (JSGlueGlobalObject::JSGlueGlobalObject):
+        * JSUtils.cpp:
+        (getThreadGlobalExecState):
+
+2008-10-19  Darin Adler  <darin@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
+          improve performance by eliminating JSValue as a base class for JSCell
+
+        Remove most uses of JSValue, which will be removed in a future patch.
+
+        * JSValueWrapper.h: Use JSValuePtr instead of JSValue*.
+
+2008-10-18  Darin Adler  <darin@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
+          improve performance by eliminating JSValue as a base class for JSCell
+
+        Tweak a little more to get closer to where we can make JSValuePtr a class.
+
+        * JSObject.cpp:
+        (nativeCallFunction): Call asObject.
+
+        * JSUtils.cpp:
+        (KJSValueToJSObject): Use JSValuePtr and asObject.
+        (JSObjectKJSValue): Ditto.
+        (KJSValueToCFTypeInternal): Ditto.
+        (KJSValueToCFType): Ditto.
+        * JSUtils.h: Ditto.
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction): Use JSValuePtr and asObject.
+        (UserObjectImp::userObjectGetter): Ditto.
+        (UserObjectImp::getOwnPropertySlot): Ditto.
+        (UserObjectImp::put): Ditto.
+        (UserObjectImp::toPrimitive): Ditto.
+        * UserObjectImp.h: Ditto.
+
+2008-10-18  Darin Adler  <darin@apple.com>
+
+        Reviewed by Cameron Zwarich.
+
+        - next step on https://bugs.webkit.org/show_bug.cgi?id=21732
+          improve performance by eliminating JSValue as a base class for JSCell
+
+        Use JSValuePtr everywhere instead of JSValue*. In the future, we'll be
+        changing JSValuePtr to be a class, and then eventually renaming it
+        to JSValue once that's done.
+
+        * JSObject.cpp:
+        * JSValueWrapper.cpp:
+        * UserObjectImp.cpp:
+        * UserObjectImp.h:
+        Replace JSValue* with JSValuePtr.
+
+2008-10-13  Maciej Stachowiak  <mjs@apple.com>
+
+        Rubber stamped by Mark Rowe.
+        
+        - use gcc 4.2 when building with Xcode 3.1 or newer on Leopard, even though this is not the default
+
+        * Configurations/DebugRelease.xcconfig:
+
+2008-10-06  Maciej Stachowiak  <mjs@apple.com>
+
+        Not reviewed. Build fix.
+
+        - revert toBoolean changes (r37333 and r37335); need to make WebCore work with these
+
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+
+2008-10-06  Maciej Stachowiak  <mjs@apple.com>
+
+        Not reviewed.
+        
+        - fix build; toBoolean no longer takes an ExecState
+
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+
+2008-10-04  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Tim Hatcher.
+
+        Add a 'Check For Weak VTables' build phase to catch weak vtables as early as possible.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2008-10-01  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Darin Adler and Cameron Zwarich.
+
+        * JSRun.cpp:
+        (JSRun::Evaluate):
+        (JSRun::CheckSyntax): Provide a SourceCode to the Interpreter, since
+        other APIs are no longer supported.
+
+2008-09-29  Geoffrey Garen  <ggaren@apple.com>
+
+        Not reviewed.
+        
+        Forwarding headers to fix the build.
+
+        * ForwardingHeaders/kjs/CTI.h: Copied from ForwardingHeaders/kjs/ExecState.h.
+        * ForwardingHeaders/kjs/ustring.h: Copied from ForwardingHeaders/kjs/ExecState.h.
+        * ForwardingHeaders/masm: Added.
+        * ForwardingHeaders/masm/X86Assembler.h: Added.
+        * ForwardingHeaders/profiler: Added.
+        * ForwardingHeaders/profiler/Profiler.h: Added.
+
+2008-09-08  Sam Weinig  <sam@webkit.org>
+
+        Reviewed by Maciej Stachowiak and Oliver Hunt.
+
+        Add forwarding headers.
+
+        * ForwardingHeaders/wtf/HashFunctions.h: Added.
+        * ForwardingHeaders/wtf/HashTraits.h: Added.
+
+2008-09-02  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Sam Weinig.
+        
+        Implemented the rest of Darin's review comments for the 09-01 inline
+        caching patch.
+        
+        * ForwardingHeaders/kjs/PutPropertySlot.h: Added.
+
+2008-09-01  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Darin Adler.
+
+        First cut at inline caching for access to vanilla JavaScript properties.
+        
+        Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
+        to JavaScriptGlue classes, and PutPropertySlot& arguments to put functions.
+
+2008-08-22  Anders Carlsson  <andersca@apple.com>
+
+        Fix build for real this time.
+        
+        * UserObjectImp.h:
+
+2008-08-22  Anders Carlsson  <andersca@apple.com>
+
+        Fix build.
+        
+        * UserObjectImp.cpp:
+        (UserObjectImp::toPrimitive):
+        * UserObjectImp.h:
+
+2008-08-19  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Geoff Garen.
+
+        Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
+
+        * JSBase.cpp:
+        (JSBase::Release):
+        * JSUtils.cpp:
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (unprotectGlobalObject):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectCopyCFValue):
+        * JavaScriptGlue.cpp:
+        (JSRunCreate):
+        (JSRunEvaluate):
+        (JSRunCheckSyntax):
+        (JSCollect):
+        (JSLockInterpreter):
+        (JSUnlockInterpreter):
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+
+2008-08-12  Darin Adler  <darin@apple.com>
+
+        Reviewed by Geoff.
+
+        - eliminate JSValue::type()
+
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal): Replaced uses of JSValue::type() with
+        JSValue::is functions.
+        * UserObjectImp.cpp:
+        (UserObjectImp::getOwnPropertySlot): Ditto.
+        (UserObjectImp::toPrimitive): Take PreferredPrimitiveType argument
+        instead of JSType argument.
+        * UserObjectImp.h: Ditto.
+
+2008-08-17  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Cameron Zwarich.
+        
+        Updated project files to XCode 3.1.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2008-08-15  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Geoff Garen.
+
+        <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
+
+        * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
+        between the Debug configuration and debug Production variant.
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Enable the debug variant.
+
+2008-07-31  Alexey Proskuryakov  <ap@webkit.org>
+
+        Rubber-stamped by Maciej.
+
+        Eliminate JSLock (it was already disabled, removing the stub implementaion and all
+        call sites now).
+
+        * JSBase.cpp:
+        (JSBase::Release):
+        * JSUtils.cpp:
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (unprotectGlobalObject):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectCopyCFValue):
+        * JavaScriptGlue.cpp:
+        (JSRunCreate):
+        (JSRunEvaluate):
+        (JSRunCheckSyntax):
+        (JSCollect):
+        (JSLockInterpreter):
+        (JSUnlockInterpreter):
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+
+2008-07-29  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Geoff Garen.
+
+        Implement JSContextGroup APIs to make concurrent execution possible for
+        JavaScriptCore clients.
+
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        * JSUtils.cpp:
+        (getThreadGlobalExecState):
+        Changed JavaScriptGlue to use a JSGlobalData of its own, now that there is no shared
+        instance.
+
+2008-07-23  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Geoff Garen.
+
+        Make JSClassRef work with any context, not just the first one it was used in.
+
+        * ForwardingHeaders/wtf/HashMap.h: Added.
+
+2008-07-22  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Oliver Hunt and Sam Weinig.
+
+        Next step toward putting doubles in registers: Prepare the Register class
+        and its clients for registers that don't contain JSValue*s.
+        
+2008-07-21  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
+
+        * Configurations/Version.xcconfig:
+        * Info.plist:
+
+2008-07-18  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Cameron Zwarich.
+        
+        Three renames:
+        
+        "CallTypeNative" => "CallTypeHost"
+        "code" => "byteCode"
+        "generatedCode" => "generatedByteCode"
+
+        * ChangeLog:
+        * JSObject.cpp:
+        (JSUserObject::getCallData):
+
+2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Geoff Garen.
+
+        Eliminate per-thread JavaScript global data instance support and make arbitrary
+        global data/global object combinations possible.
+
+        * ForwardingHeaders/wtf/ThreadSpecific.h: Added.
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        * JSUtils.cpp:
+        (getThreadGlobalExecState):
+        Adapt to the new way of asking for shared JSGlobalData.
+
+2008-07-10  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
+
+        * Configurations/JavaScriptGlue.xcconfig:
+
+2008-07-09  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Geoff Garen.
+
+        Don't warn about deprecated functions in production builds.
+
+        * Configurations/Base.xcconfig:
+        * Configurations/DebugRelease.xcconfig:
+
+2008-07-08  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin Adler.
+
+        <rdar://problem/6058368> REGRESSION: Crash occurs in KJS::Machine after launching
+        Apple Installer
+
+        The problem was that JSUserObject::getCallData() was setting call type to native, but
+        left callData.native.function uninitialized.
+
+        * JSObject.cpp:
+        (JSUserObject::getCallData): Initialize callData.native.function.
+        (nativeCallFunction): Call UserObjectImp::callAsFunction().
+
+2008-07-04  Sam Weinig  <sam@webkit.org>
+
+        Rubber-stamped by Dan Bernstein.
+
+        * JSObject.h: Rename the header guard as it now conflicts with the
+        JSObject in JavaScriptCore.
+
+2008-07-01  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin Adler.
+
+        Disable JSLock for per-thread contexts.
+
+        * ForwardingHeaders/wtf/Locker.h: Added.
+        * ForwardingHeaders/wtf/Threading.h: Added.
+        * JSBase.cpp:
+        (JSBase::Release):
+        * JSUtils.cpp:
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (unprotectGlobalObject):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectCopyCFValue):
+        * JavaScriptGlue.cpp:
+        (JSRunCreate):
+        (JSRunEvaluate):
+        (JSRunCheckSyntax):
+        (JSCollect):
+        (JSLockInterpreter):
+        (JSUnlockInterpreter):
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+        Pass a parameter (always true) to JSLock and JSLock::DropAllLocks to indicate that JSG
+        clients always need implicit mutex protection.
+        Added includes that are now needed.
+
+2008-06-26  Darin Adler  <darin@apple.com>
+
+        Reviewed by Geoff.
+
+        * JSUtils.cpp: Added include of <JavaScriptCore/JSString.h> since jsString
+        will soon be changed to return a JSString*.
+        * UserObjectImp.cpp: Ditto.
+
+2008-06-23  Darin Adler  <darin@apple.com>
+
+        Reviewed by Geoff.
+
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCallFunction): Updated to use getCallData and call instead
+        of the old callAsFunction.
+
+2008-06-17  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin Adler.
+
+        Prepare JavaScript heap for being per-thread.
+
+        * JSRun.cpp: (JSRun::JSRun): Create JSGlueGlobalObject in a shared JS heap.
+
+        * JSUtils.h: Made getThreadGlobalExecState available throughout JSGlue.
+
+        * JSUtils.cpp:
+        (JSObjectKJSValue): Pass an ExecState where now required.
+        (unprotectGlobalObject):
+        (initializeGlobalObjectKey):
+        (getThreadGlobalExecState):
+        Moved these functions from JSValueWrapper.cpp, as the global exec state is now needed
+        elsewhere. I'm not quite sure how this relates to the global object from JSRun, but
+        since the new uses are all for Heap access, there doesn't seem to be any behavior change.
+
+        * JavaScriptGlue.cpp:
+        (JSLockInterpreter): Don't call registerThread explicitly, as JSLock will do that.
+
+        * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState* where now required.
+
+2008-06-17  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Darin Adler.
+
+        <rdar://problem/5775802> JavaScriptGlue should not force use of GCC 4.0.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2008-06-16  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Alexey.
+
+        - removed nearly unused types.h and LocalStorageEntry.h headers
+
+        * JSUtils.h:
+
+2008-06-16  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Geoff Garen.
+
+        Make Identifier construction use an explicitly passed IdentifierTable.
+
+        * JSUtils.cpp:
+        (CFStringToIdentifier):
+        (KJSValueToCFTypeInternal):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        * UserObjectImp.cpp:
+        (UserObjectImp::getPropertyNames):
+        Pass ExecState or JSGlobalData everywhere.
+
+2008-06-15  Darin Adler  <darin@apple.com>
+
+        - rename KJS::List to KJS::ArgList
+
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCallFunction):
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+        * UserObjectImp.h:
+
+2008-06-15  Darin Adler  <darin@apple.com>
+
+        - new names for a few key JavaScriptCore files
+
+        * ForwardingHeaders/kjs/JSValue.h: Copied from JavaScriptGlue/ForwardingHeaders/kjs/value.h.
+        * ForwardingHeaders/kjs/value.h: Removed.
+        * JSUtils.h:
+
+2008-06-03  Darin Adler  <darin@apple.com>
+
+        - update for JavaScriptCore changes for https://bugs.webkit.org/show_bug.cgi?id=19269
+          speed up SunSpider by eliminating the toObject call for most get/put/delete
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::userObjectGetter): Removed originalObject argument.
+        * UserObjectImp.h: Ditto.
+
+2008-06-02  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Alexey Proskuryakov.
+
+        Removed JSObject::call, since it just called JSObject::callAsFunction.
+
+        SunSpider reports no change.
+
+2008-05-28  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Oliver Hunt.
+        
+        Fixed total destruction in Software Update.app.
+        
+        Updated JavaScriptGlue to honor squirrelfish's new getCallData mechanism for
+        indicating that an object can be called as a function.
+
+2008-05-10  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Oliver.
+
+        - JavaScriptGlue part of fix for: "SQUIRRELFISH: function toString broken after calling"
+        https://bugs.webkit.org/show_bug.cgi?id=18869
+        
+        * JSRun.cpp:
+        (JSRun::Evaluate): Use UString version of eveluate() instead of
+        the now departed UChar*/length variant; use of the lower-level
+        version was gratuitous in any case.
+        (JSRun::CheckSyntax): Ditto for checkSyntax().
+
+2008-04-30  Geoffrey Garen  <ggaren@apple.com>
+
+        Build fix: supply missing parameter that used to be implicit.
+
+        * JSRun.cpp:
+        (JSRun::Evaluate):
+
+2008-03-30  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Oliver Hunt.
+        
+        Build fix.
+
+        * ForwardingHeaders/wtf/UnusedParam.h: Copied from ForwardingHeaders/wtf/OwnPtr.h.
+
+2008-05-12  Alexey Proskuryakov  <ap@webkit.org>
+
+        Roll out recent  threading changes (r32807, r32810, r32819, r32822) to simplify
+        SquirrelFish merging.
+
+        * JSUtils.cpp:
+        (JSObjectKJSValue):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (unprotectGlobalObject):
+        (initializeGlobalObjectKey):
+        (getThreadGlobalExecState):
+        * JavaScriptGlue.cpp:
+        (JSCollect):
+        (JSLockInterpreter):
+        * UserObjectImp.cpp:
+        (UserObjectImp::toPrimitive):
+
+2008-05-02  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin Adler.
+
+        Make JavaScriptGlue and JavaScriptCore API functions implicitly call initializeThreading
+        for the sake of non-WebKit clients.
+
+        * JavaScriptGlue.cpp:
+        (JSRunCreate):
+        (JSCollect):
+        (JSCreateJSArrayFromCFArray):
+        (JSLockInterpreter):
+        These are all possible JavaScriptGlue entry points.
+
+2008-05-02  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Geoffrey Garen.
+
+        https://bugs.webkit.org/show_bug.cgi?id=18826
+        Make JavaScript heap per-thread
+
+        * JSValueWrapper.cpp:
+        * JSUtils.h:
+        Moved getThreadGlobalExecState() to JSUtils and made it extern, as ExecState is now needed
+        for all JS allocations.
+
+        * JSUtils.cpp:
+        (JSObjectKJSValue): Pass ExecState to functions that now need it.
+        (unprotectGlobalObject): Moved from JSValueWrapper.cpp.
+        (initializeGlobalObjectKey): Ditto.
+        (getThreadGlobalExecState): Ditto.
+
+        * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState to jsString and jsNumber.
+
+        * JavaScriptGlue.cpp:
+        (JSCollect): Use current thread's heap.
+        (JSLockInterpreter): Removed JSLock::registerThread(), because a JS heap doesn't need to
+        know about other threads.
+
+2008-04-25  Alexey Proskuryakov  <ap@webkit.org>
+
+        Reviewed by Darin Adler.
+
+        Fix run-webkit-tests --threading
+        and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661>
+        Proxy server issue in Sunday's Nightly
+
+        * UserObjectImp.cpp: Adjusted for the new member added to ClassInfo.
+
+2008-04-25  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Adele Peterson.
+
+        <rdar://problem/5891264> Don't install the JavaScriptGlue headers
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2008-04-25  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Sam Weinig.
+
+        Add some content to an empty ICU header file to prevent verification errors.
+
+        * icu/unicode/utf_old.h:
+
+2008-04-02  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        Ensure that debug symbols are generated for x86_64 and ppc64 builds.
+
+        * Configurations/Base.xcconfig:
+
+2008-03-20  Maciej Stachowiak  <mjs@apple.com>
+
+        - fix build
+
+        * ForwardingHeaders/wtf/ListRefPtr.h: Added.
+
+2008-03-01  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Tim Hatcher.
+
+        Update Xcode configuration to support building debug and release from the mysterious future.
+
+        * Configurations/Base.xcconfig:
+        * Configurations/DebugRelease.xcconfig:
+
+2008-02-29  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by David Harrison.
+        
+        Fixed <rdar://problem/5765063> TOT REGRESSION: Software Update crash in
+        KJS::Collector::collect() (missing JSLock)
+
+        * JSValueWrapper.cpp:
+        (unprotectGlobalObject): Added missing JSLock.
+
+2008-02-05  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Oliver Hunt.
+
+        Update versioning to support the mysterious future.
+
+        * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
+
+2008-01-28  Eric Seidel  <eric@webkit.org>
+
+        Reviewed by darin.
+        
+        Add icu headers to JSG in preparation for depending on ::UChar.
+
+        * Configurations/Base.xcconfig:
+        * ForwardingHeaders/wtf/unicode: Added.
+        * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
+        * ForwardingHeaders/wtf/unicode/icu: Added.
+        * ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Added.
+        * icu: Copied from ../JavaScriptCore/icu.
+
+2007-12-19  Geoffrey Garen  <ggaren@apple.com>
+
+        Build fix.
+
+        * ForwardingHeaders/wtf/VectorTraits.h: Added.
+
+2007-12-10  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Mark Rowe.
+
+        <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
+
+        * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
+          so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
+
+2007-12-04  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Darin Adler.
+
+        Third step in refactoring JSGlobalObject: Moved data members and data
+        member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
+        subclass with JSGlobalObject subclass.
+        
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        (JSRun::Evaluate):
+        (JSRun::CheckSyntax):
+        * JSRun.h:
+        (JSGlueGlobalObject::JSGlueGlobalObject):
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+        * JSValueWrapper.cpp:
+        (getThreadGlobalExecState):
+
+2007-12-02  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Eric Seidel.
+
+        Updated to match the JavaScriptCore change to move virtual methods from
+        Interpreter to JSGlobalObject.
+        
+        * JSRun.cpp:
+        * JSRun.h:
+        * JSValueWrapper.cpp:
+        (getThreadGlobalExecState):
+        * JavaScriptGlue.cpp:
+        (JSRunCopyGlobalObject):
+        (JSRunEvaluate):
+
+2007-11-30  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Beth Dakin.
+        
+        Modified to follow new JSGlobalObject/Interpreter ownership rules 
+        in JavaScriptCore.
+
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        (JSRun::GetInterpreter):
+        (JSRun::Evaluate):
+        (JSRun::CheckSyntax):
+        * JSRun.h:
+        * JSValueWrapper.cpp:
+        (unprotectGlobalObject):
+        (initializeGlobalObjectKey):
+        (getThreadGlobalExecState):
+
+2007-11-29  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Maciej.
+
+        Fix REGRESSION(r27885): Installer hits assertion failure in JavaScriptGlue.
+
+        * JSValueWrapper.cpp:
+        (getThreadGlobalExecState): Set the global object on the Interpreter before using it.
+
+2007-11-27  Anders Carlsson  <andersca@apple.com>
+        
+        Build fix.
+        
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+
+2007-11-21  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Eric.
+
+        Fix JavaScriptGlue to build without warnings using GCC 4.2.
+
+        * Configurations/Base.xcconfig:
+        * JSRun.h:
+
+2007-11-17  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Darin Adler.
+
+        Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
+             <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
+             http://bugs.webkit.org/show_bug.cgi?id=16033
+
+        Update for changes in Interpreter method signatures.
+
+        * JSRun.h:
+
+2007-11-13  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Anders Carlsson.
+
+        Renamed Shared to RefCounted.
+
+        * ForwardingHeaders/wtf/RefCounted.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/Shared.h.
+        * ForwardingHeaders/wtf/Shared.h: Removed.
+
+2007-11-13  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Sam Weinig.
+
+        Moved Shared.h into wtf so it could be used in more places.
+
+        * ForwardingHeaders/wtf/Shared.h: Added.
+
+2007-11-08  Mark Rowe  <mrowe@apple.com>
+
+        Build fix.
+
+        * ForwardingHeaders/wtf/MathExtras.h: Copied from WebCore/ForwardingHeaders/wtf/MathExtras.h.
+
+2007-11-05  Geoffrey Garen  <ggaren@apple.com>
+
+        Build fix.
+
+        * ForwardingHeaders/kjs/value.h: Added.
+
+2007-11-03  Sam Weinig  <sam@webkit.org>
+
+        Build-fix.
+
+        * UserObjectImp.cpp:
+
+2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
+
+        Sort files(...); sections of Xcode project files.
+
+        Rubber-stamped by Darin Adler.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2007-10-25  Eric Seidel  <eric@webkit.org>
+
+        Reviewed by Geoff.
+        
+        Make JSG build again after JSGlobalObject change.
+
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        (JSRun::GlobalObject):
+        * JSRun.h:
+        (JSInterpreter::JSInterpreter):
+        * JSUtils.h:
+
+2007-10-11  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Tim Hatcher.
+
+        Fix for <rdar://problem/5488678>.  Disable debugging symbols in production builds for 10.4
+        PowerPC to prevent a huge STABS section from being generated.
+
+        * Configurations/Base.xcconfig:
+
+2007-10-04  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Oliver.
+
+        Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
+        The "full" level appears to offer no observable benefits even though the documentation
+        suggests it be used for dead code stripping.  This should also decrease link times.
+
+        * Configurations/Base.xcconfig:
+
+2007-09-03  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Tim Hatcher.
+
+        <rdar://problem/5452164> Production build with in symbols directory has no debug info
+
+        Enable debug symbol generation on all build configurations.  Production builds are stripped
+        of symbols by Xcode during deployment post-processing.
+
+        * Configurations/Base.xcconfig:
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2007-08-09  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Antti.
+
+        <rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +
+
+        * Configurations/Version.xcconfig:
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between
+        Version.xcconfig and Info.plist explicit to Xcode.
+
+2007-07-16  Sam Weinig  <sam@webkit.org>
+
+        Reviewed by Oliver.
+
+        Turn off -Wshorten-64-to-32 warning for 64-bit builds.
+
+        * Configurations/Base.xcconfig:
+
+2007-04-27  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Oliver.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Improve dependencies in Xcode project
+        by marking JavaScriptGlue as a dependency of testjsglue.
+
+2007-03-24  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Dave Hyatt.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Use GCC 4.0 for testjsglue.
+
+2007-03-24  Mark Rowe  <mrowe@apple.com>
+
+        Rubber-stamped by Darin Adler.
+
+        * Configurations/JavaScriptGlue.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS.
+
+2007-03-19  Andrew Wellington  <proton@wiretapped.net>
+
+        Reviewed by Maciej.
+
+        Really set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2007-03-18  Andrew Wellington  <proton@wiretapped.net>
+
+        Reviewed by Mark Rowe
+        
+        Set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2007-03-17  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Mark Rowe.
+
+        Made Version.xcconfig smarter when building for different configurations.
+        Now uses the 522+ OpenSource version for Debug and Release, while using the    
+        full 522.4 version for Production builds. The system prefix is also computed
+        based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.
+
+        * Configurations/JavaScriptGlue.xcconfig:
+        * Configurations/Version.xcconfig:
+
+2007-03-15  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by John.
+
+        * Factored out most of our common build settings into .xcconfig files. Anything that was common in
+          each build configuration was factored out into the shared .xcconfig file.
+        * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
+        * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
+        * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
+
+        * Configurations/Base.xcconfig: Added.
+        * Configurations/DebugRelease.xcconfig: Added.
+        * Configurations/JavaScriptGlue.xcconfig: Added.
+        * Configurations/Version.xcconfig: Added.
+        * Info.plist:
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+=== Safari-5522.4 ===
+
+2007-03-12  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Oliver Hunt.
+        
+        Updated in light of fix for <rdar://problem/4681051> Installer crashes 
+        in KJS::Collector::markOtherThreadConservatively(KJS::Collector::Thread*) 
+        trying to install iLife 06 using Rosetta on an Intel Machine
+        
+        * JavaScriptGlue.cpp:
+        (JSLockInterpreter): Ensure backwards compatibility by calling 
+        registerThread() when explicitly taking the JSLock. (This doesn't happen 
+        automatically anymore.) I doubt this actally matters, but in JavaScriptGlue
+        territory, that kind of thinking will get you killed.
+
+2007-03-06  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Maciej Stachowiak.
+
+        Fixed all known crashers exposed by run-webkit-tests --threaded while using
+        a PAC file (for maximum carnage). See JavaScriptCore ChangeLog for 
+        more details.
+
+        * JSBase.cpp:
+        (JSBase::Release): Lock when deleting, because we may be deleting an object
+        (like a JSRun) that holds thread-unsafe data.
+
+        * JSUtils.cpp:
+        (CFStringToUString): Don't lock, because our caller locks. Also, locking
+        inside a function that returns thread-unsafe data by copy will only mask
+        threading problems.
+
+        * JavaScriptGlue.cpp:
+        (JSRunEvaluate): Added missing JSLock.
+        (JSRunCheckSyntax): Converted to JSLock.
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2007-02-22  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Darin Adler.
+        
+        Fixed <rdar://problem/4942528> Installer.app Stuck "Examining additional 
+        volumes..."
+        
+        The problem was that JavaScriptGlue held a JSObject in a static pointer
+        without protecting it from garbage collection. 
+        
+            sUserObjectPrototypeImp  = new UserObjectPrototypeImp();
+            static ProtectedPtr<UserObjectPrototypeImp> protectPrototype; // valiant, brave, but useless
+
+        Through an interesting comedy of errors, this object would be collected 
+        and then assigned as the prototype of another object allocated at the 
+        same address, thus becoming its own prototype. (See http://www.ziplo.com/grandpa.htm
+        for further explanation of this phenomenon.) Hence the infinte loop in 
+        property lookup.
+        
+        The solution is equally humorous: all of this code was completely useless --
+        it only served to create an empty object in the prototype chain -- so
+        I just removed it.
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::UserObjectImp):
+        * UserObjectImp.h:
+
+2007-02-19  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Geoff.
+
+        <rdar://problem/4636301> Deprecate JavaScriptGlue
+
+        * JavaScriptGlue.h: adds DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER to everything
+        * JavaScriptGlue.xcodeproj/project.pbxproj: use -Wno-deprecated-declarations to keep the project building
+        * config.h: define DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER as empty on other systems
+
+2007-02-16  Darin Adler  <darin@apple.com>
+
+        Reviewed by Anders.
+
+        - fix <rdar://problem/5000216> JavaScriptGlue framework started turning all CFNumbers
+          into signed 32bit values
+
+        Circumstantial evidence seems to indicate that JavaScriptGlue was depending on a bug
+        in CFNumber where CFNumberIsFloatType was returning true for 64-bit integer values.
+
+        * JSUtils.cpp: (JSObjectKJSValue): Removed the call to CFNumberIsFloatType in the
+        conversion of numeric values, and always use kCFNumberDoubleType, since double is
+        the internal format of numbers in JavaScriptCore. There's no value to having a
+        separate code path for integers. There's also no reason to check the return value
+        from CFNumberGetValue -- if it returns false it still does the best it can to convert
+        to a double, which is what we want.
+
+        * UserObjectImp.cpp: (UserObjectImp::toString): Removed a similar code path that
+        tried to handle integers separate from double. Instead, always use a double. For
+        compatibility, use a format without a decimal point when CFNumberIsFloatType returns
+        false. Also removed a bogus cast to float; the "%f" format string takes a double,
+        not a float, so all the cast did was cut down on precision.
+
+2007-01-25  Mark Rowe  <mrowe@apple.com>
+
+        Reviewed by Maciej.
+
+        * Info.plist: Update copyright string.
+
+2006-12-19  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Darin Adler.
+
+        <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+=== Safari-521.26 ===
+
+2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
+
+        Reviewed by Tim H.
+
+        Build fix:  DWARF and -gfull are incompatible with symbol separation.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
+
+        Reviewed by Tim H.
+
+        http://bugs.webkit.org/show_bug.cgi?id=10394
+        Bug 10394: WebKit Release and Production configurations should enable dead code stripping
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
+
+        Reviewed by Tim H.
+
+        http://bugs.webkit.org/show_bug.cgi?id=10384
+        Bug 10384: Switch to DWARF for Release configuration
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2006-08-04  Sam Weinig  <sam.weinig@gmail.com>
+
+        Reviewed by Darin Adler.
+
+        - patch for http://bugs.webkit.org/show_bug.cgi?id=10192
+          Make WebCore (and friends) compile with -Wshorten-64-to-32
+
+          * Adds -Wshorten-64-to-32 flag to Xcode project.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2006-08-03  Sam Weinig  <sam.weinig@gmail.com>
+
+        Reviewed by Darin Adler.
+
+        - patch for http://bugs.webkit.org/show_bug.cgi?id=10176
+          Make WebCore compile with -Wundef
+
+          * Adds -Wundef flag to Xcode project
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2006-07-29  Sam Weinig  <sam.weinig@gmail.com>
+
+        Reviewed by Darin Adler.
+
+        - patch for http://bugs.webkit.org/show_bug.cgi?id=10080
+          Adopt pedantic changes from the Unity project to improve 
+          cross-compiler compatibility
+
+          Changes include:
+          * Turning on gcc warning for missing newline at the end of a source file
+            (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+=== Safari-521.19 ===
+
+2006-07-19  Geoffrey Garen  <ggaren@apple.com>
+
+        Fixed by Darin & Maciej, reviewed by me.
+        
+        - Fixed <rdar://problem/4638934> Leopard 9A227: Installer crashes right 
+        after LCA and while preparing Installation
+
+        Compile release/production with NDEBUG set, to ensure binary compatibility
+        between JavaScriptGlue and JavaScriptCore. In debug builds, JavaScriptCore 
+        includes an extra debug data member in HashSet.
+        
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+=== Safari-521.18 ===
+
+2006-07-15  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Darin Adler.
+
+        - switch property lists to be vector+set of Identifiers instead of list of References
+        
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal): updated for JSC SPI changes
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames): ditto
+        * UserObjectImp.cpp:
+        (UserObjectImp::getPropertyNames): ditto
+        * UserObjectImp.h:
+
+=== Safari-521.17 ===
+
+2006-07-14  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Maciej.
+        
+        - Updated JSInterpreter to work with Interpreter ref-counting in JavaScriptCore.
+
+        (JSInterpreter::JSInterpreter::~JSInterpreter): Now protected to catch
+        manual delete.
+
+2006-07-12  Anders Carlsson  <acarlsson@apple.com>
+
+        Build fix
+        
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        * UserObjectImp.cpp:
+        (UserObjectImp::getPropertyList):
+        
+=== Safari-521.15 ===
+
+2006-07-07  Geoffrey Garen  <ggaren@apple.com>
+
+        - build fix
+
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+
+2006-07-03  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Maciej.
+        
+        * JSRun.cpp:
+        (JSRun::CheckSyntax): Updated to use new checkSyntax syntax in JSC.
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+=== Safari-521.14 ===
+
+2006-06-28  Timothy Hatcher  <timothy@apple.com>
+
+        Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
+
+        Reviewed by Timothy.
+
+        * Info.plist: Fixed copyright to include 2003-2006.
+
+=== JavaScriptGlue-521.13 ===
+        
+2006-06-20  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Anders.
+        
+        - Required for JS API: Rename propList to getPropertyList and have it
+        take its target property list by reference so that subclasses can
+        add properties to the list before calling through to their superclasses.
+
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        * UserObjectImp.cpp:
+        (UserObjectImp::getPropertyList):
+        * UserObjectImp.h:
+
+2006-06-15  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Geoff and Darin.
+        
+        Prefer the DWARF debugging symbols format for use in Xcode 2.3.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2006-06-12  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by TimO, Maciej.
+        
+        - JSGlue part of merging InterpreterImp into Interpreter.
+        
+        Since there's now a kjs forwarding header, I moved all forwarding
+        headers into a "ForwardingHeaders" directory, like in WebCore.
+
+        * ForwardingHeaders: Added.
+        * ForwardingHeaders/kjs: Added.
+        * ForwardingHeaders/kjs/ExecState.h: Added.
+        * ForwardingHeaders/wtf: Added.
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+        * config.h:
+        * wtf: Removed.
+        * wtf/AlwaysInline.h: Removed.
+        * wtf/Assertions.h: Removed.
+        * wtf/FastMalloc.h: Removed.
+        * wtf/Forward.h: Removed.
+        * wtf/HashCountedSet.h: Removed.
+        * wtf/HashSet.h: Removed.
+        * wtf/Noncopyable.h: Removed.
+        * wtf/OwnArrayPtr.h: Removed.
+        * wtf/OwnPtr.h: Removed.
+        * wtf/PassRefPtr.h: Removed.
+        * wtf/Platform.h: Removed.
+        * wtf/RefPtr.h: Removed.
+        * wtf/Vector.h: Removed.
+
+=== JavaScriptGlue-521.10 ===
+
+2006-05-09  Maciej Stachowiak  <mjs@apple.com>
+
+        Rubber stamped by Anders.
+        
+        - renamed kxmlcore to wtf
+        
+        kxmlcore --> wtf
+        KXMLCore --> WTF
+        KXC --> WTF
+
+        * config.h:
+        * kxmlcore: Removed.
+        * kxmlcore/AlwaysInline.h: Removed.
+        * kxmlcore/Assertions.h: Removed.
+        * kxmlcore/FastMalloc.h: Removed.
+        * kxmlcore/Forward.h: Removed.
+        * kxmlcore/HashCountedSet.h: Removed.
+        * kxmlcore/HashSet.h: Removed.
+        * kxmlcore/Noncopyable.h: Removed.
+        * kxmlcore/OwnArrayPtr.h: Removed.
+        * kxmlcore/OwnPtr.h: Removed.
+        * kxmlcore/PassRefPtr.h: Removed.
+        * kxmlcore/Platform.h: Removed.
+        * kxmlcore/RefPtr.h: Removed.
+        * kxmlcore/Vector.h: Removed.
+        * wtf: Added.
+
+2006-04-11  Darin Adler  <darin@apple.com>
+
+        - try to fix Windows build
+
+        * kxmlcore/HashForward.h: Removed.
+
+2006-04-10  Darin Adler  <darin@apple.com>
+
+        Rubber-stamped by John Sullivan.
+
+        - added forwarding headers for the new Forward.h and HashForward.h files
+
+        * kxmlcore/Forward.h: Added.
+        * kxmlcore/HashForward.h: Added.
+
+2006-04-04  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Darin Adler.
+
+        The Debug and Release frameworks are now built with install paths relative to the build products directory.
+        This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore. 
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2006-04-02  Eric Seidel  <eseidel@apple.com>
+
+        Reviewed by andersca.
+
+        Add missing forwarding header.
+
+        * kxmlcore/Vector.h: Added.
+
+2006-03-31  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Darin Adler.
+
+        - Fixed <rdar://problem/4430836> JavaScript patch crashing Quartz
+        Composer
+
+        JSValueWrappers used to hold on to the ExecState that pertained at
+        the time of their creation. Since ExecStates are transient, that
+        design was totally bogus, and it would crash once the ExecState had
+        been deallocated.
+
+        Unfortunately, there's no clean solution to this problem, since
+        the JSGlue API has no notion of state. The solution here is to use
+        a shared, global ExecState for the purpose of JSGlue calls. Given
+        the pre-existing limitations in the JSGlue API, this design
+        shouldn't actually introduce any new limitations (see comments in
+        JSValueWrapper.cpp).
+
+        I tested with Quartz Composer and PAC files, neither of which are
+        layout-testable.
+        
+        * JSUtils.cpp:
+        (KJSValueToJSObject):
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSValueWrapper):
+        (JSValueWrapper::GetValue):
+        (getProcessGlobalExecState):
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectCopyCFValue):
+        * JSValueWrapper.h:
+
+        Also added a test harness file. It was helpful while I was testing,
+        and may come in handy in the future:
+        
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+        testjsglue.cpp: Added.
+
+2006-03-28  Darin Adler  <darin@apple.com>
+
+        Reviewed by Geoff.
+
+        - added a build step that checks for init routines
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Added a custom build phase that invokes the
+        check-for-global-initializers script.
+
+2006-03-02  Maciej Stachowiak  <mjs@apple.com>
+
+        Not reviewed, but I noticed these trivial extra changes were needed to avoid
+        breaking the build with my reviewed patch for:
+        
+        http://bugs.webkit.org/show_bug.cgi?id=7387
+        
+        Add config.h, includes of it, and Platform.h forwarding header.
+
+        * JSBase.cpp:
+        * JSObject.cpp:
+        * JSRun.cpp:
+        * JSUtils.cpp:
+        * JSValueWrapper.cpp:
+        * JavaScriptGlue.cpp:
+        * UserObjectImp.cpp:
+        * config.h: Added.
+        * kxmlcore/Platform.h: Added.
+
+=== JavaScriptGlue-521.7 ===
+
+2006-02-10  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by eric.
+
+        - Fixed build.
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::toPrimitive):
+        * UserObjectImp.h:
+
+2006-02-03  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Justin.
+
+        Renamed configuration names to Debug, Release and Production.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2006-02-01  Darin Adler  <darin@apple.com>
+
+        - added some forwarding headers to make new JavaScriptCore changes work
+
+        * kxmlcore/Assertions.h: Added.
+        * kxmlcore/Noncopyable.h: Added.
+        * kxmlcore/OwnPtr.h: Added.
+        * kxmlcore/OwnArrayPtr.h: Added.
+
+2006-01-16  Timothy Hatcher  <timothy@apple.com>
+
+        Adding the license header to all files so we can
+        move JavaScriptGlue into the open source repository.
+
+        * LICENSE: Added.
+        * JSBase.cpp: license header added.
+        * JSBase.h: ditto.
+        * JSObject.cpp: ditto.
+        * JSObject.h: ditto.
+        * JSRun.cpp: ditto.
+        * JSRun.h: ditto.
+        * JSUtils.cpp: ditto.
+        * JSUtils.h: ditto.
+        * JSValueWrapper.cpp: ditto.
+        * JSValueWrapper.h: ditto.
+        * JavaScriptGlue.cpp: ditto.
+        * JavaScriptGlue.h: ditto.
+        * UserObjectImp.cpp: ditto.
+        * UserObjectImp.h: ditto.
+
+2005-12-21  Timothy Hatcher  <timothy@apple.com>
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+          Set tab width to 8, indent width to 4 and uses tabs to false per file.
+
+2005-12-19  Darin Adler  <darin@apple.com>
+
+        Reviewed by Geoff Garen and Eric Seidel.
+
+        - fix http://bugs.webkit.org/show_bug.cgi?id=4923
+          stop using <ostream> in WebCore, eliminating the <cmath> troubles it causes
+
+        * kxmlcore/AlwaysInline.h: Added.
+
+2005-12-15  Darin Adler  <darin@apple.com>
+
+        Reviewed by Maciej.
+
+        * JSRun.cpp: (JSRun::Evaluate): Updated for change to Interpreter::evaluate.
+
+2005-12-15  Darin Adler  <darin@apple.com>
+
+        Reviewed by Tim Hatcher.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Removed some redundant build
+        settings, turned off prebinding explicitly for our Development and
+        Deployment builds, remove .exp file from sources. All "clean-up".
+
+=== Safari-521~5 ===
+
+2005-12-13  Geoffrey Garen  <ggaren@apple.com>
+
+    - Fixed build after Anders's last checkin to JavaScriptCore.
+    
+        Reviewed by darin.
+
+        * UserObjectImp.cpp:
+        (UserObjectImp::userObjectGetter): Updated to reflect new argument that 
+    getters take (unused here).
+        * UserObjectImp.h:
+
+2005-12-13  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Eric.
+
+    - added forwarding header for HashCountedSet
+
+        * kxmlcore/HashCountedSet.h: Added.
+
+2005-12-10  Darin Adler  <darin@apple.com>
+
+        Rubber stamped by Maciej.
+
+        - updated for KJS class renaming
+
+        * many files and functions
+
+2005-12-10  Darin Adler  <darin@apple.com>
+
+        Reviewed by Maciej.
+
+        - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
+
+        Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
+
+        * JSUtils.cpp:
+        (JSObjectKJSValue):
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+        (UserObjectImp::toPrimitive):
+
+2005-12-05  Maciej Stachowiak  <mjs@apple.com>
+
+        - added new forwarding headers
+
+        * kxmlcore/PassRefPtr.h: Added.
+        * kxmlcore/RefPtr.h: Added.
+
+2005-12-05  Maciej Stachowiak  <mjs@apple.com>
+
+        * kxmlcore/PassRefPtr.h: Added.
+
+2005-11-26  Maciej Stachowiak  <mjs@apple.com>
+
+        Rubber stamped by Eric.
+
+    - renamed InterpreterLock to JSLock
+
+        * JSUtils.cpp:
+        (CFStringToUString):
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectCopyCFValue):
+        * JavaScriptGlue.cpp:
+        (JSRunCreate):
+        (JSCollect):
+        (JSLockInterpreter):
+        (JSUnlockInterpreter):
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+
+2005-11-16  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Geoff.
+
+    Updated to use new API to drop all locks.
+
+        * JavaScriptGlue.cpp:
+        (JSLockInterpreter):
+        (JSUnlockInterpreter):
+        * UserObjectImp.cpp:
+        (UserObjectImp::callAsFunction):
+
+2005-11-14  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by mjs.
+
+        - Part of the fix for <rdar://problem/4342216> Installer crash in 
+          KJS::ValueImp::marked() when garbage collector runs inside call to 
+          ConstantValues::init()
+          
+        Added locking in JSRunCreate, since JSRun::JSRun constructs an object.
+        
+        * JavaScriptGlue.cpp:
+        (JSRunCreate):
+
+2005-11-10  Geoffrey Garen  <ggaren@apple.com>
+
+        Reviewed by Maciej.
+
+        - Fixed <rdar://problem/4334445> installer crashed on my 
+          dual g4 450Mhz after clicking language
+
+        - Reversed backwards NULL check.
+        - Inserted guards against NULL fJSUserObject data member.
+        - Cleaned up some style.
+
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+        * UserObjectImp.cpp:
+        (UserObjectImp::~UserObjectImp):
+        (UserObjectImp::callAsFunction):
+        (UserObjectImp::userObjectGetter):
+        (UserObjectImp::getOwnPropertySlot):
+        (UserObjectImp::put):
+        (UserObjectImp::mark):
+
+2005-11-04  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Darin Adler.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+          Fixed the FRAMEWORK_SEARCH_PATHS to look in the WebKit
+          Frameworks for the Default config.
+
+2005-11-03  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Darin and Vicki.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+          Change to use $(SYSTEM_LIBRARY_DIR) consistently and place
+          $(NEXT_ROOT) in a few spots to make build-root work.
+
+2005-11-01  Maciej Stachowiak  <mjs@apple.com>
+
+    Reviewed by: Eric.
+    
+        <rdar://problem/4324107> get JavaScriptGlue working with TOT JavaScriptCore again
+
+    - reverted all this stuff to use ReferenceList instead of IdentifierSequencedSet
+
+        * JSUtils.cpp:
+        (KJSValueToCFTypeInternal):
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        * UserObjectImp.cpp:
+        (UserObjectImp::propList):
+        * UserObjectImp.h:
+
+2005-10-11  Timothy Hatcher  <timothy@apple.com>
+
+        Setup the proper Framework search path for the Default config.
+        Prepping for a TOT submission and build by B&I.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+
+2005-10-10  Darin Adler  <darin@apple.com>
+
+        Reviewed by Eric.
+
+        - converted tabs to spaces, NULL to 0, added some (void), got rid of __ prefixes
+          in headers (reserved for compiler/library)
+
+        * Info.plist:
+        * JSBase.cpp:
+        * JSBase.h:
+        * JSObject.cpp:
+        * JSObject.h:
+        * JSRun.cpp:
+        * JSRun.h:
+        * JSUtils.cpp:
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        * JSValueWrapper.h:
+        * JavaScriptGlue.cpp:
+        * JavaScriptGlue.h:
+        * UserObjectImp.cpp:
+        * UserObjectImp.h:
+
+2005-10-10  Darin Adler  <darin@apple.com>
+
+        * .cvsignore: Added. Ignore Makefile.in and Makefile.
+
+2005-10-07  Timothy Hatcher  <timothy@apple.com>
+
+        Reviewed by Maciej.
+        
+        Build fix, needed to disable RTTI. Upgraded to a native target.
+
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+        * Info.plist
+
+2005-10-05  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Eric and Darin.
+
+    <rdar://problem/4260506> Port JavaScriptGlue to TOT JavaScriptCore
+
+        * JSRun.cpp:
+        (JSRun::JSRun):
+        (JSRun::GlobalObject):
+        * JSRun.h:
+        (JSInterpreter::JSInterpreter):
+        * JSUtils.cpp:
+        (KJSValueToJSObject):
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (KJSValueToCFType):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSValueWrapper):
+        (JSValueWrapper::GetValue):
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectMark):
+        * JSValueWrapper.h:
+        * JavaScriptGlue.cpp:
+        (JSRunCopyGlobalObject):
+        * JavaScriptGlue.xcodeproj/project.pbxproj:
+        * Makefile.am: Added.
+        * UserObjectImp.cpp:
+        (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
+        (UserObjectImp::UserObjectImp):
+        (UserObjectImp::callAsFunction):
+        (UserObjectImp::getPropertyNames):
+        (UserObjectImp::userObjectGetter):
+        (UserObjectImp::getOwnPropertySlot):
+        (UserObjectImp::put):
+        (UserObjectImp::toPrimitive):
+        (UserObjectImp::mark):
+        * UserObjectImp.h:
+        * kxmlcore/FastMalloc.h: Added.
+        * kxmlcore/HashSet.h: Added.
+
+2005-09-14  Maciej Stachowiak  <mjs@apple.com>
+
+        Reviewed by Geoff.
+
+    - fixed <rdar://problem/4214783> REGRESSION: kjs_fast_malloc crash due to lack of locking on multiple threads (seen selecting volumes in the installer)
+
+    Make sure to lock using the InterpreterLock class in all places that need it
+    (including anything that uses the collector, the parser, the protect count hash table,
+    and anything that allocates via fast_malloc).
+
+        * JSUtils.cpp:
+        (CFStringToUString):
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        * JSUtils.h:
+        * JSValueWrapper.cpp:
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectCopyCFValue):
+        * JavaScriptGlue.cpp:
+        (JSCollect):
+
+2005-09-27  Adele Peterson  <adele@apple.com>
+
+        Reviewed by Maciej.
+
+        <rdar://problem/4223297> JavaScriptGlue: Submit 64-bit compatible versions of your API and SPIs by September 15
+
+        * JavaScriptGlue.h: Changed UInt32 to CFTypeID for JSTypeID
+
+2005-09-06  Geoffrey Garen  <ggaren@apple.com>
+
+        -upgraded project files to XCode 2.1
+
+        * JavaScriptGlue.pbproj/project.pbxproj: Removed.
+        * JavaScriptGlue.xcodeproj/.cvsignore: Added.
+        * JavaScriptGlue.xcodeproj/project.pbxproj: Added.
+
+2005-09-01  Maciej Stachowiak  <mjs@apple.com>
+
+        Rubber stamped by hyatt.
+
+    - initial import of JavaScriptGlue into our repository
+
+        * English.lproj/InfoPlist.strings: Added.
+        * JSBase.cpp: Added.
+        (JSBase::JSBase):
+        (JSBase::~JSBase):
+        (JSBase::Retain):
+        (JSBase::Release):
+        (JSBase::RetainCount):
+        (JSBase::GetTypeID):
+        (JSBase::CopyDescription):
+        (JSBase::Equal):
+        * JSBase.h: Added.
+        * JSObject.cpp: Added.
+        (JSUserObject::JSUserObject):
+        (JSUserObject::~JSUserObject):
+        (JSUserObject::CopyPropertyNames):
+        (JSUserObject::CopyProperty):
+        (JSUserObject::SetProperty):
+        (JSUserObject::ImplementsCall):
+        (JSUserObject::CallFunction):
+        (JSUserObject::CopyCFValue):
+        (JSUserObject::Equal):
+        (JSUserObject::Mark):
+        (JSUserObject::GetData):
+        * JSObject.h: Added.
+        (JSUserObject::DataType):
+        * JSRun.cpp: Added.
+        (JSRun::JSRun):
+        (JSRun::~JSRun):
+        (JSRun::Flags):
+        (JSRun::GetSource):
+        (JSRun::GlobalObject):
+        (JSRun::GetInterpreter):
+        (JSRun::Evaluate):
+        (JSRun::CheckSyntax):
+        * JSRun.h: Added.
+        (JSInterpreter::JSInterpreter):
+        (JSInterpreter::JSInterpreter::~JSInterpreter):
+        (JSInterpreter::Flags):
+        * JSUtils.cpp: Added.
+        (CFStringToUString):
+        (UStringToCFString):
+        (CFStringToIdentifier):
+        (IdentifierToCFString):
+        (KJSValueToJSObject):
+        (JSObjectKJSValue):
+        (KJSValueToCFTypeInternal):
+        (KJSValueToCFType):
+        (GetCFNull):
+        * JSUtils.h: Added.
+        (RetainCFType):
+        (ReleaseCFType):
+        * JSValueWrapper.cpp: Added.
+        (JSValueWrapper::JSValueWrapper):
+        (JSValueWrapper::~JSValueWrapper):
+        (JSValueWrapper::GetValue):
+        (JSValueWrapper::GetExecState):
+        (JSValueWrapper::GetJSObectCallBacks):
+        (JSValueWrapper::JSObjectDispose):
+        (JSValueWrapper::JSObjectCopyPropertyNames):
+        (JSValueWrapper::JSObjectCopyProperty):
+        (JSValueWrapper::JSObjectSetProperty):
+        (JSValueWrapper::JSObjectCallFunction):
+        (JSValueWrapper::JSObjectCopyCFValue):
+        (JSValueWrapper::JSObjectMark):
+        * JSValueWrapper.h: Added.
+        * JavaScriptGlue.cpp: Added.
+        (JSSetCFNull):
+        (JSGetCFNull):
+        (JSRetain):
+        (JSRelease):
+        (JSCopyDescription):
+        (JSEqual):
+        (JSGetTypeID):
+        (JSGetRetainCount):
+        (JSObjectCreate):
+        (JSObjectCreateInternal):
+        (JSObjectCopyCFValue):
+        (JSObjectGetData):
+        (JSObjectCopyProperty):
+        (JSObjectSetProperty):
+        (JSObjectCallFunction):
+        (JSRunCreate):
+        (JSRunCopySource):
+        (JSRunCopyGlobalObject):
+        (JSRunEvaluate):
+        (JSRunCheckSyntax):
+        (JSCollect):
+        (JSTypeGetCFArrayCallBacks):
+        (JSCFRetain):
+        (JSCFRelease):
+        (JSObjectCreateWithCFType):
+        (CFJSObjectDispose):
+        (JSObjectCopyPropertyNames):
+        (CFJSObjectCopyProperty):
+        (CFJSObjectSetProperty):
+        (CFJSObjectCopyCFValue):
+        (CFJSObjectEqual):
+        (CFJSObjectCopyPropertyNames):
+        (JSCreateCFArrayFromJSArray):
+        (JSCreateJSArrayFromCFArray):
+        (JSLockInterpreter):
+        (JSUnlockInterpreter):
+        * JavaScriptGlue.exp: Added.
+        * JavaScriptGlue.h: Added.
+        * JavaScriptGlue.pbproj/project.pbxproj: Added.
+        * UserObjectImp.cpp: Added.
+        (UserObjectPrototypeImp::UserObjectPrototypeImp):
+        (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
+        (UserObjectImp::UserObjectImp):
+        (UserObjectImp::~UserObjectImp):
+        (UserObjectImp::classInfo):
+        (UserObjectImp::implementsCall):
+        (UserObjectImp::call):
+        (UserObjectImp::propList):
+        (UserObjectImp::hasProperty):
+        (UserObjectImp::get):
+        (UserObjectImp::put):
+        (UserObjectImp::GetJSUserObject):
+        (UserObjectImp::toPrimitive):
+        (UserObjectImp::toBoolean):
+        (UserObjectImp::toNumber):
+        (UserObjectImp::toString):
+        (UserObjectImp::mark):
+        * UserObjectImp.h: Added.
+