1 2011-01-10 Geoffrey Garen <ggaren@apple.com>
3 Reviewed by Oliver Hunt.
5 Moved Collector.* => Heap.*, since the file contains a class named "Heap".
9 2011-01-02 Dan Bernstein <mitz@apple.com>
11 Rubber-stamped by Simon Fraser.
13 <rdar://problem/8812159> Update copyright strings
17 2010-12-22 Dan Bernstein <mitz@apple.com>
19 Rubber-stamped by Mark Rowe.
21 Changed WebKitTools to Tools in script build phases.
23 * JavaScriptGlue.xcodeproj/project.pbxproj:
25 2010-12-21 Geoffrey Garen <ggaren@apple.com>
27 Reviewed by Gavin Barraclough & Oliver Hunt.
29 Added PageAllocationAligned, a cross-platform abstraction for memory allocations with arbitrary alignment requirements
30 https://bugs.webkit.org/show_bug.cgi?id=51359
32 * ForwardingHeaders/wtf/PageAllocationAligned.h: Added.
34 2010-12-21 Daniel Bates <dbates@rim.com>
36 Reviewed by Eric Seidel and Darin Adler.
38 Deallocate GregorianDateTime.timeZone (if allocated) when copying so that we don't leak memory.
39 https://bugs.webkit.org/show_bug.cgi?id=51367
41 Add forwarding header for PassOwnArrayPtr.h.
43 * ForwardingHeaders/wtf/PassOwnArrayPtr.h: Added.
45 2010-12-18 Gavin Barraclough <barraclough@apple.com>
47 Reviewed by Oliver Hunt.
49 Bug 26276 - Need a mechanism to determine stack extent
51 Add forwarding header for StackBounds.h.
53 * ForwardingHeaders/wtf/StackBounds.h: Added.
55 2010-12-20 Geoffrey Garen <ggaren@apple.com>
57 Reviewed by Sam Weinig.
59 Factored common page set management into a new PageBlock base class
60 https://bugs.webkit.org/show_bug.cgi?id=51285
62 * ForwardingHeaders/wtf/PageBlock.h: Added.
64 2010-12-01 Geoffrey Garen <ggaren@apple.com>
66 Build fix: Added a forwarding header.
68 * ForwardingHeaders/wtf/OSAllocator.h: Added.
70 2010-10-25 Oliver Hunt <oliver@apple.com>
72 Reviewed by Gavin Barraclough.
74 Remove exec and globalData arguments from jsNumber
75 https://bugs.webkit.org/show_bug.cgi?id=48270
77 Don't pass exec to jsNumber
82 (UserObjectImp::toPrimitive):
84 2010-10-25 Sheriff Bot <webkit.review.bot@gmail.com>
86 Unreviewed, rolling out r70451.
87 http://trac.webkit.org/changeset/70451
88 https://bugs.webkit.org/show_bug.cgi?id=48249
90 Broke set-unloaded-frame-location.html under Qt (Requested by
93 * ForwardingHeaders/wtf/text/TextPosition.h: Removed.
95 2010-10-16 Patrick Gansterer <paroga@webkit.org>
97 Reviewed by Adam Barth.
99 Rename StringHasherFunctions.h to StringHasher.h
100 https://bugs.webkit.org/show_bug.cgi?id=47200
102 * ForwardingHeaders/wtf/StringHashFunctions.h: Removed.
103 * ForwardingHeaders/wtf/StringHasher.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/StringHashFunctions.h.
105 2010-09-09 Michael Saboff <msaboff@apple.com>
107 Reviewed by Gavin Barraclough.
109 Added ListHashSet.h as an exported header in support of RegExp tracing.
110 https://bugs.webkit.org/show_bug.cgi?id=45401
112 * ForwardingHeaders/wtf/ListHashSet.h: Added.
114 2010-09-07 Anders Carlsson <andersca@apple.com>
116 Reviewed by Darin Adler.
118 <rdar://problem/8381749> -Wcast-align warning emitted when building with clang
120 Remove the -Wcast-align-warning since it isn't really useful, and clang is more aggressive about warning than gcc.
122 * Configurations/Base.xcconfig:
124 2010-08-26 Sam Weinig <sam@webkit.org>
126 Reviewed by Darin Adler.
129 https://bugs.webkit.org/show_bug.cgi?id=44627
131 Add new forwarding header.
133 * ForwardingHeaders/wtf/OwnArrayPtrCommon.h: Added.
135 2010-08-23 Gavin Barraclough <barraclough@apple.com>
137 Reviewed by Oliver Hunt.
139 https://bugs.webkit.org/show_bug.cgi?id=44487
141 * ForwardingHeaders/wtf/text/WTFString.h: Added.
143 2010-08-24 Oliver Hunt <oliver@apple.com>
145 Reviewed by Geoff Garen.
147 Don't seed the JS random number generator from time()
148 https://bugs.webkit.org/show_bug.cgi?id=41868
149 <rdar://problem/8171025>
151 Add forwarding header for RandomNumber in JavaScriptGlue
153 * ForwardingHeaders/wtf/RandomNumber.h: Added.
155 2010-08-11 Gavin Barraclough <barraclough@apple.com>
157 Rubber stamps by Darin Adler & Sam Weinig.
159 Bug 43867 - Some UString cleanup
161 Change JSC::UString data(), size(), and from(), to characters(), length(), and number() to match WTF::String.
162 Move string concatenation methods to a new header to simplify down UString.h. Remove is8Bit().
166 (KJSValueToCFTypeInternal):
167 * JavaScriptGlue.xcodeproj/project.pbxproj:
169 2010-08-04 Gavin Barraclough <barraclough@apple.com>
171 Reviewed by Sam Weinig.
173 Bug 43515 - Fix small design issues with PageAllocation, split out PageReservation.
174 (add forwarding headers)
176 * ForwardingHeaders/wtf/Bitmap.h: Added.
177 * ForwardingHeaders/wtf/PageReservation.h: Added.
179 2010-08-04 Sheriff Bot <webkit.review.bot@gmail.com>
181 Unreviewed, rolling out r64655.
182 http://trac.webkit.org/changeset/64655
183 https://bugs.webkit.org/show_bug.cgi?id=43496
185 JavaScriptCore references patch seems to have caused
186 regressions in QT and GTK builds (Requested by nlawrence on
189 * JSValueWrapper.cpp:
190 (JSValueWrapper::JSObjectMark):
192 2010-08-04 Nathan Lawrence <nlawrence@apple.com>
194 Reviewed by Darin Adler.
196 Removed unneeded marking. We need to remove this marking in order to have
197 MarkStack::append take references for updating movable objects.
199 https://bugs.webkit.org/show_bug.cgi?id=41177
201 * JSValueWrapper.cpp:
202 (JSValueWrapper::JSObjectMark):
204 2010-08-03 Gavin Barraclough <barraclough@apple.com>
206 Build fix following r64624.
208 * ForwardingHeaders/wtf/BitMap.h: Added.
210 2010-07-27 Gavin Barraclough <barraclough@apple.com>
212 Reviewed by Oliver Hunt.
214 Bug 42621 - Add a bump allocator for the YARR interpreter
216 The regex engine requires lifo allocation, however currently uses the general purpose
217 malloc/free memory allocation. A simple bump pointer allocator should provide a lower
218 overhead allocation solution.
220 * ForwardingHeaders/wtf/BumpPointerAllocator.h: Added.
222 2010-07-26 Gavin Barraclough <barraclough@apple.com>
224 Reviewed by Oliver Hunt.
226 Bug 43009 - Abstract out page allocation from executable allocators
228 * ForwardingHeaders/wtf/PageAllocation.h: Added.
230 2010-07-01 Oliver Hunt <oliver@apple.com>
232 Reviewed by Maciej Stachowiak.
234 Add a FixedArray template to encapsulate fixed length arrays
235 https://bugs.webkit.org/show_bug.cgi?id=41506
237 Add forwarding header.
239 * ForwardingHeaders/wtf/FixedArray.h: Added.
241 2010-06-02 Gavin Barraclough <barraclough@apple.com>
243 Reviewed by Oliver Hunt.
245 Bug 40094 - The return type of NativeFunction should be EncodedJSValue
246 On Windows & Linux, using JSVALUE32_64, EncodedJSValue is returned in registers, but JSValue is not.
249 (nativeCallFunction):
251 2010-05-28 Geoffrey Garen <ggaren@apple.com>
253 Reviewed by Sam Weinig, Gavin Barraclough, Oliver Hunt.
255 Simplified the host calling convention.
257 PART ONE: Functional code changes.
259 [ None in JavaScriptGlue ]
261 PART TWO: Global search and replace.
263 In the areas below, I used global search-and-replace to change
264 (ExecState*, JSObject*, JSValue, const ArgList&) => (ExecState*)
265 args.size() => exec->argumentCount()
266 args.at(i) => exec->argument(i)
269 (nativeCallFunction):
271 (UserObjectImp::callAsFunction):
274 2010-04-23 Sam Weinig <sam@webkit.org>
276 Reviewed by David Levin.
278 Fix for https://bugs.webkit.org/show_bug.cgi?id=38060
281 Add necessary forwarding headers.
283 * ForwardingHeaders/wtf/Atomics.h: Added.
284 * ForwardingHeaders/wtf/ThreadSafeShared.h: Added.
285 * ForwardingHeaders/wtf/ThreadingPrimitives.h: Added.
287 2010-04-22 Sam Weinig <sam@webkit.org>
289 Reviewed by Anders Carlsson.
291 Fix for https://bugs.webkit.org/show_bug.cgi?id=38022
292 Move isMainThread predicate function to MainThread.h
294 Added forwarding header for MainThread.h
296 * ForwardingHeaders/wtf/MainThread.h: Added.
298 2010-04-22 Gavin Barraclough <barraclough@apple.com>
300 Rubber stamped by Sam Weinig
302 Do not get the globaldata for the APIShim via the
303 global object; global object construction creates identifiers
304 which results in the ASSERTs checking the thread data's
305 identifierTable has been set failing.
308 (unprotectGlobalObject):
309 (getThreadGlobalData):
310 (getThreadGlobalObject):
311 (JSGlueAPIEntry::JSGlueAPIEntry):
312 (JSGlueAPICallback::~JSGlueAPICallback):
314 2010-04-21 Geoffrey Garen <ggaren@apple.com>
316 Reviewed by Sam Weinig.
318 <rdar://problem/7879485> Leopard: Crash after opening Software Update dialog
321 (unprotectGlobalObject): Use the version of JSGlueAPIEntry that doesn't
322 call pthread_getspecific, since it's not safe to call pthread_getspecific
323 from a thread-specific data destructor. (<rdar://problem/7889842>
324 pthread_getspecific returns 0 when called from thread-specific data
327 (getThreadGlobalObject): Make sure to set the currentIdentifierTable
328 when first constructing our JSGlobalObject, since JSGlueAPIEntry has not
329 yet had an opportunity to do so.
331 (JSGlueAPIEntry::JSGlueAPIEntry):
332 * JSUtils.h: New version of JSGlueAPIEntry that doesn't call
335 2010-04-21 Gavin Barraclough <barraclough@apple.com>
337 Reviewed by NOBODY (build fix).
338 Errk! tree on fire, add fwd!
340 * ForwardingHeaders/wtf/text/StringHash.h: Added.
342 2010-04-20 Gavin Barraclough <barraclough@apple.com>
344 Reviewed by Oliver Hunt, Darin Adler.
346 Bug 37906 - Remove JSC::UStringImpl; unify with StringImpl.
347 Add forwarding header.
349 * ForwardingHeaders/wtf/ASCIICType.h: Added.
350 * ForwardingHeaders/wtf/text/StringImpl.h: Added.
352 2010-04-20 Gavin Barraclough <barraclough@apple.com>
354 Reviewed by Oliver Hunt.
356 Bug 37895 - Share common code from UStringImplBase with StringImpl
357 Add forwarding header.
359 * ForwardingHeaders/wtf/text/StringImplBase.h: Added.
361 2010-04-20 Gavin Barraclough <barraclough@apple.com>
363 Rubber stamped by Maciej Stachowiak (relanding r57829).
364 Added missing JS_EXPORTDATA
366 * ForwardingHeaders/wtf/WTFThreadData.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/WTFThreadData.h.
368 (JSGlueAPIEntry::JSGlueAPIEntry):
369 (JSGlueAPIEntry::~JSGlueAPIEntry):
370 (JSGlueAPICallback::JSGlueAPICallback):
371 (JSGlueAPICallback::~JSGlueAPICallback):
373 2010-04-19 Gavin Barraclough <barraclough@apple.com>
375 Reviewed by NOBODY (rolling out r57829).
378 * ForwardingHeaders/wtf/WTFThreadData.h: Removed.
380 (JSGlueAPIEntry::JSGlueAPIEntry):
381 (JSGlueAPIEntry::~JSGlueAPIEntry):
382 (JSGlueAPICallback::JSGlueAPICallback):
383 (JSGlueAPICallback::~JSGlueAPICallback):
385 2010-04-16 Gavin Barraclough <barraclough@apple.com>
387 Reviewed by Sam Weinig.
389 https://bugs.webkit.org/show_bug.cgi?id=37745
390 Move string uniquing tables to (new) WTFThreadData class.
392 Remove AtomicString's dependency on ThreadGlobalData so that we can move
393 WebCore's string classes up to WTF.
395 * ForwardingHeaders/wtf/WTFThreadData.h: Added.
396 * JSUtils.cpp: Update
397 (JSGlueAPIEntry::JSGlueAPIEntry):
398 (JSGlueAPIEntry::~JSGlueAPIEntry):
399 (JSGlueAPICallback::JSGlueAPICallback):
400 (JSGlueAPICallback::~JSGlueAPICallback):
402 2010-03-31 Gavin Barraclough <barraclough@apple.com>
404 Reviewed by Geoff Garen.
406 Bug 36871 - Remove JSC::CString
407 Use WTF::CString instead (which until recently was WebCore::CString).
409 * ForwardingHeaders/wtf/text: Added.
410 * ForwardingHeaders/wtf/text/CString.h: Added.
412 2010-03-11 Mark Rowe <mrowe@apple.com>
414 Reviewed by David Kilzer.
416 <rdar://problem/7745082> Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version
418 Default to using the appropriate SDK if the target Mac OS X version is not the current Mac OS X version.
420 * Configurations/Base.xcconfig:
422 2010-03-11 Mark Rowe <mrowe@apple.com>
424 Reviewed by Tim Hatcher.
426 <rdar://problem/7745082> Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version
428 Introduce TARGET_MAC_OS_X_VERSION_MAJOR to represent the Mac OS X version that is being targeted. It defaults to the
429 current Mac OS X version unless otherwise specified.
431 Key off TARGET_MAC_OS_X_VERSION_MAJOR where we'd previously been keying off MAC_OS_X_VERSION_MAJOR.
433 Explicitly map from the target Mac OS X version to the preferred compiler since Xcode's default compiler choice
434 may not be usable when targetting a different Mac OS X version.
436 Key off TARGET_GCC_VERSION rather than MAC_OS_X_VERSION_MAJOR in locations where we'd previously been keying off
437 MAC_OS_X_VERSION_MAJOR but the decision is really related to the compiler version being used.
439 * Configurations/Base.xcconfig:
440 * Configurations/DebugRelease.xcconfig:
441 * Configurations/Version.xcconfig:
442 * JavaScriptGlue.xcodeproj/project.pbxproj:
444 2010-03-01 Oliver Hunt <oliver@apple.com>
446 Reviewed by Maciej Stachowiak.
448 Refactor named getter function signature to be in line with indexing getter signature
449 https://bugs.webkit.org/show_bug.cgi?id=35563
451 Fix method signature and update code as appropriate
454 (UserObjectImp::userObjectGetter):
457 2010-02-09 Alexey Proskuryakov <ap@apple.com>
459 Reviewed by Geoffrey Garen.
461 https://bugs.webkit.org/show_bug.cgi?id=34490
462 WebCore::ImageEventSender::dispatchPendingEvents() crashes in certain conditions
464 * ForwardingHeaders/wtf/ValueCheck.h: Added.
466 2010-02-04 Mark Rowe <mrowe@apple.com>
468 Reviewed by Timothy Hatcher.
470 Build fix. Remove a symbol corresponding to an inline function from the linker export
471 file to prevent a weak external failure.
473 * JavaScriptGlue.xcodeproj/project.pbxproj: Accommodate rename of script.
475 2010-01-28 Oliver Hunt <oliver@apple.com>
477 Reviewed by Gavin Barraclough.
479 Simplify anonymous slot implementation
480 https://bugs.webkit.org/show_bug.cgi?id=34282
482 Update JSGlue Structure usage to pass the anonymous slot count.
485 (UserObjectImp::createStructure):
487 2010-01-12 Kent Hansen <kent.hansen@nokia.com>
489 Reviewed by Geoffrey Garen.
491 [ES5] Implement Object.getOwnPropertyNames
492 https://bugs.webkit.org/show_bug.cgi?id=32242
494 Add new argument to the reimplementation of getOwnPropertyNames().
497 (UserObjectImp::getOwnPropertyNames):
500 2010-01-07 Alexey Proskuryakov <ap@apple.com>
504 * config.h: Define JS_EXPORTCLASS for JavaScriptGlue.
506 2010-01-05 Gavin Barraclough <barraclough@apple.com>
508 Reviewed by Sam Weinig.
510 https://bugs.webkit.org/show_bug.cgi?id=33236
511 Remove m_identifierTable pointer from UString
513 Add API shims similar to those used in the JSC API to track the current identifierTable.
519 (KJSValueToCFTypeInternal):
520 (unprotectGlobalObject):
521 (JSGlueAPIEntry::JSGlueAPIEntry):
522 (JSGlueAPIEntry::~JSGlueAPIEntry):
523 (JSGlueAPICallback::JSGlueAPICallback):
524 (JSGlueAPICallback::~JSGlueAPICallback):
526 * JSValueWrapper.cpp:
527 (JSValueWrapper::JSObjectCopyPropertyNames):
528 (JSValueWrapper::JSObjectCopyProperty):
529 (JSValueWrapper::JSObjectSetProperty):
530 (JSValueWrapper::JSObjectCallFunction):
531 (JSValueWrapper::JSObjectCopyCFValue):
532 * JavaScriptGlue.cpp:
537 * JavaScriptGlue.xcodeproj/project.pbxproj:
539 (UserObjectImp::callAsFunction):
541 2010-01-04 Gavin Barraclough <barraclough@apple.com>
543 Reviewed by Sam Weinig.
545 Add a forwarding header so that StringHashFunctions.h can be found.
547 * ForwardingHeaders/wtf/StringHashFunctions.h: Added.
549 2010-01-04 Dan Bernstein <mitz@apple.com>
551 Reviewed by Ada Chan and Mark Rowe.
553 Updated copyright string
557 2009-12-21 Gavin Barraclough <barraclough@apple.com>
559 Reviewed by Darin Adler.
561 https://bugs.webkit.org/show_bug.cgi?id=32831
562 Replace UString::Rep implementation, following introduction of ropes to JSC.
564 * ForwardingHeaders/wtf/PossiblyNull.h: Added.
565 - add forwarding header.
567 2009-12-16 Mark Rowe <mrowe@apple.com>
569 Build fix. Disable debug variants of WebKit frameworks.
571 * JavaScriptGlue.xcodeproj/project.pbxproj:
573 2009-12-13 Geoffrey Garen <ggaren@apple.com>
575 Reviewed by Sam Weinig.
577 Changed GC from mark-sweep to mark-allocate.
579 * JavaScriptGlue.cpp:
580 (JSCollect): Updated for rename. Fixed a bug where JSGlue would not check
581 to avoid nested GC calls.
583 2009-12-08 Dmitry Titov <dimich@chromium.org>
585 Rubber-stamped by David Levin.
587 Revert and reopen "Add asserts to RefCounted to make sure ref/deref happens on the right thread."
588 It may have caused massive increase of reported leaks on the bots.
589 https://bugs.webkit.org/show_bug.cgi?id=31639
591 * ForwardingHeaders/wtf/ThreadVerifier.h: Removed.
593 2009-12-08 Dmitry Titov <dimich@chromium.org>
595 Reviewed by Darin Adler.
597 Add asserts to RefCounted to make sure ref/deref happens on the right thread.
598 https://bugs.webkit.org/show_bug.cgi?id=31639
600 * ForwardingHeaders/wtf/ThreadVerifier.h: Added.
602 2009-11-24 Mark Rowe <mrowe@apple.com>
604 Fix production builds where the source tree may be read-only.
606 * JavaScriptGlue.xcodeproj/project.pbxproj:
608 2009-11-08 David Levin <levin@chromium.org>
610 Reviewed by NOBODY (chromium build fix).
612 Added the use jsc define for files that use
613 this config file and DateMath.h. This should
614 be able to go away when DateMath is properly
615 split into wtf and jsc portions which is this bug:
616 https://bugs.webkit.org/show_bug.cgi?id=31246
620 2009-11-06 Geoffrey Garen <ggaren@apple.com>
622 Reviewed by Oliver Hunt.
624 https://bugs.webkit.org/show_bug.cgi?id=31197
625 Implemented a timezone cache not based on Mac OS X's notify_check API.
627 * ForwardingHeaders/wtf/CurrentTime.h: Added.
629 2009-10-27 Geoffrey Garen <ggaren@apple.com>
631 Build fix: Updated for JavaScriptCore export changes.
633 * ForwardingHeaders/wtf/DateInstanceCache.h: Added.
635 2009-10-27 Geoffrey Garen <ggaren@apple.com>
637 Reviewed by Oliver Hunt.
639 Updated for JavaScriptCore export changes.
641 * ForwardingHeaders/wtf/DateMath.h: Added.
643 2009-10-27 Dan Bernstein <mitz@apple.com>
645 Reviewed by Darin Adler.
651 2009-10-16 Oliver Hunt <oliver@apple.com>
653 Reviewed by Gavin Barraclough.
655 Make typeinfo flags default to false
656 https://bugs.webkit.org/show_bug.cgi?id=30372
658 Last part -- replace HasDefaultGetPropertyNames with OverridesGetPropertyNames
662 (UserObjectImp::createStructure):
664 2009-10-15 Oliver Hunt <oliver@apple.com>
666 Reviewed by Darin Adler.
668 Make typeinfo flags default to false
669 https://bugs.webkit.org/show_bug.cgi?id=30372
671 Part 2 -- Reverse the TypeInfo HasDefaultMark flag to OverridesMarkChildren, etc
674 (UserObjectImp::createStructure):
676 2009-10-14 Oliver Hunt <oliver@apple.com>
678 Reviewed by Geoff Garen.
680 Make typeinfo flags default to false
681 https://bugs.webkit.org/show_bug.cgi?id=30372
683 Part 1. Reverse the HasStandardGetOwnPropertySlot flag.
686 (UserObjectImp::createStructure):
688 2009-09-28 Geoffrey Garen <ggaren@apple.com>
690 Reviewed by Sam Weinig.
692 Removed virtual destructor from JSGlobalObjectData to eliminate pointer
693 fix-ups when accessing JSGlobalObject::d.
695 Replaced with an explicit destructor function pointer.
698 (JSGlueGlobalObject::destroyData):
700 (JSGlueGlobalObject::Data::Data):
702 2009-09-12 Oliver Hunt <oliver@apple.com>
704 Reviewed by Maciej Stachowiak.
706 [ES5] Implement Object.keys
707 https://bugs.webkit.org/show_bug.cgi?id=29170
709 Switch over to getOwnPropertyNames instead of getPropertyNames.
712 (UserObjectImp::getOwnPropertyNames):
715 2009-09-02 Darin Adler <darin@apple.com>
717 Reviewed by Geoff Garen.
719 * JSValueWrapper.cpp:
720 (JSValueWrapper::JSObjectMark): Removed a check of the mark
721 bit. It's OK to do more work in this case, and there is no
722 longer a public function to access the mark bit.
724 2009-08-14 Darin Adler <darin@apple.com>
726 Reviewed by Sam Weinig.
728 Rename the confusing isObject(<class>) to inherits(<class>).
729 It still works on non-objects, returning false.
732 (KJSValueToJSObject):
733 (KJSValueToCFTypeInternal):
734 Changed from isObject to inherits.
736 2009-08-13 Oliver Hunt <oliver@apple.com>
738 Reviewed by Maciej Stachowiak.
741 https://bugs.webkit.org/show_bug.cgi?id=28294
743 Continue to jump through hoops to deal with the exposed marking routines
746 * JSValueWrapper.cpp:
747 (JSValueWrapper::JSObjectMark):
749 2009-08-07 Oliver Hunt <oliver@apple.com>
751 Reviewed by Sam Weinig.
753 Stack overflow crash in JavaScript garbage collector mark pass
754 https://bugs.webkit.org/show_bug.cgi?id=12216
756 Make JSGlue interact with the new iterative mark logic.
758 * JSValueWrapper.cpp:
759 (JSValueWrapper::JSObjectMark):
760 Unfortunately JSGlue exposes recursive marking so we can only flatten
761 the recursion. We just create a local mark stack if necessary and mark
762 the given object iteratively from this point.
764 (UserObjectImp::markChildren):
767 2009-08-06 Mark Rowe <mrowe@apple.com>
769 Rubber-stamped by Sam Weinig.
771 Add explicit dependencies for our build verification scripts to ensure that they always run after linking has completed.
773 * JavaScriptGlue.xcodeproj/project.pbxproj:
775 2009-07-27 Alexey Proskuryakov <ap@webkit.org>
777 Reviewed by Darin Adler.
779 https://bugs.webkit.org/show_bug.cgi?id=27735
780 Give a helpful name to JSLock constructor argument
786 (KJSValueToCFTypeInternal):
787 (unprotectGlobalObject):
788 * JSValueWrapper.cpp:
789 (JSValueWrapper::JSObjectCopyPropertyNames):
790 (JSValueWrapper::JSObjectCopyProperty):
791 (JSValueWrapper::JSObjectSetProperty):
792 (JSValueWrapper::JSObjectCallFunction):
793 (JSValueWrapper::JSObjectCopyCFValue):
794 * JavaScriptGlue.cpp:
800 (JSUnlockInterpreter):
802 2009-07-10 Adam Roben <aroben@apple.com>
804 Sort all our Xcode projects
806 Accomplished using sort-Xcode-project-file.
808 Requested by Dave Kilzer.
810 * JavaScriptGlue.xcodeproj/project.pbxproj:
812 2009-07-08 Darin Adler <darin@apple.com>
814 Reviewed by Dan Bernstein
816 - fix <rdar://problem/6971484> REGRESSION (r30534): "Scrolling Credits"
817 effect does not scroll on iMovie 7.1.4 on Tiger
819 In <http://trac.webkit.org/changeset/30534>, the prototype of
820 JSObject::put() which UserObjectImp had been overriding changed, but
821 UserObjectImp wasn't updated, so its override was no longer getting
825 (UserObjectImp::put): Match the current prototype of JSObject::put().
826 The PutPropertySlot argument is unused.
827 * UserObjectImp.h: Ditto.
829 2009-06-19 Zoltan Horvath <hzoltan@inf.u-szeged.hu>
831 Reviewed by Darin Adler.
833 Add FastAllocBase.h to JavaScriptGlue's ForwardingHeaders/wtf, because it's needed by HashCountedSet.h on MAC.
835 * ForwardingHeaders/wtf/FastAllocBase.h: Added.
837 2009-06-02 Mark Rowe <mrowe@apple.com>
839 Reviewed by Anders Carlsson.
841 Remove workaround that was added to address <rdar://problem/5488678> as it no longer affects our Tiger builds.
843 * Configurations/Base.xcconfig:
845 2009-05-25 David Levin <levin@chromium.org>
847 Reviewed by Maciej Stachowiak and Oliver Hunt.
849 https://bugs.webkit.org/show_bug.cgi?id=25126
851 Added forwarding headers.
853 * ForwardingHeaders/wtf/CrossThreadRefCounted.h: Added.
854 * ForwardingHeaders/wtf/OwnFastMallocPtr.h: Added.
856 2009-05-23 David Kilzer <ddkilzer@apple.com>
858 Part 1 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr
860 <https://bugs.webkit.org/show_bug.cgi?id=25495>
862 Reviewed by Oliver Hunt.
864 * ForwardingHeaders/wtf/OwnPtrCommon.h: Added.
865 * ForwardingHeaders/wtf/PassOwnPtr.h: Added.
867 2009-05-14 Mark Rowe <mrowe@apple.com>
869 Rubber-stamped by Darin Adler.
871 <rdar://problem/6681868> When building with Xcode 3.1.3 should be using gcc 4.2
873 The meaning of XCODE_VERSION_ACTUAL is more sensible in newer versions of Xcode.
874 Update our logic to select the compiler version to use the more appropriate XCODE_VERSION_MINOR
875 if the version of Xcode supports it, and fall back to XCODE_VERSION_ACTUAL if not.
877 * Configurations/Base.xcconfig:
879 2009-05-07 Oliver Hunt <oliver@apple.com>
881 Reviewed by Gavin Barraclough.
883 Add calling convention annotation
887 2009-05-01 Geoffrey Garen <ggaren@apple.com>
889 Rubber Stamped by Sam Weinig.
891 Renamed JSValuePtr => JSValue.
894 (nativeCallFunction):
896 (KJSValueToJSObject):
898 (KJSValueToCFTypeInternal):
901 * JSValueWrapper.cpp:
902 (JSValueWrapper::JSValueWrapper):
903 (JSValueWrapper::GetValue):
904 (JSValueWrapper::JSObjectCopyProperty):
905 (JSValueWrapper::JSObjectSetProperty):
906 (JSValueWrapper::JSObjectCallFunction):
909 (UserObjectImp::callAsFunction):
910 (UserObjectImp::userObjectGetter):
911 (UserObjectImp::getOwnPropertySlot):
912 (UserObjectImp::put):
913 (UserObjectImp::toPrimitive):
915 (UserObjectImp::createStructure):
917 2009-04-29 Oliver Hunt <oliver@apple.com>
919 Reviewed by Gavin Barraclough.
921 Clean up ArgList to be a trivial type
923 Start using MarkedArgumentBuffer to create argument lists for function calls
925 * JSValueWrapper.cpp:
926 (JSValueWrapper::JSObjectCallFunction):
928 2009-04-28 Geoffrey Garen <ggaren@apple.com>
930 Rubber stamped by Beth Dakin.
935 (UserObjectImp::callAsFunction):
937 2009-04-21 Geoffrey Garen <ggaren@apple.com>
939 Reviewed by Mark Rowe.
941 Tiger crash fix: Put VM tags in their own header file, and fixed up the
942 #ifdefs so they're not used on Tiger.
944 * ForwardingHeaders/wtf/VMTags.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/HashTraits.h.
946 2009-04-20 Sam Weinig <sam@webkit.org>
948 Rubber-stamped by Tim Hatcher.
950 Add licenses for xcconfig files.
952 * Configurations/Base.xcconfig:
953 * Configurations/DebugRelease.xcconfig:
954 * Configurations/JavaScriptGlue.xcconfig:
955 * Configurations/Version.xcconfig:
957 2009-03-13 Mark Rowe <mrowe@apple.com>
959 Rubber-stamped by Dan Bernstein.
961 Take advantage of the ability of recent versions of Xcode to easily switch the active
964 * Configurations/DebugRelease.xcconfig:
966 2009-02-24 Mark Rowe <mrowe@apple.com>
968 Rubber-stamped by Dan Bernstein.
970 <rdar://problem/6407844> JavaScriptGlue should use -Os rather than -O2
972 * Configurations/Base.xcconfig:
974 2009-01-28 Sam Weinig <sam@webkit.org>
976 Reviewed by Gavin Barraclough.
978 Fix for <rdar://problem/6525537>
979 Hang occurs when closing Installer window (iTunes, Aperture)
982 (getThreadGlobalObject): Use the shared JSGlobalData instance.
984 2009-01-22 Mark Rowe <mrowe@apple.com>
986 Rubber-stamped by Anders Carlsson.
988 Disable GCC_WARN_ABOUT_MISSING_PROTOTYPES temporarily.
990 Current versions of Xcode only respect it for C and Objective-C files,
991 and our code doesn't currently compile if it is applied to C++ and
994 * Configurations/Base.xcconfig:
996 2009-01-19 Sam Weinig <sam@webkit.org>
998 Rubber-stamped by Gavin Barraclough.
1000 Remove temporary operator-> from JSValuePtr.
1003 (KJSValueToJSObject):
1004 (KJSValueToCFTypeInternal):
1005 * JSValueWrapper.cpp:
1006 (JSValueWrapper::JSObjectCopyPropertyNames):
1007 (JSValueWrapper::JSObjectCopyProperty):
1008 (JSValueWrapper::JSObjectSetProperty):
1009 (JSValueWrapper::JSObjectCallFunction):
1010 (JSValueWrapper::JSObjectMark):
1011 * UserObjectImp.cpp:
1012 (UserObjectImp::getOwnPropertySlot):
1014 2009-01-14 Dan Bernstein <mitz@apple.com>
1016 Reviewed by John Sullivan.
1022 2009-01-09 David Levin <levin@chromium.org>
1024 Reviewed by Oliver Hunt.
1026 https://bugs.webkit.org/show_bug.cgi?id=23175
1028 Added forwarding header.
1030 * ForwardingHeaders/wtf/PtrAndFlags.h: Added.
1032 2009-01-05 Gavin Barraclough <baraclough@apple.com>
1034 Rubber Stamped by Oliver Hunt.
1036 Replace all uses of JSValue* with new wrapper class, JSValuePtr.
1037 See JavaScriptCore/ChangeLog for more detailed description.
1040 (nativeCallFunction):
1042 (KJSValueToJSObject):
1044 (KJSValueToCFTypeInternal):
1047 * JSValueWrapper.cpp:
1048 (JSValueWrapper::JSValueWrapper):
1049 (JSValueWrapper::GetValue):
1050 (JSValueWrapper::JSObjectCopyProperty):
1051 (JSValueWrapper::JSObjectSetProperty):
1052 (JSValueWrapper::JSObjectCallFunction):
1054 * UserObjectImp.cpp:
1055 (UserObjectImp::callAsFunction):
1056 (UserObjectImp::userObjectGetter):
1057 (UserObjectImp::getOwnPropertySlot):
1058 (UserObjectImp::put):
1059 (UserObjectImp::toPrimitive):
1061 (UserObjectImp::createStructure):
1063 2008-12-15 Mark Rowe <mrowe@apple.com>
1065 Rubber-stamped by Cameron Zwarich.
1067 <rdar://problem/6289933> Change WebKit-related projects to build with GCC 4.2 on Leopard.
1069 * Configurations/Base.xcconfig:
1070 * Configurations/DebugRelease.xcconfig:
1072 2008-12-08 David Kilzer <ddkilzer@apple.com>
1074 Bug 22555: Sort "children" sections in Xcode project files
1076 <https://bugs.webkit.org/show_bug.cgi?id=22555>
1078 Reviewed by Eric Seidel.
1080 * JavaScriptGlue.xcodeproj/project.pbxproj: Sorted.
1082 2008-11-17 Geoffrey Garen <ggaren@apple.com>
1084 Reviewed by Sam Weinig.
1086 Updated for JavaScriptCore rename.
1088 * ForwardingHeaders/runtime/CallFrame.h: Copied from JavaScriptGlue/ForwardingHeaders/runtime/ExecState.h.
1089 * ForwardingHeaders/runtime/ExecState.h: Removed.
1092 2008-11-17 Geoffrey Garen <ggaren@apple.com>
1094 Reviewed by Sam Weinig.
1096 Updated for JavaScriptCore rename.
1098 * ForwardingHeaders/interpreter: Added.
1099 * ForwardingHeaders/interpreter/CallFrame.h: Copied from ForwardingHeaders/runtime/ExecState.h.
1100 * ForwardingHeaders/runtime/ExecState.h: Removed.
1102 2008-11-15 Darin Adler <darin@apple.com>
1104 Rubber stamped by Geoff Garen.
1106 - do the long-planned StructureID -> Structure rename
1109 (JSGlueGlobalObject::JSGlueGlobalObject):
1112 (JSGlueGlobalObject::userObjectStructure):
1114 (getThreadGlobalObject):
1115 * UserObjectImp.cpp:
1116 (UserObjectImp::UserObjectImp):
1118 (UserObjectImp::createStructure):
1120 2008-11-15 Geoffrey Garen <ggaren@apple.com>
1122 Reviewed by Sam Weinig.
1124 Updated for JavaScriptCore renames.
1128 (JSRun::CheckSyntax):
1130 2008-11-05 Cameron Zwarich <zwarich@apple.com>
1134 Fix the JavaScriptGlue build. This wouldn't show up unless one was
1135 doing a clean build, because changes in JavaScriptCore don't cause
1136 anything in JavaScriptGlue to get rebuilt.
1140 * JavaScriptGlue.cpp:
1142 2008-11-04 Cameron Zwarich <zwarich@apple.com>
1144 Reviewed by Mark Rowe.
1146 Remove JavaScriptGlue forwarding headers that are no longer necessary,
1147 and correct the path of the ExecState.h forwarding header.
1149 * ForwardingHeaders/kjs: Removed.
1150 * ForwardingHeaders/kjs/CTI.h: Removed.
1151 * ForwardingHeaders/kjs/ExecState.h: Removed.
1152 * ForwardingHeaders/kjs/JSValue.h: Removed.
1153 * ForwardingHeaders/kjs/PutPropertySlot.h: Removed.
1154 * ForwardingHeaders/kjs/ustring.h: Removed.
1155 * ForwardingHeaders/runtime: Added.
1156 * ForwardingHeaders/runtime/ExecState.h: Copied from ForwardingHeaders/kjs/ExecState.h.
1159 2008-10-31 Stephanie Lewis <slewis@apple.com>
1161 Fix build by including right files.
1165 2008-10-30 Mark Rowe <mrowe@apple.com>
1167 Reviewed by Jon Homeycutt.
1169 Explicitly default to building for only the native architecture in debug and release builds.
1171 * Configurations/DebugRelease.xcconfig:
1173 2008-10-24 Darin Adler <darin@apple.com>
1175 - finish rolling out https://bugs.webkit.org/show_bug.cgi?id=21732
1178 (nativeCallFunction):
1180 (KJSValueToJSObject):
1182 (KJSValueToCFTypeInternal):
1185 * JSValueWrapper.cpp:
1186 (JSValueWrapper::JSValueWrapper):
1187 (JSValueWrapper::GetValue):
1188 (JSValueWrapper::JSObjectCopyProperty):
1189 (JSValueWrapper::JSObjectSetProperty):
1190 (JSValueWrapper::JSObjectCallFunction):
1192 * UserObjectImp.cpp:
1193 (UserObjectImp::callAsFunction):
1194 (UserObjectImp::userObjectGetter):
1195 (UserObjectImp::getOwnPropertySlot):
1196 (UserObjectImp::put):
1197 (UserObjectImp::toPrimitive):
1199 (UserObjectImp::createStructureID):
1200 Use JSValue* instead of JSValuePtr.
1202 2008-10-23 Darin Adler <darin@apple.com>
1204 - roll out https://bugs.webkit.org/show_bug.cgi?id=21732
1206 * JSValueWrapper.cpp:
1207 (JSValueWrapper::GetValue): Added missing call to .get().
1208 * JSValueWrapper.h: ProtectedPtr<JSValue> instead of ProtectedPtr<JSValuePtr>.
1210 2008-10-22 Darin Adler <darin@apple.com>
1212 Reviewed by Sam Weinig.
1214 - fix https://bugs.webkit.org/show_bug.cgi?id=21294
1215 Bug 21294: Devirtualize getOwnPropertySlot()
1218 (JSGlueGlobalObject::JSGlueGlobalObject): Moved constructor here.
1219 Set up flags in its new location in global object data, and set up
1220 a structure for UserObjectImp too.
1221 (JSRun::JSRun): Added code to give the JSGlueGlobalObject its own unique
1222 structure, rather than using the default one from JSGlobalObject.
1224 * JSRun.h: Made JSGlueGlobalObject take a structure ID. Also moved
1225 the data into a separate data object. And added userObjectStructure,
1226 a Structure to be used by UserObjectImp.
1228 * JSUtils.cpp: Removed unused sharedGlobalData global.
1229 (JSObjectKJSValue): Pass Structure in when creating UserObjectImp.
1230 (unprotectGlobalObject): Use JSGlueGLobalObject type specifically.
1231 (initializeGlobalObjectKey): Removed code to set up unused sharedGlobalData.
1232 (getThreadGlobalObject): Added. Shared by JSObjectKJSValue and
1233 getThreadGlobalExecState. Also now passes in a structure ID when creating
1235 (getThreadGlobalExecState): Changed to call getThreadGlobalObject.
1237 * UserObjectImp.cpp:
1238 (UserObjectImp::UserObjectImp): Changed to take a structure.
1240 (UserObjectImp::createStructureID): Added. Returns a structure without
1241 HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
1243 2008-10-20 Sam Weinig <sam@webkit.org>
1245 Reviewed by Cameron Zwarich.
1247 Fix for https://bugs.webkit.org/show_bug.cgi?id=21766
1248 REGRESSION: 12 JSC tests fail
1250 The JSGlobalObject constructor no longer takes a JSGlobalData
1256 (JSGlueGlobalObject::JSGlueGlobalObject):
1258 (getThreadGlobalExecState):
1260 2008-10-19 Darin Adler <darin@apple.com>
1262 Reviewed by Oliver Hunt.
1264 - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
1265 improve performance by eliminating JSValue as a base class for JSCell
1267 Remove most uses of JSValue, which will be removed in a future patch.
1269 * JSValueWrapper.h: Use JSValuePtr instead of JSValue*.
1271 2008-10-18 Darin Adler <darin@apple.com>
1273 Reviewed by Oliver Hunt.
1275 - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
1276 improve performance by eliminating JSValue as a base class for JSCell
1278 Tweak a little more to get closer to where we can make JSValuePtr a class.
1281 (nativeCallFunction): Call asObject.
1284 (KJSValueToJSObject): Use JSValuePtr and asObject.
1285 (JSObjectKJSValue): Ditto.
1286 (KJSValueToCFTypeInternal): Ditto.
1287 (KJSValueToCFType): Ditto.
1290 * UserObjectImp.cpp:
1291 (UserObjectImp::callAsFunction): Use JSValuePtr and asObject.
1292 (UserObjectImp::userObjectGetter): Ditto.
1293 (UserObjectImp::getOwnPropertySlot): Ditto.
1294 (UserObjectImp::put): Ditto.
1295 (UserObjectImp::toPrimitive): Ditto.
1296 * UserObjectImp.h: Ditto.
1298 2008-10-18 Darin Adler <darin@apple.com>
1300 Reviewed by Cameron Zwarich.
1302 - next step on https://bugs.webkit.org/show_bug.cgi?id=21732
1303 improve performance by eliminating JSValue as a base class for JSCell
1305 Use JSValuePtr everywhere instead of JSValue*. In the future, we'll be
1306 changing JSValuePtr to be a class, and then eventually renaming it
1307 to JSValue once that's done.
1310 * JSValueWrapper.cpp:
1311 * UserObjectImp.cpp:
1313 Replace JSValue* with JSValuePtr.
1315 2008-10-13 Maciej Stachowiak <mjs@apple.com>
1317 Rubber stamped by Mark Rowe.
1319 - use gcc 4.2 when building with Xcode 3.1 or newer on Leopard, even though this is not the default
1321 * Configurations/DebugRelease.xcconfig:
1323 2008-10-06 Maciej Stachowiak <mjs@apple.com>
1325 Not reviewed. Build fix.
1327 - revert toBoolean changes (r37333 and r37335); need to make WebCore work with these
1330 (KJSValueToCFTypeInternal):
1332 2008-10-06 Maciej Stachowiak <mjs@apple.com>
1336 - fix build; toBoolean no longer takes an ExecState
1339 (KJSValueToCFTypeInternal):
1341 2008-10-04 Mark Rowe <mrowe@apple.com>
1343 Reviewed by Tim Hatcher.
1345 Add a 'Check For Weak VTables' build phase to catch weak vtables as early as possible.
1347 * JavaScriptGlue.xcodeproj/project.pbxproj:
1349 2008-10-01 Geoffrey Garen <ggaren@apple.com>
1351 Reviewed by Darin Adler and Cameron Zwarich.
1355 (JSRun::CheckSyntax): Provide a SourceCode to the Interpreter, since
1356 other APIs are no longer supported.
1358 2008-09-29 Geoffrey Garen <ggaren@apple.com>
1362 Forwarding headers to fix the build.
1364 * ForwardingHeaders/kjs/CTI.h: Copied from ForwardingHeaders/kjs/ExecState.h.
1365 * ForwardingHeaders/kjs/ustring.h: Copied from ForwardingHeaders/kjs/ExecState.h.
1366 * ForwardingHeaders/masm: Added.
1367 * ForwardingHeaders/masm/X86Assembler.h: Added.
1368 * ForwardingHeaders/profiler: Added.
1369 * ForwardingHeaders/profiler/Profiler.h: Added.
1371 2008-09-08 Sam Weinig <sam@webkit.org>
1373 Reviewed by Maciej Stachowiak and Oliver Hunt.
1375 Add forwarding headers.
1377 * ForwardingHeaders/wtf/HashFunctions.h: Added.
1378 * ForwardingHeaders/wtf/HashTraits.h: Added.
1380 2008-09-02 Geoffrey Garen <ggaren@apple.com>
1382 Reviewed by Sam Weinig.
1384 Implemented the rest of Darin's review comments for the 09-01 inline
1387 * ForwardingHeaders/kjs/PutPropertySlot.h: Added.
1389 2008-09-01 Geoffrey Garen <ggaren@apple.com>
1391 Reviewed by Darin Adler.
1393 First cut at inline caching for access to vanilla JavaScript properties.
1395 Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
1396 to JavaScriptGlue classes, and PutPropertySlot& arguments to put functions.
1398 2008-08-22 Anders Carlsson <andersca@apple.com>
1400 Fix build for real this time.
1404 2008-08-22 Anders Carlsson <andersca@apple.com>
1408 * UserObjectImp.cpp:
1409 (UserObjectImp::toPrimitive):
1412 2008-08-19 Alexey Proskuryakov <ap@webkit.org>
1414 Reviewed by Geoff Garen.
1416 Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
1422 (KJSValueToCFTypeInternal):
1423 (unprotectGlobalObject):
1425 * JSValueWrapper.cpp:
1426 (JSValueWrapper::JSObjectCopyPropertyNames):
1427 (JSValueWrapper::JSObjectCopyProperty):
1428 (JSValueWrapper::JSObjectSetProperty):
1429 (JSValueWrapper::JSObjectCallFunction):
1430 (JSValueWrapper::JSObjectCopyCFValue):
1431 * JavaScriptGlue.cpp:
1436 (JSLockInterpreter):
1437 (JSUnlockInterpreter):
1438 * UserObjectImp.cpp:
1439 (UserObjectImp::callAsFunction):
1441 2008-08-12 Darin Adler <darin@apple.com>
1445 - eliminate JSValue::type()
1448 (KJSValueToCFTypeInternal): Replaced uses of JSValue::type() with
1449 JSValue::is functions.
1450 * UserObjectImp.cpp:
1451 (UserObjectImp::getOwnPropertySlot): Ditto.
1452 (UserObjectImp::toPrimitive): Take PreferredPrimitiveType argument
1453 instead of JSType argument.
1454 * UserObjectImp.h: Ditto.
1456 2008-08-17 Geoffrey Garen <ggaren@apple.com>
1458 Reviewed by Cameron Zwarich.
1460 Updated project files to XCode 3.1.
1462 * JavaScriptGlue.xcodeproj/project.pbxproj:
1464 2008-08-15 Mark Rowe <mrowe@apple.com>
1466 Rubber-stamped by Geoff Garen.
1468 <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
1470 * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
1471 between the Debug configuration and debug Production variant.
1472 * JavaScriptGlue.xcodeproj/project.pbxproj: Enable the debug variant.
1474 2008-07-31 Alexey Proskuryakov <ap@webkit.org>
1476 Rubber-stamped by Maciej.
1478 Eliminate JSLock (it was already disabled, removing the stub implementaion and all
1485 (KJSValueToCFTypeInternal):
1486 (unprotectGlobalObject):
1488 * JSValueWrapper.cpp:
1489 (JSValueWrapper::JSObjectCopyPropertyNames):
1490 (JSValueWrapper::JSObjectCopyProperty):
1491 (JSValueWrapper::JSObjectSetProperty):
1492 (JSValueWrapper::JSObjectCallFunction):
1493 (JSValueWrapper::JSObjectCopyCFValue):
1494 * JavaScriptGlue.cpp:
1499 (JSLockInterpreter):
1500 (JSUnlockInterpreter):
1501 * UserObjectImp.cpp:
1502 (UserObjectImp::callAsFunction):
1504 2008-07-29 Alexey Proskuryakov <ap@webkit.org>
1506 Reviewed by Geoff Garen.
1508 Implement JSContextGroup APIs to make concurrent execution possible for
1509 JavaScriptCore clients.
1514 (getThreadGlobalExecState):
1515 Changed JavaScriptGlue to use a JSGlobalData of its own, now that there is no shared
1518 2008-07-23 Alexey Proskuryakov <ap@webkit.org>
1520 Reviewed by Geoff Garen.
1522 Make JSClassRef work with any context, not just the first one it was used in.
1524 * ForwardingHeaders/wtf/HashMap.h: Added.
1526 2008-07-22 Geoffrey Garen <ggaren@apple.com>
1528 Reviewed by Oliver Hunt and Sam Weinig.
1530 Next step toward putting doubles in registers: Prepare the Register class
1531 and its clients for registers that don't contain JSValue*s.
1533 2008-07-21 Mark Rowe <mrowe@apple.com>
1535 Reviewed by Sam Weinig.
1537 <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
1539 * Configurations/Version.xcconfig:
1542 2008-07-18 Geoffrey Garen <ggaren@apple.com>
1544 Reviewed by Cameron Zwarich.
1548 "CallTypeNative" => "CallTypeHost"
1549 "code" => "byteCode"
1550 "generatedCode" => "generatedByteCode"
1554 (JSUserObject::getCallData):
1556 2008-07-14 Alexey Proskuryakov <ap@webkit.org>
1558 Reviewed by Geoff Garen.
1560 Eliminate per-thread JavaScript global data instance support and make arbitrary
1561 global data/global object combinations possible.
1563 * ForwardingHeaders/wtf/ThreadSpecific.h: Added.
1567 (getThreadGlobalExecState):
1568 Adapt to the new way of asking for shared JSGlobalData.
1570 2008-07-10 Mark Rowe <mrowe@apple.com>
1572 Reviewed by Sam Weinig.
1574 Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
1576 * Configurations/JavaScriptGlue.xcconfig:
1578 2008-07-09 Mark Rowe <mrowe@apple.com>
1580 Reviewed by Geoff Garen.
1582 Don't warn about deprecated functions in production builds.
1584 * Configurations/Base.xcconfig:
1585 * Configurations/DebugRelease.xcconfig:
1587 2008-07-08 Alexey Proskuryakov <ap@webkit.org>
1589 Reviewed by Darin Adler.
1591 <rdar://problem/6058368> REGRESSION: Crash occurs in KJS::Machine after launching
1594 The problem was that JSUserObject::getCallData() was setting call type to native, but
1595 left callData.native.function uninitialized.
1598 (JSUserObject::getCallData): Initialize callData.native.function.
1599 (nativeCallFunction): Call UserObjectImp::callAsFunction().
1601 2008-07-04 Sam Weinig <sam@webkit.org>
1603 Rubber-stamped by Dan Bernstein.
1605 * JSObject.h: Rename the header guard as it now conflicts with the
1606 JSObject in JavaScriptCore.
1608 2008-07-01 Alexey Proskuryakov <ap@webkit.org>
1610 Reviewed by Darin Adler.
1612 Disable JSLock for per-thread contexts.
1614 * ForwardingHeaders/wtf/Locker.h: Added.
1615 * ForwardingHeaders/wtf/Threading.h: Added.
1620 (KJSValueToCFTypeInternal):
1621 (unprotectGlobalObject):
1623 * JSValueWrapper.cpp:
1624 (JSValueWrapper::JSObjectCopyPropertyNames):
1625 (JSValueWrapper::JSObjectCopyProperty):
1626 (JSValueWrapper::JSObjectSetProperty):
1627 (JSValueWrapper::JSObjectCallFunction):
1628 (JSValueWrapper::JSObjectCopyCFValue):
1629 * JavaScriptGlue.cpp:
1634 (JSLockInterpreter):
1635 (JSUnlockInterpreter):
1636 * UserObjectImp.cpp:
1637 (UserObjectImp::callAsFunction):
1638 Pass a parameter (always true) to JSLock and JSLock::DropAllLocks to indicate that JSG
1639 clients always need implicit mutex protection.
1640 Added includes that are now needed.
1642 2008-06-26 Darin Adler <darin@apple.com>
1646 * JSUtils.cpp: Added include of <JavaScriptCore/JSString.h> since jsString
1647 will soon be changed to return a JSString*.
1648 * UserObjectImp.cpp: Ditto.
1650 2008-06-23 Darin Adler <darin@apple.com>
1654 * JSValueWrapper.cpp:
1655 (JSValueWrapper::JSObjectCallFunction): Updated to use getCallData and call instead
1656 of the old callAsFunction.
1658 2008-06-17 Alexey Proskuryakov <ap@webkit.org>
1660 Reviewed by Darin Adler.
1662 Prepare JavaScript heap for being per-thread.
1664 * JSRun.cpp: (JSRun::JSRun): Create JSGlueGlobalObject in a shared JS heap.
1666 * JSUtils.h: Made getThreadGlobalExecState available throughout JSGlue.
1669 (JSObjectKJSValue): Pass an ExecState where now required.
1670 (unprotectGlobalObject):
1671 (initializeGlobalObjectKey):
1672 (getThreadGlobalExecState):
1673 Moved these functions from JSValueWrapper.cpp, as the global exec state is now needed
1674 elsewhere. I'm not quite sure how this relates to the global object from JSRun, but
1675 since the new uses are all for Heap access, there doesn't seem to be any behavior change.
1677 * JavaScriptGlue.cpp:
1678 (JSLockInterpreter): Don't call registerThread explicitly, as JSLock will do that.
1680 * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState* where now required.
1682 2008-06-17 Mark Rowe <mrowe@apple.com>
1684 Reviewed by Darin Adler.
1686 <rdar://problem/5775802> JavaScriptGlue should not force use of GCC 4.0.
1688 * JavaScriptGlue.xcodeproj/project.pbxproj:
1690 2008-06-16 Maciej Stachowiak <mjs@apple.com>
1694 - removed nearly unused types.h and LocalStorageEntry.h headers
1698 2008-06-16 Alexey Proskuryakov <ap@webkit.org>
1700 Reviewed by Geoff Garen.
1702 Make Identifier construction use an explicitly passed IdentifierTable.
1705 (CFStringToIdentifier):
1706 (KJSValueToCFTypeInternal):
1708 * JSValueWrapper.cpp:
1709 (JSValueWrapper::JSObjectCopyPropertyNames):
1710 (JSValueWrapper::JSObjectCopyProperty):
1711 (JSValueWrapper::JSObjectSetProperty):
1712 * UserObjectImp.cpp:
1713 (UserObjectImp::getPropertyNames):
1714 Pass ExecState or JSGlobalData everywhere.
1716 2008-06-15 Darin Adler <darin@apple.com>
1718 - rename KJS::List to KJS::ArgList
1720 * JSValueWrapper.cpp:
1721 (JSValueWrapper::JSObjectCallFunction):
1722 * UserObjectImp.cpp:
1723 (UserObjectImp::callAsFunction):
1726 2008-06-15 Darin Adler <darin@apple.com>
1728 - new names for a few key JavaScriptCore files
1730 * ForwardingHeaders/kjs/JSValue.h: Copied from JavaScriptGlue/ForwardingHeaders/kjs/value.h.
1731 * ForwardingHeaders/kjs/value.h: Removed.
1734 2008-06-03 Darin Adler <darin@apple.com>
1736 - update for JavaScriptCore changes for https://bugs.webkit.org/show_bug.cgi?id=19269
1737 speed up SunSpider by eliminating the toObject call for most get/put/delete
1739 * UserObjectImp.cpp:
1740 (UserObjectImp::userObjectGetter): Removed originalObject argument.
1741 * UserObjectImp.h: Ditto.
1743 2008-06-02 Geoffrey Garen <ggaren@apple.com>
1745 Reviewed by Alexey Proskuryakov.
1747 Removed JSObject::call, since it just called JSObject::callAsFunction.
1749 SunSpider reports no change.
1751 2008-05-28 Geoffrey Garen <ggaren@apple.com>
1753 Reviewed by Oliver Hunt.
1755 Fixed total destruction in Software Update.app.
1757 Updated JavaScriptGlue to honor squirrelfish's new getCallData mechanism for
1758 indicating that an object can be called as a function.
1760 2008-05-10 Maciej Stachowiak <mjs@apple.com>
1764 - JavaScriptGlue part of fix for: "SQUIRRELFISH: function toString broken after calling"
1765 https://bugs.webkit.org/show_bug.cgi?id=18869
1768 (JSRun::Evaluate): Use UString version of eveluate() instead of
1769 the now departed UChar*/length variant; use of the lower-level
1770 version was gratuitous in any case.
1771 (JSRun::CheckSyntax): Ditto for checkSyntax().
1773 2008-04-30 Geoffrey Garen <ggaren@apple.com>
1775 Build fix: supply missing parameter that used to be implicit.
1780 2008-03-30 Geoffrey Garen <ggaren@apple.com>
1782 Reviewed by Oliver Hunt.
1786 * ForwardingHeaders/wtf/UnusedParam.h: Copied from ForwardingHeaders/wtf/OwnPtr.h.
1788 2008-05-12 Alexey Proskuryakov <ap@webkit.org>
1790 Roll out recent threading changes (r32807, r32810, r32819, r32822) to simplify
1791 SquirrelFish merging.
1796 * JSValueWrapper.cpp:
1797 (unprotectGlobalObject):
1798 (initializeGlobalObjectKey):
1799 (getThreadGlobalExecState):
1800 * JavaScriptGlue.cpp:
1802 (JSLockInterpreter):
1803 * UserObjectImp.cpp:
1804 (UserObjectImp::toPrimitive):
1806 2008-05-02 Alexey Proskuryakov <ap@webkit.org>
1808 Reviewed by Darin Adler.
1810 Make JavaScriptGlue and JavaScriptCore API functions implicitly call initializeThreading
1811 for the sake of non-WebKit clients.
1813 * JavaScriptGlue.cpp:
1816 (JSCreateJSArrayFromCFArray):
1817 (JSLockInterpreter):
1818 These are all possible JavaScriptGlue entry points.
1820 2008-05-02 Alexey Proskuryakov <ap@webkit.org>
1822 Reviewed by Geoffrey Garen.
1824 https://bugs.webkit.org/show_bug.cgi?id=18826
1825 Make JavaScript heap per-thread
1827 * JSValueWrapper.cpp:
1829 Moved getThreadGlobalExecState() to JSUtils and made it extern, as ExecState is now needed
1830 for all JS allocations.
1833 (JSObjectKJSValue): Pass ExecState to functions that now need it.
1834 (unprotectGlobalObject): Moved from JSValueWrapper.cpp.
1835 (initializeGlobalObjectKey): Ditto.
1836 (getThreadGlobalExecState): Ditto.
1838 * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState to jsString and jsNumber.
1840 * JavaScriptGlue.cpp:
1841 (JSCollect): Use current thread's heap.
1842 (JSLockInterpreter): Removed JSLock::registerThread(), because a JS heap doesn't need to
1843 know about other threads.
1845 2008-04-25 Alexey Proskuryakov <ap@webkit.org>
1847 Reviewed by Darin Adler.
1849 Fix run-webkit-tests --threading
1850 and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661>
1851 Proxy server issue in Sunday's Nightly
1853 * UserObjectImp.cpp: Adjusted for the new member added to ClassInfo.
1855 2008-04-25 Mark Rowe <mrowe@apple.com>
1857 Reviewed by Adele Peterson.
1859 <rdar://problem/5891264> Don't install the JavaScriptGlue headers
1861 * JavaScriptGlue.xcodeproj/project.pbxproj:
1863 2008-04-25 Mark Rowe <mrowe@apple.com>
1865 Rubber-stamped by Sam Weinig.
1867 Add some content to an empty ICU header file to prevent verification errors.
1869 * icu/unicode/utf_old.h:
1871 2008-04-02 Mark Rowe <mrowe@apple.com>
1873 Reviewed by Oliver Hunt.
1875 Ensure that debug symbols are generated for x86_64 and ppc64 builds.
1877 * Configurations/Base.xcconfig:
1879 2008-03-20 Maciej Stachowiak <mjs@apple.com>
1883 * ForwardingHeaders/wtf/ListRefPtr.h: Added.
1885 2008-03-01 Mark Rowe <mrowe@apple.com>
1887 Reviewed by Tim Hatcher.
1889 Update Xcode configuration to support building debug and release from the mysterious future.
1891 * Configurations/Base.xcconfig:
1892 * Configurations/DebugRelease.xcconfig:
1894 2008-02-29 Geoffrey Garen <ggaren@apple.com>
1896 Reviewed by David Harrison.
1898 Fixed <rdar://problem/5765063> TOT REGRESSION: Software Update crash in
1899 KJS::Collector::collect() (missing JSLock)
1901 * JSValueWrapper.cpp:
1902 (unprotectGlobalObject): Added missing JSLock.
1904 2008-02-05 Mark Rowe <mrowe@apple.com>
1906 Reviewed by Oliver Hunt.
1908 Update versioning to support the mysterious future.
1910 * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
1912 2008-01-28 Eric Seidel <eric@webkit.org>
1916 Add icu headers to JSG in preparation for depending on ::UChar.
1918 * Configurations/Base.xcconfig:
1919 * ForwardingHeaders/wtf/unicode: Added.
1920 * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
1921 * ForwardingHeaders/wtf/unicode/icu: Added.
1922 * ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Added.
1923 * icu: Copied from ../JavaScriptCore/icu.
1925 2007-12-19 Geoffrey Garen <ggaren@apple.com>
1929 * ForwardingHeaders/wtf/VectorTraits.h: Added.
1931 2007-12-10 Timothy Hatcher <timothy@apple.com>
1933 Reviewed by Mark Rowe.
1935 <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
1937 * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
1938 so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
1940 2007-12-04 Geoffrey Garen <ggaren@apple.com>
1942 Reviewed by Darin Adler.
1944 Third step in refactoring JSGlobalObject: Moved data members and data
1945 member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
1946 subclass with JSGlobalObject subclass.
1951 (JSRun::CheckSyntax):
1953 (JSGlueGlobalObject::JSGlueGlobalObject):
1955 (KJSValueToCFTypeInternal):
1956 * JSValueWrapper.cpp:
1957 (getThreadGlobalExecState):
1959 2007-12-02 Geoffrey Garen <ggaren@apple.com>
1961 Reviewed by Eric Seidel.
1963 Updated to match the JavaScriptCore change to move virtual methods from
1964 Interpreter to JSGlobalObject.
1968 * JSValueWrapper.cpp:
1969 (getThreadGlobalExecState):
1970 * JavaScriptGlue.cpp:
1971 (JSRunCopyGlobalObject):
1974 2007-11-30 Geoffrey Garen <ggaren@apple.com>
1976 Reviewed by Beth Dakin.
1978 Modified to follow new JSGlobalObject/Interpreter ownership rules
1983 (JSRun::GetInterpreter):
1985 (JSRun::CheckSyntax):
1987 * JSValueWrapper.cpp:
1988 (unprotectGlobalObject):
1989 (initializeGlobalObjectKey):
1990 (getThreadGlobalExecState):
1992 2007-11-29 Mark Rowe <mrowe@apple.com>
1996 Fix REGRESSION(r27885): Installer hits assertion failure in JavaScriptGlue.
1998 * JSValueWrapper.cpp:
1999 (getThreadGlobalExecState): Set the global object on the Interpreter before using it.
2001 2007-11-27 Anders Carlsson <andersca@apple.com>
2006 (KJSValueToCFTypeInternal):
2007 * JSValueWrapper.cpp:
2008 (JSValueWrapper::JSObjectCopyPropertyNames):
2010 2007-11-21 Mark Rowe <mrowe@apple.com>
2014 Fix JavaScriptGlue to build without warnings using GCC 4.2.
2016 * Configurations/Base.xcconfig:
2019 2007-11-17 Mark Rowe <mrowe@apple.com>
2021 Reviewed by Darin Adler.
2023 Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
2024 <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
2025 http://bugs.webkit.org/show_bug.cgi?id=16033
2027 Update for changes in Interpreter method signatures.
2031 2007-11-13 Geoffrey Garen <ggaren@apple.com>
2033 Reviewed by Anders Carlsson.
2035 Renamed Shared to RefCounted.
2037 * ForwardingHeaders/wtf/RefCounted.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/Shared.h.
2038 * ForwardingHeaders/wtf/Shared.h: Removed.
2040 2007-11-13 Geoffrey Garen <ggaren@apple.com>
2042 Reviewed by Sam Weinig.
2044 Moved Shared.h into wtf so it could be used in more places.
2046 * ForwardingHeaders/wtf/Shared.h: Added.
2048 2007-11-08 Mark Rowe <mrowe@apple.com>
2052 * ForwardingHeaders/wtf/MathExtras.h: Copied from WebCore/ForwardingHeaders/wtf/MathExtras.h.
2054 2007-11-05 Geoffrey Garen <ggaren@apple.com>
2058 * ForwardingHeaders/kjs/value.h: Added.
2060 2007-11-03 Sam Weinig <sam@webkit.org>
2064 * UserObjectImp.cpp:
2066 2007-11-03 David D. Kilzer <ddkilzer@webkit.org>
2068 Sort files(...); sections of Xcode project files.
2070 Rubber-stamped by Darin Adler.
2072 * JavaScriptGlue.xcodeproj/project.pbxproj:
2074 2007-10-25 Eric Seidel <eric@webkit.org>
2078 Make JSG build again after JSGlobalObject change.
2082 (JSRun::GlobalObject):
2084 (JSInterpreter::JSInterpreter):
2087 2007-10-11 Mark Rowe <mrowe@apple.com>
2089 Reviewed by Tim Hatcher.
2091 Fix for <rdar://problem/5488678>. Disable debugging symbols in production builds for 10.4
2092 PowerPC to prevent a huge STABS section from being generated.
2094 * Configurations/Base.xcconfig:
2096 2007-10-04 Mark Rowe <mrowe@apple.com>
2100 Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
2101 The "full" level appears to offer no observable benefits even though the documentation
2102 suggests it be used for dead code stripping. This should also decrease link times.
2104 * Configurations/Base.xcconfig:
2106 2007-09-03 Mark Rowe <mrowe@apple.com>
2108 Reviewed by Tim Hatcher.
2110 <rdar://problem/5452164> Production build with in symbols directory has no debug info
2112 Enable debug symbol generation on all build configurations. Production builds are stripped
2113 of symbols by Xcode during deployment post-processing.
2115 * Configurations/Base.xcconfig:
2116 * JavaScriptGlue.xcodeproj/project.pbxproj:
2118 2007-08-09 Mark Rowe <mrowe@apple.com>
2122 <rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +
2124 * Configurations/Version.xcconfig:
2125 * JavaScriptGlue.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between
2126 Version.xcconfig and Info.plist explicit to Xcode.
2128 2007-07-16 Sam Weinig <sam@webkit.org>
2132 Turn off -Wshorten-64-to-32 warning for 64-bit builds.
2134 * Configurations/Base.xcconfig:
2136 2007-04-27 Mark Rowe <mrowe@apple.com>
2140 * JavaScriptGlue.xcodeproj/project.pbxproj: Improve dependencies in Xcode project
2141 by marking JavaScriptGlue as a dependency of testjsglue.
2143 2007-03-24 Mark Rowe <mrowe@apple.com>
2145 Reviewed by Dave Hyatt.
2147 * JavaScriptGlue.xcodeproj/project.pbxproj: Use GCC 4.0 for testjsglue.
2149 2007-03-24 Mark Rowe <mrowe@apple.com>
2151 Rubber-stamped by Darin Adler.
2153 * Configurations/JavaScriptGlue.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS.
2155 2007-03-19 Andrew Wellington <proton@wiretapped.net>
2159 Really set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
2161 * JavaScriptGlue.xcodeproj/project.pbxproj:
2163 2007-03-18 Andrew Wellington <proton@wiretapped.net>
2165 Reviewed by Mark Rowe
2167 Set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
2169 * JavaScriptGlue.xcodeproj/project.pbxproj:
2171 2007-03-17 Timothy Hatcher <timothy@apple.com>
2173 Reviewed by Mark Rowe.
2175 Made Version.xcconfig smarter when building for different configurations.
2176 Now uses the 522+ OpenSource version for Debug and Release, while using the
2177 full 522.4 version for Production builds. The system prefix is also computed
2178 based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.
2180 * Configurations/JavaScriptGlue.xcconfig:
2181 * Configurations/Version.xcconfig:
2183 2007-03-15 Timothy Hatcher <timothy@apple.com>
2187 * Factored out most of our common build settings into .xcconfig files. Anything that was common in
2188 each build configuration was factored out into the shared .xcconfig file.
2189 * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
2190 * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
2191 * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
2193 * Configurations/Base.xcconfig: Added.
2194 * Configurations/DebugRelease.xcconfig: Added.
2195 * Configurations/JavaScriptGlue.xcconfig: Added.
2196 * Configurations/Version.xcconfig: Added.
2198 * JavaScriptGlue.xcodeproj/project.pbxproj:
2200 === Safari-5522.4 ===
2202 2007-03-12 Geoffrey Garen <ggaren@apple.com>
2204 Reviewed by Oliver Hunt.
2206 Updated in light of fix for <rdar://problem/4681051> Installer crashes
2207 in KJS::Collector::markOtherThreadConservatively(KJS::Collector::Thread*)
2208 trying to install iLife 06 using Rosetta on an Intel Machine
2210 * JavaScriptGlue.cpp:
2211 (JSLockInterpreter): Ensure backwards compatibility by calling
2212 registerThread() when explicitly taking the JSLock. (This doesn't happen
2213 automatically anymore.) I doubt this actally matters, but in JavaScriptGlue
2214 territory, that kind of thinking will get you killed.
2216 2007-03-06 Geoffrey Garen <ggaren@apple.com>
2218 Reviewed by Maciej Stachowiak.
2220 Fixed all known crashers exposed by run-webkit-tests --threaded while using
2221 a PAC file (for maximum carnage). See JavaScriptCore ChangeLog for
2225 (JSBase::Release): Lock when deleting, because we may be deleting an object
2226 (like a JSRun) that holds thread-unsafe data.
2229 (CFStringToUString): Don't lock, because our caller locks. Also, locking
2230 inside a function that returns thread-unsafe data by copy will only mask
2233 * JavaScriptGlue.cpp:
2234 (JSRunEvaluate): Added missing JSLock.
2235 (JSRunCheckSyntax): Converted to JSLock.
2236 * JavaScriptGlue.xcodeproj/project.pbxproj:
2238 2007-02-22 Geoffrey Garen <ggaren@apple.com>
2240 Reviewed by Darin Adler.
2242 Fixed <rdar://problem/4942528> Installer.app Stuck "Examining additional
2245 The problem was that JavaScriptGlue held a JSObject in a static pointer
2246 without protecting it from garbage collection.
2248 sUserObjectPrototypeImp = new UserObjectPrototypeImp();
2249 static ProtectedPtr<UserObjectPrototypeImp> protectPrototype; // valiant, brave, but useless
2251 Through an interesting comedy of errors, this object would be collected
2252 and then assigned as the prototype of another object allocated at the
2253 same address, thus becoming its own prototype. (See http://www.ziplo.com/grandpa.htm
2254 for further explanation of this phenomenon.) Hence the infinte loop in
2257 The solution is equally humorous: all of this code was completely useless --
2258 it only served to create an empty object in the prototype chain -- so
2261 * UserObjectImp.cpp:
2262 (UserObjectImp::UserObjectImp):
2265 2007-02-19 Timothy Hatcher <timothy@apple.com>
2269 <rdar://problem/4636301> Deprecate JavaScriptGlue
2271 * JavaScriptGlue.h: adds DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER to everything
2272 * JavaScriptGlue.xcodeproj/project.pbxproj: use -Wno-deprecated-declarations to keep the project building
2273 * config.h: define DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER as empty on other systems
2275 2007-02-16 Darin Adler <darin@apple.com>
2279 - fix <rdar://problem/5000216> JavaScriptGlue framework started turning all CFNumbers
2280 into signed 32bit values
2282 Circumstantial evidence seems to indicate that JavaScriptGlue was depending on a bug
2283 in CFNumber where CFNumberIsFloatType was returning true for 64-bit integer values.
2285 * JSUtils.cpp: (JSObjectKJSValue): Removed the call to CFNumberIsFloatType in the
2286 conversion of numeric values, and always use kCFNumberDoubleType, since double is
2287 the internal format of numbers in JavaScriptCore. There's no value to having a
2288 separate code path for integers. There's also no reason to check the return value
2289 from CFNumberGetValue -- if it returns false it still does the best it can to convert
2290 to a double, which is what we want.
2292 * UserObjectImp.cpp: (UserObjectImp::toString): Removed a similar code path that
2293 tried to handle integers separate from double. Instead, always use a double. For
2294 compatibility, use a format without a decimal point when CFNumberIsFloatType returns
2295 false. Also removed a bogus cast to float; the "%f" format string takes a double,
2296 not a float, so all the cast did was cut down on precision.
2298 2007-01-25 Mark Rowe <mrowe@apple.com>
2302 * Info.plist: Update copyright string.
2304 2006-12-19 Timothy Hatcher <timothy@apple.com>
2306 Reviewed by Darin Adler.
2308 <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features
2310 * JavaScriptGlue.xcodeproj/project.pbxproj:
2312 === Safari-521.26 ===
2314 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
2318 Build fix: DWARF and -gfull are incompatible with symbol separation.
2320 * JavaScriptGlue.xcodeproj/project.pbxproj:
2322 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
2326 http://bugs.webkit.org/show_bug.cgi?id=10394
2327 Bug 10394: WebKit Release and Production configurations should enable dead code stripping
2329 * JavaScriptGlue.xcodeproj/project.pbxproj:
2331 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
2335 http://bugs.webkit.org/show_bug.cgi?id=10384
2336 Bug 10384: Switch to DWARF for Release configuration
2338 * JavaScriptGlue.xcodeproj/project.pbxproj:
2340 2006-08-04 Sam Weinig <sam.weinig@gmail.com>
2342 Reviewed by Darin Adler.
2344 - patch for http://bugs.webkit.org/show_bug.cgi?id=10192
2345 Make WebCore (and friends) compile with -Wshorten-64-to-32
2347 * Adds -Wshorten-64-to-32 flag to Xcode project.
2349 * JavaScriptGlue.xcodeproj/project.pbxproj:
2351 2006-08-03 Sam Weinig <sam.weinig@gmail.com>
2353 Reviewed by Darin Adler.
2355 - patch for http://bugs.webkit.org/show_bug.cgi?id=10176
2356 Make WebCore compile with -Wundef
2358 * Adds -Wundef flag to Xcode project
2360 * JavaScriptGlue.xcodeproj/project.pbxproj:
2362 2006-07-29 Sam Weinig <sam.weinig@gmail.com>
2364 Reviewed by Darin Adler.
2366 - patch for http://bugs.webkit.org/show_bug.cgi?id=10080
2367 Adopt pedantic changes from the Unity project to improve
2368 cross-compiler compatibility
2371 * Turning on gcc warning for missing newline at the end of a source file
2372 (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
2374 * JavaScriptGlue.xcodeproj/project.pbxproj:
2376 === Safari-521.19 ===
2378 2006-07-19 Geoffrey Garen <ggaren@apple.com>
2380 Fixed by Darin & Maciej, reviewed by me.
2382 - Fixed <rdar://problem/4638934> Leopard 9A227: Installer crashes right
2383 after LCA and while preparing Installation
2385 Compile release/production with NDEBUG set, to ensure binary compatibility
2386 between JavaScriptGlue and JavaScriptCore. In debug builds, JavaScriptCore
2387 includes an extra debug data member in HashSet.
2389 * JavaScriptGlue.xcodeproj/project.pbxproj:
2391 === Safari-521.18 ===
2393 2006-07-15 Maciej Stachowiak <mjs@apple.com>
2395 Reviewed by Darin Adler.
2397 - switch property lists to be vector+set of Identifiers instead of list of References
2400 (KJSValueToCFTypeInternal): updated for JSC SPI changes
2401 * JSValueWrapper.cpp:
2402 (JSValueWrapper::JSObjectCopyPropertyNames): ditto
2403 * UserObjectImp.cpp:
2404 (UserObjectImp::getPropertyNames): ditto
2407 === Safari-521.17 ===
2409 2006-07-14 Geoffrey Garen <ggaren@apple.com>
2413 - Updated JSInterpreter to work with Interpreter ref-counting in JavaScriptCore.
2415 (JSInterpreter::JSInterpreter::~JSInterpreter): Now protected to catch
2418 2006-07-12 Anders Carlsson <acarlsson@apple.com>
2423 (KJSValueToCFTypeInternal):
2424 * JSValueWrapper.cpp:
2425 (JSValueWrapper::JSObjectCopyPropertyNames):
2426 * UserObjectImp.cpp:
2427 (UserObjectImp::getPropertyList):
2429 === Safari-521.15 ===
2431 2006-07-07 Geoffrey Garen <ggaren@apple.com>
2436 (KJSValueToCFTypeInternal):
2437 * JSValueWrapper.cpp:
2438 (JSValueWrapper::JSObjectCopyPropertyNames):
2440 2006-07-03 Geoffrey Garen <ggaren@apple.com>
2445 (JSRun::CheckSyntax): Updated to use new checkSyntax syntax in JSC.
2446 * JavaScriptGlue.xcodeproj/project.pbxproj:
2448 === Safari-521.14 ===
2450 2006-06-28 Timothy Hatcher <timothy@apple.com>
2452 Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
2454 * JavaScriptGlue.xcodeproj/project.pbxproj:
2456 2006-06-24 David Kilzer <ddkilzer@kilzer.net>
2458 Reviewed by Timothy.
2460 * Info.plist: Fixed copyright to include 2003-2006.
2462 === JavaScriptGlue-521.13 ===
2464 2006-06-20 Geoffrey Garen <ggaren@apple.com>
2468 - Required for JS API: Rename propList to getPropertyList and have it
2469 take its target property list by reference so that subclasses can
2470 add properties to the list before calling through to their superclasses.
2473 (KJSValueToCFTypeInternal):
2474 * JSValueWrapper.cpp:
2475 (JSValueWrapper::JSObjectCopyPropertyNames):
2476 * UserObjectImp.cpp:
2477 (UserObjectImp::getPropertyList):
2480 2006-06-15 Timothy Hatcher <timothy@apple.com>
2482 Reviewed by Geoff and Darin.
2484 Prefer the DWARF debugging symbols format for use in Xcode 2.3.
2486 * JavaScriptGlue.xcodeproj/project.pbxproj:
2488 2006-06-12 Geoffrey Garen <ggaren@apple.com>
2490 Reviewed by TimO, Maciej.
2492 - JSGlue part of merging InterpreterImp into Interpreter.
2494 Since there's now a kjs forwarding header, I moved all forwarding
2495 headers into a "ForwardingHeaders" directory, like in WebCore.
2497 * ForwardingHeaders: Added.
2498 * ForwardingHeaders/kjs: Added.
2499 * ForwardingHeaders/kjs/ExecState.h: Added.
2500 * ForwardingHeaders/wtf: Added.
2501 * JavaScriptGlue.xcodeproj/project.pbxproj:
2504 * wtf/AlwaysInline.h: Removed.
2505 * wtf/Assertions.h: Removed.
2506 * wtf/FastMalloc.h: Removed.
2507 * wtf/Forward.h: Removed.
2508 * wtf/HashCountedSet.h: Removed.
2509 * wtf/HashSet.h: Removed.
2510 * wtf/Noncopyable.h: Removed.
2511 * wtf/OwnArrayPtr.h: Removed.
2512 * wtf/OwnPtr.h: Removed.
2513 * wtf/PassRefPtr.h: Removed.
2514 * wtf/Platform.h: Removed.
2515 * wtf/RefPtr.h: Removed.
2516 * wtf/Vector.h: Removed.
2518 === JavaScriptGlue-521.10 ===
2520 2006-05-09 Maciej Stachowiak <mjs@apple.com>
2522 Rubber stamped by Anders.
2524 - renamed kxmlcore to wtf
2531 * kxmlcore: Removed.
2532 * kxmlcore/AlwaysInline.h: Removed.
2533 * kxmlcore/Assertions.h: Removed.
2534 * kxmlcore/FastMalloc.h: Removed.
2535 * kxmlcore/Forward.h: Removed.
2536 * kxmlcore/HashCountedSet.h: Removed.
2537 * kxmlcore/HashSet.h: Removed.
2538 * kxmlcore/Noncopyable.h: Removed.
2539 * kxmlcore/OwnArrayPtr.h: Removed.
2540 * kxmlcore/OwnPtr.h: Removed.
2541 * kxmlcore/PassRefPtr.h: Removed.
2542 * kxmlcore/Platform.h: Removed.
2543 * kxmlcore/RefPtr.h: Removed.
2544 * kxmlcore/Vector.h: Removed.
2547 2006-04-11 Darin Adler <darin@apple.com>
2549 - try to fix Windows build
2551 * kxmlcore/HashForward.h: Removed.
2553 2006-04-10 Darin Adler <darin@apple.com>
2555 Rubber-stamped by John Sullivan.
2557 - added forwarding headers for the new Forward.h and HashForward.h files
2559 * kxmlcore/Forward.h: Added.
2560 * kxmlcore/HashForward.h: Added.
2562 2006-04-04 Timothy Hatcher <timothy@apple.com>
2564 Reviewed by Darin Adler.
2566 The Debug and Release frameworks are now built with install paths relative to the build products directory.
2567 This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore.
2569 * JavaScriptGlue.xcodeproj/project.pbxproj:
2571 2006-04-02 Eric Seidel <eseidel@apple.com>
2573 Reviewed by andersca.
2575 Add missing forwarding header.
2577 * kxmlcore/Vector.h: Added.
2579 2006-03-31 Geoffrey Garen <ggaren@apple.com>
2581 Reviewed by Darin Adler.
2583 - Fixed <rdar://problem/4430836> JavaScript patch crashing Quartz
2586 JSValueWrappers used to hold on to the ExecState that pertained at
2587 the time of their creation. Since ExecStates are transient, that
2588 design was totally bogus, and it would crash once the ExecState had
2591 Unfortunately, there's no clean solution to this problem, since
2592 the JSGlue API has no notion of state. The solution here is to use
2593 a shared, global ExecState for the purpose of JSGlue calls. Given
2594 the pre-existing limitations in the JSGlue API, this design
2595 shouldn't actually introduce any new limitations (see comments in
2596 JSValueWrapper.cpp).
2598 I tested with Quartz Composer and PAC files, neither of which are
2602 (KJSValueToJSObject):
2603 * JSValueWrapper.cpp:
2604 (JSValueWrapper::JSValueWrapper):
2605 (JSValueWrapper::GetValue):
2606 (getProcessGlobalExecState):
2607 (JSValueWrapper::JSObjectCopyPropertyNames):
2608 (JSValueWrapper::JSObjectCopyProperty):
2609 (JSValueWrapper::JSObjectSetProperty):
2610 (JSValueWrapper::JSObjectCallFunction):
2611 (JSValueWrapper::JSObjectCopyCFValue):
2614 Also added a test harness file. It was helpful while I was testing,
2615 and may come in handy in the future:
2617 * JavaScriptGlue.xcodeproj/project.pbxproj:
2618 testjsglue.cpp: Added.
2620 2006-03-28 Darin Adler <darin@apple.com>
2624 - added a build step that checks for init routines
2626 * JavaScriptGlue.xcodeproj/project.pbxproj: Added a custom build phase that invokes the
2627 check-for-global-initializers script.
2629 2006-03-02 Maciej Stachowiak <mjs@apple.com>
2631 Not reviewed, but I noticed these trivial extra changes were needed to avoid
2632 breaking the build with my reviewed patch for:
2634 http://bugs.webkit.org/show_bug.cgi?id=7387
2636 Add config.h, includes of it, and Platform.h forwarding header.
2642 * JSValueWrapper.cpp:
2643 * JavaScriptGlue.cpp:
2644 * UserObjectImp.cpp:
2646 * kxmlcore/Platform.h: Added.
2648 === JavaScriptGlue-521.7 ===
2650 2006-02-10 Geoffrey Garen <ggaren@apple.com>
2656 * UserObjectImp.cpp:
2657 (UserObjectImp::toPrimitive):
2660 2006-02-03 Timothy Hatcher <timothy@apple.com>
2664 Renamed configuration names to Debug, Release and Production.
2666 * JavaScriptGlue.xcodeproj/project.pbxproj:
2668 2006-02-01 Darin Adler <darin@apple.com>
2670 - added some forwarding headers to make new JavaScriptCore changes work
2672 * kxmlcore/Assertions.h: Added.
2673 * kxmlcore/Noncopyable.h: Added.
2674 * kxmlcore/OwnPtr.h: Added.
2675 * kxmlcore/OwnArrayPtr.h: Added.
2677 2006-01-16 Timothy Hatcher <timothy@apple.com>
2679 Adding the license header to all files so we can
2680 move JavaScriptGlue into the open source repository.
2683 * JSBase.cpp: license header added.
2685 * JSObject.cpp: ditto.
2686 * JSObject.h: ditto.
2689 * JSUtils.cpp: ditto.
2691 * JSValueWrapper.cpp: ditto.
2692 * JSValueWrapper.h: ditto.
2693 * JavaScriptGlue.cpp: ditto.
2694 * JavaScriptGlue.h: ditto.
2695 * UserObjectImp.cpp: ditto.
2696 * UserObjectImp.h: ditto.
2698 2005-12-21 Timothy Hatcher <timothy@apple.com>
2700 * JavaScriptGlue.xcodeproj/project.pbxproj:
2701 Set tab width to 8, indent width to 4 and uses tabs to false per file.
2703 2005-12-19 Darin Adler <darin@apple.com>
2705 Reviewed by Geoff Garen and Eric Seidel.
2707 - fix http://bugs.webkit.org/show_bug.cgi?id=4923
2708 stop using <ostream> in WebCore, eliminating the <cmath> troubles it causes
2710 * kxmlcore/AlwaysInline.h: Added.
2712 2005-12-15 Darin Adler <darin@apple.com>
2716 * JSRun.cpp: (JSRun::Evaluate): Updated for change to Interpreter::evaluate.
2718 2005-12-15 Darin Adler <darin@apple.com>
2720 Reviewed by Tim Hatcher.
2722 * JavaScriptGlue.xcodeproj/project.pbxproj: Removed some redundant build
2723 settings, turned off prebinding explicitly for our Development and
2724 Deployment builds, remove .exp file from sources. All "clean-up".
2726 === Safari-521~5 ===
2728 2005-12-13 Geoffrey Garen <ggaren@apple.com>
2730 - Fixed build after Anders's last checkin to JavaScriptCore.
2734 * UserObjectImp.cpp:
2735 (UserObjectImp::userObjectGetter): Updated to reflect new argument that
2736 getters take (unused here).
2739 2005-12-13 Maciej Stachowiak <mjs@apple.com>
2743 - added forwarding header for HashCountedSet
2745 * kxmlcore/HashCountedSet.h: Added.
2747 2005-12-10 Darin Adler <darin@apple.com>
2749 Rubber stamped by Maciej.
2751 - updated for KJS class renaming
2753 * many files and functions
2755 2005-12-10 Darin Adler <darin@apple.com>
2759 - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
2761 Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
2765 * UserObjectImp.cpp:
2766 (UserObjectImp::callAsFunction):
2767 (UserObjectImp::toPrimitive):
2769 2005-12-05 Maciej Stachowiak <mjs@apple.com>
2771 - added new forwarding headers
2773 * kxmlcore/PassRefPtr.h: Added.
2774 * kxmlcore/RefPtr.h: Added.
2776 2005-12-05 Maciej Stachowiak <mjs@apple.com>
2778 * kxmlcore/PassRefPtr.h: Added.
2780 2005-11-26 Maciej Stachowiak <mjs@apple.com>
2782 Rubber stamped by Eric.
2784 - renamed InterpreterLock to JSLock
2787 (CFStringToUString):
2789 (KJSValueToCFTypeInternal):
2790 * JSValueWrapper.cpp:
2791 (JSValueWrapper::JSObjectCopyPropertyNames):
2792 (JSValueWrapper::JSObjectCopyProperty):
2793 (JSValueWrapper::JSObjectSetProperty):
2794 (JSValueWrapper::JSObjectCallFunction):
2795 (JSValueWrapper::JSObjectCopyCFValue):
2796 * JavaScriptGlue.cpp:
2799 (JSLockInterpreter):
2800 (JSUnlockInterpreter):
2801 * UserObjectImp.cpp:
2802 (UserObjectImp::callAsFunction):
2804 2005-11-16 Maciej Stachowiak <mjs@apple.com>
2808 Updated to use new API to drop all locks.
2810 * JavaScriptGlue.cpp:
2811 (JSLockInterpreter):
2812 (JSUnlockInterpreter):
2813 * UserObjectImp.cpp:
2814 (UserObjectImp::callAsFunction):
2816 2005-11-14 Geoffrey Garen <ggaren@apple.com>
2820 - Part of the fix for <rdar://problem/4342216> Installer crash in
2821 KJS::ValueImp::marked() when garbage collector runs inside call to
2822 ConstantValues::init()
2824 Added locking in JSRunCreate, since JSRun::JSRun constructs an object.
2826 * JavaScriptGlue.cpp:
2829 2005-11-10 Geoffrey Garen <ggaren@apple.com>
2833 - Fixed <rdar://problem/4334445> installer crashed on my
2834 dual g4 450Mhz after clicking language
2836 - Reversed backwards NULL check.
2837 - Inserted guards against NULL fJSUserObject data member.
2838 - Cleaned up some style.
2841 (KJSValueToCFTypeInternal):
2842 * UserObjectImp.cpp:
2843 (UserObjectImp::~UserObjectImp):
2844 (UserObjectImp::callAsFunction):
2845 (UserObjectImp::userObjectGetter):
2846 (UserObjectImp::getOwnPropertySlot):
2847 (UserObjectImp::put):
2848 (UserObjectImp::mark):
2850 2005-11-04 Timothy Hatcher <timothy@apple.com>
2852 Reviewed by Darin Adler.
2854 * JavaScriptGlue.xcodeproj/project.pbxproj:
2855 Fixed the FRAMEWORK_SEARCH_PATHS to look in the WebKit
2856 Frameworks for the Default config.
2858 2005-11-03 Timothy Hatcher <timothy@apple.com>
2860 Reviewed by Darin and Vicki.
2862 * JavaScriptGlue.xcodeproj/project.pbxproj:
2863 Change to use $(SYSTEM_LIBRARY_DIR) consistently and place
2864 $(NEXT_ROOT) in a few spots to make build-root work.
2866 2005-11-01 Maciej Stachowiak <mjs@apple.com>
2870 <rdar://problem/4324107> get JavaScriptGlue working with TOT JavaScriptCore again
2872 - reverted all this stuff to use ReferenceList instead of IdentifierSequencedSet
2875 (KJSValueToCFTypeInternal):
2876 * JSValueWrapper.cpp:
2877 (JSValueWrapper::JSObjectCopyPropertyNames):
2878 * UserObjectImp.cpp:
2879 (UserObjectImp::propList):
2882 2005-10-11 Timothy Hatcher <timothy@apple.com>
2884 Setup the proper Framework search path for the Default config.
2885 Prepping for a TOT submission and build by B&I.
2887 * JavaScriptGlue.xcodeproj/project.pbxproj:
2889 2005-10-10 Darin Adler <darin@apple.com>
2893 - converted tabs to spaces, NULL to 0, added some (void), got rid of __ prefixes
2894 in headers (reserved for compiler/library)
2905 * JSValueWrapper.cpp:
2907 * JavaScriptGlue.cpp:
2909 * UserObjectImp.cpp:
2912 2005-10-10 Darin Adler <darin@apple.com>
2914 * .cvsignore: Added. Ignore Makefile.in and Makefile.
2916 2005-10-07 Timothy Hatcher <timothy@apple.com>
2920 Build fix, needed to disable RTTI. Upgraded to a native target.
2922 * JavaScriptGlue.xcodeproj/project.pbxproj:
2925 2005-10-05 Maciej Stachowiak <mjs@apple.com>
2927 Reviewed by Eric and Darin.
2929 <rdar://problem/4260506> Port JavaScriptGlue to TOT JavaScriptCore
2933 (JSRun::GlobalObject):
2935 (JSInterpreter::JSInterpreter):
2937 (KJSValueToJSObject):
2939 (KJSValueToCFTypeInternal):
2942 * JSValueWrapper.cpp:
2943 (JSValueWrapper::JSValueWrapper):
2944 (JSValueWrapper::GetValue):
2945 (JSValueWrapper::JSObjectCopyPropertyNames):
2946 (JSValueWrapper::JSObjectCopyProperty):
2947 (JSValueWrapper::JSObjectSetProperty):
2948 (JSValueWrapper::JSObjectCallFunction):
2949 (JSValueWrapper::JSObjectMark):
2951 * JavaScriptGlue.cpp:
2952 (JSRunCopyGlobalObject):
2953 * JavaScriptGlue.xcodeproj/project.pbxproj:
2954 * Makefile.am: Added.
2955 * UserObjectImp.cpp:
2956 (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
2957 (UserObjectImp::UserObjectImp):
2958 (UserObjectImp::callAsFunction):
2959 (UserObjectImp::getPropertyNames):
2960 (UserObjectImp::userObjectGetter):
2961 (UserObjectImp::getOwnPropertySlot):
2962 (UserObjectImp::put):
2963 (UserObjectImp::toPrimitive):
2964 (UserObjectImp::mark):
2966 * kxmlcore/FastMalloc.h: Added.
2967 * kxmlcore/HashSet.h: Added.
2969 2005-09-14 Maciej Stachowiak <mjs@apple.com>
2973 - fixed <rdar://problem/4214783> REGRESSION: kjs_fast_malloc crash due to lack of locking on multiple threads (seen selecting volumes in the installer)
2975 Make sure to lock using the InterpreterLock class in all places that need it
2976 (including anything that uses the collector, the parser, the protect count hash table,
2977 and anything that allocates via fast_malloc).
2980 (CFStringToUString):
2982 (KJSValueToCFTypeInternal):
2984 * JSValueWrapper.cpp:
2985 (JSValueWrapper::JSObjectCopyPropertyNames):
2986 (JSValueWrapper::JSObjectCopyProperty):
2987 (JSValueWrapper::JSObjectSetProperty):
2988 (JSValueWrapper::JSObjectCallFunction):
2989 (JSValueWrapper::JSObjectCopyCFValue):
2990 * JavaScriptGlue.cpp:
2993 2005-09-27 Adele Peterson <adele@apple.com>
2997 <rdar://problem/4223297> JavaScriptGlue: Submit 64-bit compatible versions of your API and SPIs by September 15
2999 * JavaScriptGlue.h: Changed UInt32 to CFTypeID for JSTypeID
3001 2005-09-06 Geoffrey Garen <ggaren@apple.com>
3003 -upgraded project files to XCode 2.1
3005 * JavaScriptGlue.pbproj/project.pbxproj: Removed.
3006 * JavaScriptGlue.xcodeproj/.cvsignore: Added.
3007 * JavaScriptGlue.xcodeproj/project.pbxproj: Added.
3009 2005-09-01 Maciej Stachowiak <mjs@apple.com>
3011 Rubber stamped by hyatt.
3013 - initial import of JavaScriptGlue into our repository
3015 * English.lproj/InfoPlist.strings: Added.
3016 * JSBase.cpp: Added.
3021 (JSBase::RetainCount):
3022 (JSBase::GetTypeID):
3023 (JSBase::CopyDescription):
3026 * JSObject.cpp: Added.
3027 (JSUserObject::JSUserObject):
3028 (JSUserObject::~JSUserObject):
3029 (JSUserObject::CopyPropertyNames):
3030 (JSUserObject::CopyProperty):
3031 (JSUserObject::SetProperty):
3032 (JSUserObject::ImplementsCall):
3033 (JSUserObject::CallFunction):
3034 (JSUserObject::CopyCFValue):
3035 (JSUserObject::Equal):
3036 (JSUserObject::Mark):
3037 (JSUserObject::GetData):
3038 * JSObject.h: Added.
3039 (JSUserObject::DataType):
3045 (JSRun::GlobalObject):
3046 (JSRun::GetInterpreter):
3048 (JSRun::CheckSyntax):
3050 (JSInterpreter::JSInterpreter):
3051 (JSInterpreter::JSInterpreter::~JSInterpreter):
3052 (JSInterpreter::Flags):
3053 * JSUtils.cpp: Added.
3054 (CFStringToUString):
3055 (UStringToCFString):
3056 (CFStringToIdentifier):
3057 (IdentifierToCFString):
3058 (KJSValueToJSObject):
3060 (KJSValueToCFTypeInternal):
3066 * JSValueWrapper.cpp: Added.
3067 (JSValueWrapper::JSValueWrapper):
3068 (JSValueWrapper::~JSValueWrapper):
3069 (JSValueWrapper::GetValue):
3070 (JSValueWrapper::GetExecState):
3071 (JSValueWrapper::GetJSObectCallBacks):
3072 (JSValueWrapper::JSObjectDispose):
3073 (JSValueWrapper::JSObjectCopyPropertyNames):
3074 (JSValueWrapper::JSObjectCopyProperty):
3075 (JSValueWrapper::JSObjectSetProperty):
3076 (JSValueWrapper::JSObjectCallFunction):
3077 (JSValueWrapper::JSObjectCopyCFValue):
3078 (JSValueWrapper::JSObjectMark):
3079 * JSValueWrapper.h: Added.
3080 * JavaScriptGlue.cpp: Added.
3085 (JSCopyDescription):
3090 (JSObjectCreateInternal):
3091 (JSObjectCopyCFValue):
3093 (JSObjectCopyProperty):
3094 (JSObjectSetProperty):
3095 (JSObjectCallFunction):
3098 (JSRunCopyGlobalObject):
3102 (JSTypeGetCFArrayCallBacks):
3105 (JSObjectCreateWithCFType):
3106 (CFJSObjectDispose):
3107 (JSObjectCopyPropertyNames):
3108 (CFJSObjectCopyProperty):
3109 (CFJSObjectSetProperty):
3110 (CFJSObjectCopyCFValue):
3112 (CFJSObjectCopyPropertyNames):
3113 (JSCreateCFArrayFromJSArray):
3114 (JSCreateJSArrayFromCFArray):
3115 (JSLockInterpreter):
3116 (JSUnlockInterpreter):
3117 * JavaScriptGlue.exp: Added.
3118 * JavaScriptGlue.h: Added.
3119 * JavaScriptGlue.pbproj/project.pbxproj: Added.
3120 * UserObjectImp.cpp: Added.
3121 (UserObjectPrototypeImp::UserObjectPrototypeImp):
3122 (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
3123 (UserObjectImp::UserObjectImp):
3124 (UserObjectImp::~UserObjectImp):
3125 (UserObjectImp::classInfo):
3126 (UserObjectImp::implementsCall):
3127 (UserObjectImp::call):
3128 (UserObjectImp::propList):
3129 (UserObjectImp::hasProperty):
3130 (UserObjectImp::get):
3131 (UserObjectImp::put):
3132 (UserObjectImp::GetJSUserObject):
3133 (UserObjectImp::toPrimitive):
3134 (UserObjectImp::toBoolean):
3135 (UserObjectImp::toNumber):
3136 (UserObjectImp::toString):
3137 (UserObjectImp::mark):
3138 * UserObjectImp.h: Added.