1 2009-10-16 Oliver Hunt <oliver@apple.com>
3 Reviewed by Gavin Barraclough.
5 Make typeinfo flags default to false
6 https://bugs.webkit.org/show_bug.cgi?id=30372
8 Last part -- replace HasDefaultGetPropertyNames with OverridesGetPropertyNames
12 (UserObjectImp::createStructure):
14 2009-10-15 Oliver Hunt <oliver@apple.com>
16 Reviewed by Darin Adler.
18 Make typeinfo flags default to false
19 https://bugs.webkit.org/show_bug.cgi?id=30372
21 Part 2 -- Reverse the TypeInfo HasDefaultMark flag to OverridesMarkChildren, etc
24 (UserObjectImp::createStructure):
26 2009-10-14 Oliver Hunt <oliver@apple.com>
28 Reviewed by Geoff Garen.
30 Make typeinfo flags default to false
31 https://bugs.webkit.org/show_bug.cgi?id=30372
33 Part 1. Reverse the HasStandardGetOwnPropertySlot flag.
36 (UserObjectImp::createStructure):
38 2009-09-28 Geoffrey Garen <ggaren@apple.com>
40 Reviewed by Sam Weinig.
42 Removed virtual destructor from JSGlobalObjectData to eliminate pointer
43 fix-ups when accessing JSGlobalObject::d.
45 Replaced with an explicit destructor function pointer.
48 (JSGlueGlobalObject::destroyData):
50 (JSGlueGlobalObject::Data::Data):
52 2009-09-12 Oliver Hunt <oliver@apple.com>
54 Reviewed by Maciej Stachowiak.
56 [ES5] Implement Object.keys
57 https://bugs.webkit.org/show_bug.cgi?id=29170
59 Switch over to getOwnPropertyNames instead of getPropertyNames.
62 (UserObjectImp::getOwnPropertyNames):
65 2009-09-02 Darin Adler <darin@apple.com>
67 Reviewed by Geoff Garen.
70 (JSValueWrapper::JSObjectMark): Removed a check of the mark
71 bit. It's OK to do more work in this case, and there is no
72 longer a public function to access the mark bit.
74 2009-08-14 Darin Adler <darin@apple.com>
76 Reviewed by Sam Weinig.
78 Rename the confusing isObject(<class>) to inherits(<class>).
79 It still works on non-objects, returning false.
83 (KJSValueToCFTypeInternal):
84 Changed from isObject to inherits.
86 2009-08-13 Oliver Hunt <oliver@apple.com>
88 Reviewed by Maciej Stachowiak.
91 https://bugs.webkit.org/show_bug.cgi?id=28294
93 Continue to jump through hoops to deal with the exposed marking routines
97 (JSValueWrapper::JSObjectMark):
99 2009-08-07 Oliver Hunt <oliver@apple.com>
101 Reviewed by Sam Weinig.
103 Stack overflow crash in JavaScript garbage collector mark pass
104 https://bugs.webkit.org/show_bug.cgi?id=12216
106 Make JSGlue interact with the new iterative mark logic.
108 * JSValueWrapper.cpp:
109 (JSValueWrapper::JSObjectMark):
110 Unfortunately JSGlue exposes recursive marking so we can only flatten
111 the recursion. We just create a local mark stack if necessary and mark
112 the given object iteratively from this point.
114 (UserObjectImp::markChildren):
117 2009-08-06 Mark Rowe <mrowe@apple.com>
119 Rubber-stamped by Sam Weinig.
121 Add explicit dependencies for our build verification scripts to ensure that they always run after linking has completed.
123 * JavaScriptGlue.xcodeproj/project.pbxproj:
125 2009-07-27 Alexey Proskuryakov <ap@webkit.org>
127 Reviewed by Darin Adler.
129 https://bugs.webkit.org/show_bug.cgi?id=27735
130 Give a helpful name to JSLock constructor argument
136 (KJSValueToCFTypeInternal):
137 (unprotectGlobalObject):
138 * JSValueWrapper.cpp:
139 (JSValueWrapper::JSObjectCopyPropertyNames):
140 (JSValueWrapper::JSObjectCopyProperty):
141 (JSValueWrapper::JSObjectSetProperty):
142 (JSValueWrapper::JSObjectCallFunction):
143 (JSValueWrapper::JSObjectCopyCFValue):
144 * JavaScriptGlue.cpp:
150 (JSUnlockInterpreter):
152 2009-07-10 Adam Roben <aroben@apple.com>
154 Sort all our Xcode projects
156 Accomplished using sort-Xcode-project-file.
158 Requested by Dave Kilzer.
160 * JavaScriptGlue.xcodeproj/project.pbxproj:
162 2009-07-08 Darin Adler <darin@apple.com>
164 Reviewed by Dan Bernstein
166 - fix <rdar://problem/6971484> REGRESSION (r30534): "Scrolling Credits"
167 effect does not scroll on iMovie 7.1.4 on Tiger
169 In <http://trac.webkit.org/changeset/30534>, the prototype of
170 JSObject::put() which UserObjectImp had been overriding changed, but
171 UserObjectImp wasn't updated, so its override was no longer getting
175 (UserObjectImp::put): Match the current prototype of JSObject::put().
176 The PutPropertySlot argument is unused.
177 * UserObjectImp.h: Ditto.
179 2009-06-19 Zoltan Horvath <hzoltan@inf.u-szeged.hu>
181 Reviewed by Darin Adler.
183 Add FastAllocBase.h to JavaScriptGlue's ForwardingHeaders/wtf, because it's needed by HashCountedSet.h on MAC.
185 * ForwardingHeaders/wtf/FastAllocBase.h: Added.
187 2009-06-02 Mark Rowe <mrowe@apple.com>
189 Reviewed by Anders Carlsson.
191 Remove workaround that was added to address <rdar://problem/5488678> as it no longer affects our Tiger builds.
193 * Configurations/Base.xcconfig:
195 2009-05-25 David Levin <levin@chromium.org>
197 Reviewed by Maciej Stachowiak and Oliver Hunt.
199 https://bugs.webkit.org/show_bug.cgi?id=25126
201 Added forwarding headers.
203 * ForwardingHeaders/wtf/CrossThreadRefCounted.h: Added.
204 * ForwardingHeaders/wtf/OwnFastMallocPtr.h: Added.
206 2009-05-23 David Kilzer <ddkilzer@apple.com>
208 Part 1 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr
210 <https://bugs.webkit.org/show_bug.cgi?id=25495>
212 Reviewed by Oliver Hunt.
214 * ForwardingHeaders/wtf/OwnPtrCommon.h: Added.
215 * ForwardingHeaders/wtf/PassOwnPtr.h: Added.
217 2009-05-14 Mark Rowe <mrowe@apple.com>
219 Rubber-stamped by Darin Adler.
221 <rdar://problem/6681868> When building with Xcode 3.1.3 should be using gcc 4.2
223 The meaning of XCODE_VERSION_ACTUAL is more sensible in newer versions of Xcode.
224 Update our logic to select the compiler version to use the more appropriate XCODE_VERSION_MINOR
225 if the version of Xcode supports it, and fall back to XCODE_VERSION_ACTUAL if not.
227 * Configurations/Base.xcconfig:
229 2009-05-07 Oliver Hunt <oliver@apple.com>
231 Reviewed by Gavin Barraclough.
233 Add calling convention annotation
237 2009-05-01 Geoffrey Garen <ggaren@apple.com>
239 Rubber Stamped by Sam Weinig.
241 Renamed JSValuePtr => JSValue.
244 (nativeCallFunction):
246 (KJSValueToJSObject):
248 (KJSValueToCFTypeInternal):
251 * JSValueWrapper.cpp:
252 (JSValueWrapper::JSValueWrapper):
253 (JSValueWrapper::GetValue):
254 (JSValueWrapper::JSObjectCopyProperty):
255 (JSValueWrapper::JSObjectSetProperty):
256 (JSValueWrapper::JSObjectCallFunction):
259 (UserObjectImp::callAsFunction):
260 (UserObjectImp::userObjectGetter):
261 (UserObjectImp::getOwnPropertySlot):
262 (UserObjectImp::put):
263 (UserObjectImp::toPrimitive):
265 (UserObjectImp::createStructure):
267 2009-04-29 Oliver Hunt <oliver@apple.com>
269 Reviewed by Gavin Barraclough.
271 Clean up ArgList to be a trivial type
273 Start using MarkedArgumentBuffer to create argument lists for function calls
275 * JSValueWrapper.cpp:
276 (JSValueWrapper::JSObjectCallFunction):
278 2009-04-28 Geoffrey Garen <ggaren@apple.com>
280 Rubber stamped by Beth Dakin.
285 (UserObjectImp::callAsFunction):
287 2009-04-21 Geoffrey Garen <ggaren@apple.com>
289 Reviewed by Mark Rowe.
291 Tiger crash fix: Put VM tags in their own header file, and fixed up the
292 #ifdefs so they're not used on Tiger.
294 * ForwardingHeaders/wtf/VMTags.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/HashTraits.h.
296 2009-04-20 Sam Weinig <sam@webkit.org>
298 Rubber-stamped by Tim Hatcher.
300 Add licenses for xcconfig files.
302 * Configurations/Base.xcconfig:
303 * Configurations/DebugRelease.xcconfig:
304 * Configurations/JavaScriptGlue.xcconfig:
305 * Configurations/Version.xcconfig:
307 2009-03-13 Mark Rowe <mrowe@apple.com>
309 Rubber-stamped by Dan Bernstein.
311 Take advantage of the ability of recent versions of Xcode to easily switch the active
314 * Configurations/DebugRelease.xcconfig:
316 2009-02-24 Mark Rowe <mrowe@apple.com>
318 Rubber-stamped by Dan Bernstein.
320 <rdar://problem/6407844> JavaScriptGlue should use -Os rather than -O2
322 * Configurations/Base.xcconfig:
324 2009-01-28 Sam Weinig <sam@webkit.org>
326 Reviewed by Gavin Barraclough.
328 Fix for <rdar://problem/6525537>
329 Hang occurs when closing Installer window (iTunes, Aperture)
332 (getThreadGlobalObject): Use the shared JSGlobalData instance.
334 2009-01-22 Mark Rowe <mrowe@apple.com>
336 Rubber-stamped by Anders Carlsson.
338 Disable GCC_WARN_ABOUT_MISSING_PROTOTYPES temporarily.
340 Current versions of Xcode only respect it for C and Objective-C files,
341 and our code doesn't currently compile if it is applied to C++ and
344 * Configurations/Base.xcconfig:
346 2009-01-19 Sam Weinig <sam@webkit.org>
348 Rubber-stamped by Gavin Barraclough.
350 Remove temporary operator-> from JSValuePtr.
353 (KJSValueToJSObject):
354 (KJSValueToCFTypeInternal):
355 * JSValueWrapper.cpp:
356 (JSValueWrapper::JSObjectCopyPropertyNames):
357 (JSValueWrapper::JSObjectCopyProperty):
358 (JSValueWrapper::JSObjectSetProperty):
359 (JSValueWrapper::JSObjectCallFunction):
360 (JSValueWrapper::JSObjectMark):
362 (UserObjectImp::getOwnPropertySlot):
364 2009-01-14 Dan Bernstein <mitz@apple.com>
366 Reviewed by John Sullivan.
372 2009-01-09 David Levin <levin@chromium.org>
374 Reviewed by Oliver Hunt.
376 https://bugs.webkit.org/show_bug.cgi?id=23175
378 Added forwarding header.
380 * ForwardingHeaders/wtf/PtrAndFlags.h: Added.
382 2009-01-05 Gavin Barraclough <baraclough@apple.com>
384 Rubber Stamped by Oliver Hunt.
386 Replace all uses of JSValue* with new wrapper class, JSValuePtr.
387 See JavaScriptCore/ChangeLog for more detailed description.
390 (nativeCallFunction):
392 (KJSValueToJSObject):
394 (KJSValueToCFTypeInternal):
397 * JSValueWrapper.cpp:
398 (JSValueWrapper::JSValueWrapper):
399 (JSValueWrapper::GetValue):
400 (JSValueWrapper::JSObjectCopyProperty):
401 (JSValueWrapper::JSObjectSetProperty):
402 (JSValueWrapper::JSObjectCallFunction):
405 (UserObjectImp::callAsFunction):
406 (UserObjectImp::userObjectGetter):
407 (UserObjectImp::getOwnPropertySlot):
408 (UserObjectImp::put):
409 (UserObjectImp::toPrimitive):
411 (UserObjectImp::createStructure):
413 2008-12-15 Mark Rowe <mrowe@apple.com>
415 Rubber-stamped by Cameron Zwarich.
417 <rdar://problem/6289933> Change WebKit-related projects to build with GCC 4.2 on Leopard.
419 * Configurations/Base.xcconfig:
420 * Configurations/DebugRelease.xcconfig:
422 2008-12-08 David Kilzer <ddkilzer@apple.com>
424 Bug 22555: Sort "children" sections in Xcode project files
426 <https://bugs.webkit.org/show_bug.cgi?id=22555>
428 Reviewed by Eric Seidel.
430 * JavaScriptGlue.xcodeproj/project.pbxproj: Sorted.
432 2008-11-17 Geoffrey Garen <ggaren@apple.com>
434 Reviewed by Sam Weinig.
436 Updated for JavaScriptCore rename.
438 * ForwardingHeaders/runtime/CallFrame.h: Copied from JavaScriptGlue/ForwardingHeaders/runtime/ExecState.h.
439 * ForwardingHeaders/runtime/ExecState.h: Removed.
442 2008-11-17 Geoffrey Garen <ggaren@apple.com>
444 Reviewed by Sam Weinig.
446 Updated for JavaScriptCore rename.
448 * ForwardingHeaders/interpreter: Added.
449 * ForwardingHeaders/interpreter/CallFrame.h: Copied from ForwardingHeaders/runtime/ExecState.h.
450 * ForwardingHeaders/runtime/ExecState.h: Removed.
452 2008-11-15 Darin Adler <darin@apple.com>
454 Rubber stamped by Geoff Garen.
456 - do the long-planned StructureID -> Structure rename
459 (JSGlueGlobalObject::JSGlueGlobalObject):
462 (JSGlueGlobalObject::userObjectStructure):
464 (getThreadGlobalObject):
466 (UserObjectImp::UserObjectImp):
468 (UserObjectImp::createStructure):
470 2008-11-15 Geoffrey Garen <ggaren@apple.com>
472 Reviewed by Sam Weinig.
474 Updated for JavaScriptCore renames.
478 (JSRun::CheckSyntax):
480 2008-11-05 Cameron Zwarich <zwarich@apple.com>
484 Fix the JavaScriptGlue build. This wouldn't show up unless one was
485 doing a clean build, because changes in JavaScriptCore don't cause
486 anything in JavaScriptGlue to get rebuilt.
490 * JavaScriptGlue.cpp:
492 2008-11-04 Cameron Zwarich <zwarich@apple.com>
494 Reviewed by Mark Rowe.
496 Remove JavaScriptGlue forwarding headers that are no longer necessary,
497 and correct the path of the ExecState.h forwarding header.
499 * ForwardingHeaders/kjs: Removed.
500 * ForwardingHeaders/kjs/CTI.h: Removed.
501 * ForwardingHeaders/kjs/ExecState.h: Removed.
502 * ForwardingHeaders/kjs/JSValue.h: Removed.
503 * ForwardingHeaders/kjs/PutPropertySlot.h: Removed.
504 * ForwardingHeaders/kjs/ustring.h: Removed.
505 * ForwardingHeaders/runtime: Added.
506 * ForwardingHeaders/runtime/ExecState.h: Copied from ForwardingHeaders/kjs/ExecState.h.
509 2008-10-31 Stephanie Lewis <slewis@apple.com>
511 Fix build by including right files.
515 2008-10-30 Mark Rowe <mrowe@apple.com>
517 Reviewed by Jon Homeycutt.
519 Explicitly default to building for only the native architecture in debug and release builds.
521 * Configurations/DebugRelease.xcconfig:
523 2008-10-24 Darin Adler <darin@apple.com>
525 - finish rolling out https://bugs.webkit.org/show_bug.cgi?id=21732
528 (nativeCallFunction):
530 (KJSValueToJSObject):
532 (KJSValueToCFTypeInternal):
535 * JSValueWrapper.cpp:
536 (JSValueWrapper::JSValueWrapper):
537 (JSValueWrapper::GetValue):
538 (JSValueWrapper::JSObjectCopyProperty):
539 (JSValueWrapper::JSObjectSetProperty):
540 (JSValueWrapper::JSObjectCallFunction):
543 (UserObjectImp::callAsFunction):
544 (UserObjectImp::userObjectGetter):
545 (UserObjectImp::getOwnPropertySlot):
546 (UserObjectImp::put):
547 (UserObjectImp::toPrimitive):
549 (UserObjectImp::createStructureID):
550 Use JSValue* instead of JSValuePtr.
552 2008-10-23 Darin Adler <darin@apple.com>
554 - roll out https://bugs.webkit.org/show_bug.cgi?id=21732
556 * JSValueWrapper.cpp:
557 (JSValueWrapper::GetValue): Added missing call to .get().
558 * JSValueWrapper.h: ProtectedPtr<JSValue> instead of ProtectedPtr<JSValuePtr>.
560 2008-10-22 Darin Adler <darin@apple.com>
562 Reviewed by Sam Weinig.
564 - fix https://bugs.webkit.org/show_bug.cgi?id=21294
565 Bug 21294: Devirtualize getOwnPropertySlot()
568 (JSGlueGlobalObject::JSGlueGlobalObject): Moved constructor here.
569 Set up flags in its new location in global object data, and set up
570 a structure for UserObjectImp too.
571 (JSRun::JSRun): Added code to give the JSGlueGlobalObject its own unique
572 structure, rather than using the default one from JSGlobalObject.
574 * JSRun.h: Made JSGlueGlobalObject take a structure ID. Also moved
575 the data into a separate data object. And added userObjectStructure,
576 a Structure to be used by UserObjectImp.
578 * JSUtils.cpp: Removed unused sharedGlobalData global.
579 (JSObjectKJSValue): Pass Structure in when creating UserObjectImp.
580 (unprotectGlobalObject): Use JSGlueGLobalObject type specifically.
581 (initializeGlobalObjectKey): Removed code to set up unused sharedGlobalData.
582 (getThreadGlobalObject): Added. Shared by JSObjectKJSValue and
583 getThreadGlobalExecState. Also now passes in a structure ID when creating
585 (getThreadGlobalExecState): Changed to call getThreadGlobalObject.
588 (UserObjectImp::UserObjectImp): Changed to take a structure.
590 (UserObjectImp::createStructureID): Added. Returns a structure without
591 HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
593 2008-10-20 Sam Weinig <sam@webkit.org>
595 Reviewed by Cameron Zwarich.
597 Fix for https://bugs.webkit.org/show_bug.cgi?id=21766
598 REGRESSION: 12 JSC tests fail
600 The JSGlobalObject constructor no longer takes a JSGlobalData
606 (JSGlueGlobalObject::JSGlueGlobalObject):
608 (getThreadGlobalExecState):
610 2008-10-19 Darin Adler <darin@apple.com>
612 Reviewed by Oliver Hunt.
614 - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
615 improve performance by eliminating JSValue as a base class for JSCell
617 Remove most uses of JSValue, which will be removed in a future patch.
619 * JSValueWrapper.h: Use JSValuePtr instead of JSValue*.
621 2008-10-18 Darin Adler <darin@apple.com>
623 Reviewed by Oliver Hunt.
625 - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
626 improve performance by eliminating JSValue as a base class for JSCell
628 Tweak a little more to get closer to where we can make JSValuePtr a class.
631 (nativeCallFunction): Call asObject.
634 (KJSValueToJSObject): Use JSValuePtr and asObject.
635 (JSObjectKJSValue): Ditto.
636 (KJSValueToCFTypeInternal): Ditto.
637 (KJSValueToCFType): Ditto.
641 (UserObjectImp::callAsFunction): Use JSValuePtr and asObject.
642 (UserObjectImp::userObjectGetter): Ditto.
643 (UserObjectImp::getOwnPropertySlot): Ditto.
644 (UserObjectImp::put): Ditto.
645 (UserObjectImp::toPrimitive): Ditto.
646 * UserObjectImp.h: Ditto.
648 2008-10-18 Darin Adler <darin@apple.com>
650 Reviewed by Cameron Zwarich.
652 - next step on https://bugs.webkit.org/show_bug.cgi?id=21732
653 improve performance by eliminating JSValue as a base class for JSCell
655 Use JSValuePtr everywhere instead of JSValue*. In the future, we'll be
656 changing JSValuePtr to be a class, and then eventually renaming it
657 to JSValue once that's done.
660 * JSValueWrapper.cpp:
663 Replace JSValue* with JSValuePtr.
665 2008-10-13 Maciej Stachowiak <mjs@apple.com>
667 Rubber stamped by Mark Rowe.
669 - use gcc 4.2 when building with Xcode 3.1 or newer on Leopard, even though this is not the default
671 * Configurations/DebugRelease.xcconfig:
673 2008-10-06 Maciej Stachowiak <mjs@apple.com>
675 Not reviewed. Build fix.
677 - revert toBoolean changes (r37333 and r37335); need to make WebCore work with these
680 (KJSValueToCFTypeInternal):
682 2008-10-06 Maciej Stachowiak <mjs@apple.com>
686 - fix build; toBoolean no longer takes an ExecState
689 (KJSValueToCFTypeInternal):
691 2008-10-04 Mark Rowe <mrowe@apple.com>
693 Reviewed by Tim Hatcher.
695 Add a 'Check For Weak VTables' build phase to catch weak vtables as early as possible.
697 * JavaScriptGlue.xcodeproj/project.pbxproj:
699 2008-10-01 Geoffrey Garen <ggaren@apple.com>
701 Reviewed by Darin Adler and Cameron Zwarich.
705 (JSRun::CheckSyntax): Provide a SourceCode to the Interpreter, since
706 other APIs are no longer supported.
708 2008-09-29 Geoffrey Garen <ggaren@apple.com>
712 Forwarding headers to fix the build.
714 * ForwardingHeaders/kjs/CTI.h: Copied from ForwardingHeaders/kjs/ExecState.h.
715 * ForwardingHeaders/kjs/ustring.h: Copied from ForwardingHeaders/kjs/ExecState.h.
716 * ForwardingHeaders/masm: Added.
717 * ForwardingHeaders/masm/X86Assembler.h: Added.
718 * ForwardingHeaders/profiler: Added.
719 * ForwardingHeaders/profiler/Profiler.h: Added.
721 2008-09-08 Sam Weinig <sam@webkit.org>
723 Reviewed by Maciej Stachowiak and Oliver Hunt.
725 Add forwarding headers.
727 * ForwardingHeaders/wtf/HashFunctions.h: Added.
728 * ForwardingHeaders/wtf/HashTraits.h: Added.
730 2008-09-02 Geoffrey Garen <ggaren@apple.com>
732 Reviewed by Sam Weinig.
734 Implemented the rest of Darin's review comments for the 09-01 inline
737 * ForwardingHeaders/kjs/PutPropertySlot.h: Added.
739 2008-09-01 Geoffrey Garen <ggaren@apple.com>
741 Reviewed by Darin Adler.
743 First cut at inline caching for access to vanilla JavaScript properties.
745 Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
746 to JavaScriptGlue classes, and PutPropertySlot& arguments to put functions.
748 2008-08-22 Anders Carlsson <andersca@apple.com>
750 Fix build for real this time.
754 2008-08-22 Anders Carlsson <andersca@apple.com>
759 (UserObjectImp::toPrimitive):
762 2008-08-19 Alexey Proskuryakov <ap@webkit.org>
764 Reviewed by Geoff Garen.
766 Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
772 (KJSValueToCFTypeInternal):
773 (unprotectGlobalObject):
775 * JSValueWrapper.cpp:
776 (JSValueWrapper::JSObjectCopyPropertyNames):
777 (JSValueWrapper::JSObjectCopyProperty):
778 (JSValueWrapper::JSObjectSetProperty):
779 (JSValueWrapper::JSObjectCallFunction):
780 (JSValueWrapper::JSObjectCopyCFValue):
781 * JavaScriptGlue.cpp:
787 (JSUnlockInterpreter):
789 (UserObjectImp::callAsFunction):
791 2008-08-12 Darin Adler <darin@apple.com>
795 - eliminate JSValue::type()
798 (KJSValueToCFTypeInternal): Replaced uses of JSValue::type() with
799 JSValue::is functions.
801 (UserObjectImp::getOwnPropertySlot): Ditto.
802 (UserObjectImp::toPrimitive): Take PreferredPrimitiveType argument
803 instead of JSType argument.
804 * UserObjectImp.h: Ditto.
806 2008-08-17 Geoffrey Garen <ggaren@apple.com>
808 Reviewed by Cameron Zwarich.
810 Updated project files to XCode 3.1.
812 * JavaScriptGlue.xcodeproj/project.pbxproj:
814 2008-08-15 Mark Rowe <mrowe@apple.com>
816 Rubber-stamped by Geoff Garen.
818 <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
820 * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
821 between the Debug configuration and debug Production variant.
822 * JavaScriptGlue.xcodeproj/project.pbxproj: Enable the debug variant.
824 2008-07-31 Alexey Proskuryakov <ap@webkit.org>
826 Rubber-stamped by Maciej.
828 Eliminate JSLock (it was already disabled, removing the stub implementaion and all
835 (KJSValueToCFTypeInternal):
836 (unprotectGlobalObject):
838 * JSValueWrapper.cpp:
839 (JSValueWrapper::JSObjectCopyPropertyNames):
840 (JSValueWrapper::JSObjectCopyProperty):
841 (JSValueWrapper::JSObjectSetProperty):
842 (JSValueWrapper::JSObjectCallFunction):
843 (JSValueWrapper::JSObjectCopyCFValue):
844 * JavaScriptGlue.cpp:
850 (JSUnlockInterpreter):
852 (UserObjectImp::callAsFunction):
854 2008-07-29 Alexey Proskuryakov <ap@webkit.org>
856 Reviewed by Geoff Garen.
858 Implement JSContextGroup APIs to make concurrent execution possible for
859 JavaScriptCore clients.
864 (getThreadGlobalExecState):
865 Changed JavaScriptGlue to use a JSGlobalData of its own, now that there is no shared
868 2008-07-23 Alexey Proskuryakov <ap@webkit.org>
870 Reviewed by Geoff Garen.
872 Make JSClassRef work with any context, not just the first one it was used in.
874 * ForwardingHeaders/wtf/HashMap.h: Added.
876 2008-07-22 Geoffrey Garen <ggaren@apple.com>
878 Reviewed by Oliver Hunt and Sam Weinig.
880 Next step toward putting doubles in registers: Prepare the Register class
881 and its clients for registers that don't contain JSValue*s.
883 2008-07-21 Mark Rowe <mrowe@apple.com>
885 Reviewed by Sam Weinig.
887 <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
889 * Configurations/Version.xcconfig:
892 2008-07-18 Geoffrey Garen <ggaren@apple.com>
894 Reviewed by Cameron Zwarich.
898 "CallTypeNative" => "CallTypeHost"
900 "generatedCode" => "generatedByteCode"
904 (JSUserObject::getCallData):
906 2008-07-14 Alexey Proskuryakov <ap@webkit.org>
908 Reviewed by Geoff Garen.
910 Eliminate per-thread JavaScript global data instance support and make arbitrary
911 global data/global object combinations possible.
913 * ForwardingHeaders/wtf/ThreadSpecific.h: Added.
917 (getThreadGlobalExecState):
918 Adapt to the new way of asking for shared JSGlobalData.
920 2008-07-10 Mark Rowe <mrowe@apple.com>
922 Reviewed by Sam Weinig.
924 Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
926 * Configurations/JavaScriptGlue.xcconfig:
928 2008-07-09 Mark Rowe <mrowe@apple.com>
930 Reviewed by Geoff Garen.
932 Don't warn about deprecated functions in production builds.
934 * Configurations/Base.xcconfig:
935 * Configurations/DebugRelease.xcconfig:
937 2008-07-08 Alexey Proskuryakov <ap@webkit.org>
939 Reviewed by Darin Adler.
941 <rdar://problem/6058368> REGRESSION: Crash occurs in KJS::Machine after launching
944 The problem was that JSUserObject::getCallData() was setting call type to native, but
945 left callData.native.function uninitialized.
948 (JSUserObject::getCallData): Initialize callData.native.function.
949 (nativeCallFunction): Call UserObjectImp::callAsFunction().
951 2008-07-04 Sam Weinig <sam@webkit.org>
953 Rubber-stamped by Dan Bernstein.
955 * JSObject.h: Rename the header guard as it now conflicts with the
956 JSObject in JavaScriptCore.
958 2008-07-01 Alexey Proskuryakov <ap@webkit.org>
960 Reviewed by Darin Adler.
962 Disable JSLock for per-thread contexts.
964 * ForwardingHeaders/wtf/Locker.h: Added.
965 * ForwardingHeaders/wtf/Threading.h: Added.
970 (KJSValueToCFTypeInternal):
971 (unprotectGlobalObject):
973 * JSValueWrapper.cpp:
974 (JSValueWrapper::JSObjectCopyPropertyNames):
975 (JSValueWrapper::JSObjectCopyProperty):
976 (JSValueWrapper::JSObjectSetProperty):
977 (JSValueWrapper::JSObjectCallFunction):
978 (JSValueWrapper::JSObjectCopyCFValue):
979 * JavaScriptGlue.cpp:
985 (JSUnlockInterpreter):
987 (UserObjectImp::callAsFunction):
988 Pass a parameter (always true) to JSLock and JSLock::DropAllLocks to indicate that JSG
989 clients always need implicit mutex protection.
990 Added includes that are now needed.
992 2008-06-26 Darin Adler <darin@apple.com>
996 * JSUtils.cpp: Added include of <JavaScriptCore/JSString.h> since jsString
997 will soon be changed to return a JSString*.
998 * UserObjectImp.cpp: Ditto.
1000 2008-06-23 Darin Adler <darin@apple.com>
1004 * JSValueWrapper.cpp:
1005 (JSValueWrapper::JSObjectCallFunction): Updated to use getCallData and call instead
1006 of the old callAsFunction.
1008 2008-06-17 Alexey Proskuryakov <ap@webkit.org>
1010 Reviewed by Darin Adler.
1012 Prepare JavaScript heap for being per-thread.
1014 * JSRun.cpp: (JSRun::JSRun): Create JSGlueGlobalObject in a shared JS heap.
1016 * JSUtils.h: Made getThreadGlobalExecState available throughout JSGlue.
1019 (JSObjectKJSValue): Pass an ExecState where now required.
1020 (unprotectGlobalObject):
1021 (initializeGlobalObjectKey):
1022 (getThreadGlobalExecState):
1023 Moved these functions from JSValueWrapper.cpp, as the global exec state is now needed
1024 elsewhere. I'm not quite sure how this relates to the global object from JSRun, but
1025 since the new uses are all for Heap access, there doesn't seem to be any behavior change.
1027 * JavaScriptGlue.cpp:
1028 (JSLockInterpreter): Don't call registerThread explicitly, as JSLock will do that.
1030 * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState* where now required.
1032 2008-06-17 Mark Rowe <mrowe@apple.com>
1034 Reviewed by Darin Adler.
1036 <rdar://problem/5775802> JavaScriptGlue should not force use of GCC 4.0.
1038 * JavaScriptGlue.xcodeproj/project.pbxproj:
1040 2008-06-16 Maciej Stachowiak <mjs@apple.com>
1044 - removed nearly unused types.h and LocalStorageEntry.h headers
1048 2008-06-16 Alexey Proskuryakov <ap@webkit.org>
1050 Reviewed by Geoff Garen.
1052 Make Identifier construction use an explicitly passed IdentifierTable.
1055 (CFStringToIdentifier):
1056 (KJSValueToCFTypeInternal):
1058 * JSValueWrapper.cpp:
1059 (JSValueWrapper::JSObjectCopyPropertyNames):
1060 (JSValueWrapper::JSObjectCopyProperty):
1061 (JSValueWrapper::JSObjectSetProperty):
1062 * UserObjectImp.cpp:
1063 (UserObjectImp::getPropertyNames):
1064 Pass ExecState or JSGlobalData everywhere.
1066 2008-06-15 Darin Adler <darin@apple.com>
1068 - rename KJS::List to KJS::ArgList
1070 * JSValueWrapper.cpp:
1071 (JSValueWrapper::JSObjectCallFunction):
1072 * UserObjectImp.cpp:
1073 (UserObjectImp::callAsFunction):
1076 2008-06-15 Darin Adler <darin@apple.com>
1078 - new names for a few key JavaScriptCore files
1080 * ForwardingHeaders/kjs/JSValue.h: Copied from JavaScriptGlue/ForwardingHeaders/kjs/value.h.
1081 * ForwardingHeaders/kjs/value.h: Removed.
1084 2008-06-03 Darin Adler <darin@apple.com>
1086 - update for JavaScriptCore changes for https://bugs.webkit.org/show_bug.cgi?id=19269
1087 speed up SunSpider by eliminating the toObject call for most get/put/delete
1089 * UserObjectImp.cpp:
1090 (UserObjectImp::userObjectGetter): Removed originalObject argument.
1091 * UserObjectImp.h: Ditto.
1093 2008-06-02 Geoffrey Garen <ggaren@apple.com>
1095 Reviewed by Alexey Proskuryakov.
1097 Removed JSObject::call, since it just called JSObject::callAsFunction.
1099 SunSpider reports no change.
1101 2008-05-28 Geoffrey Garen <ggaren@apple.com>
1103 Reviewed by Oliver Hunt.
1105 Fixed total destruction in Software Update.app.
1107 Updated JavaScriptGlue to honor squirrelfish's new getCallData mechanism for
1108 indicating that an object can be called as a function.
1110 2008-05-10 Maciej Stachowiak <mjs@apple.com>
1114 - JavaScriptGlue part of fix for: "SQUIRRELFISH: function toString broken after calling"
1115 https://bugs.webkit.org/show_bug.cgi?id=18869
1118 (JSRun::Evaluate): Use UString version of eveluate() instead of
1119 the now departed UChar*/length variant; use of the lower-level
1120 version was gratuitous in any case.
1121 (JSRun::CheckSyntax): Ditto for checkSyntax().
1123 2008-04-30 Geoffrey Garen <ggaren@apple.com>
1125 Build fix: supply missing parameter that used to be implicit.
1130 2008-03-30 Geoffrey Garen <ggaren@apple.com>
1132 Reviewed by Oliver Hunt.
1136 * ForwardingHeaders/wtf/UnusedParam.h: Copied from ForwardingHeaders/wtf/OwnPtr.h.
1138 2008-05-12 Alexey Proskuryakov <ap@webkit.org>
1140 Roll out recent threading changes (r32807, r32810, r32819, r32822) to simplify
1141 SquirrelFish merging.
1146 * JSValueWrapper.cpp:
1147 (unprotectGlobalObject):
1148 (initializeGlobalObjectKey):
1149 (getThreadGlobalExecState):
1150 * JavaScriptGlue.cpp:
1152 (JSLockInterpreter):
1153 * UserObjectImp.cpp:
1154 (UserObjectImp::toPrimitive):
1156 2008-05-02 Alexey Proskuryakov <ap@webkit.org>
1158 Reviewed by Darin Adler.
1160 Make JavaScriptGlue and JavaScriptCore API functions implicitly call initializeThreading
1161 for the sake of non-WebKit clients.
1163 * JavaScriptGlue.cpp:
1166 (JSCreateJSArrayFromCFArray):
1167 (JSLockInterpreter):
1168 These are all possible JavaScriptGlue entry points.
1170 2008-05-02 Alexey Proskuryakov <ap@webkit.org>
1172 Reviewed by Geoffrey Garen.
1174 https://bugs.webkit.org/show_bug.cgi?id=18826
1175 Make JavaScript heap per-thread
1177 * JSValueWrapper.cpp:
1179 Moved getThreadGlobalExecState() to JSUtils and made it extern, as ExecState is now needed
1180 for all JS allocations.
1183 (JSObjectKJSValue): Pass ExecState to functions that now need it.
1184 (unprotectGlobalObject): Moved from JSValueWrapper.cpp.
1185 (initializeGlobalObjectKey): Ditto.
1186 (getThreadGlobalExecState): Ditto.
1188 * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState to jsString and jsNumber.
1190 * JavaScriptGlue.cpp:
1191 (JSCollect): Use current thread's heap.
1192 (JSLockInterpreter): Removed JSLock::registerThread(), because a JS heap doesn't need to
1193 know about other threads.
1195 2008-04-25 Alexey Proskuryakov <ap@webkit.org>
1197 Reviewed by Darin Adler.
1199 Fix run-webkit-tests --threading
1200 and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661>
1201 Proxy server issue in Sunday's Nightly
1203 * UserObjectImp.cpp: Adjusted for the new member added to ClassInfo.
1205 2008-04-25 Mark Rowe <mrowe@apple.com>
1207 Reviewed by Adele Peterson.
1209 <rdar://problem/5891264> Don't install the JavaScriptGlue headers
1211 * JavaScriptGlue.xcodeproj/project.pbxproj:
1213 2008-04-25 Mark Rowe <mrowe@apple.com>
1215 Rubber-stamped by Sam Weinig.
1217 Add some content to an empty ICU header file to prevent verification errors.
1219 * icu/unicode/utf_old.h:
1221 2008-04-02 Mark Rowe <mrowe@apple.com>
1223 Reviewed by Oliver Hunt.
1225 Ensure that debug symbols are generated for x86_64 and ppc64 builds.
1227 * Configurations/Base.xcconfig:
1229 2008-03-20 Maciej Stachowiak <mjs@apple.com>
1233 * ForwardingHeaders/wtf/ListRefPtr.h: Added.
1235 2008-03-01 Mark Rowe <mrowe@apple.com>
1237 Reviewed by Tim Hatcher.
1239 Update Xcode configuration to support building debug and release from the mysterious future.
1241 * Configurations/Base.xcconfig:
1242 * Configurations/DebugRelease.xcconfig:
1244 2008-02-29 Geoffrey Garen <ggaren@apple.com>
1246 Reviewed by David Harrison.
1248 Fixed <rdar://problem/5765063> TOT REGRESSION: Software Update crash in
1249 KJS::Collector::collect() (missing JSLock)
1251 * JSValueWrapper.cpp:
1252 (unprotectGlobalObject): Added missing JSLock.
1254 2008-02-05 Mark Rowe <mrowe@apple.com>
1256 Reviewed by Oliver Hunt.
1258 Update versioning to support the mysterious future.
1260 * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
1262 2008-01-28 Eric Seidel <eric@webkit.org>
1266 Add icu headers to JSG in preparation for depending on ::UChar.
1268 * Configurations/Base.xcconfig:
1269 * ForwardingHeaders/wtf/unicode: Added.
1270 * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
1271 * ForwardingHeaders/wtf/unicode/icu: Added.
1272 * ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Added.
1273 * icu: Copied from ../JavaScriptCore/icu.
1275 2007-12-19 Geoffrey Garen <ggaren@apple.com>
1279 * ForwardingHeaders/wtf/VectorTraits.h: Added.
1281 2007-12-10 Timothy Hatcher <timothy@apple.com>
1283 Reviewed by Mark Rowe.
1285 <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
1287 * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
1288 so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
1290 2007-12-04 Geoffrey Garen <ggaren@apple.com>
1292 Reviewed by Darin Adler.
1294 Third step in refactoring JSGlobalObject: Moved data members and data
1295 member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
1296 subclass with JSGlobalObject subclass.
1301 (JSRun::CheckSyntax):
1303 (JSGlueGlobalObject::JSGlueGlobalObject):
1305 (KJSValueToCFTypeInternal):
1306 * JSValueWrapper.cpp:
1307 (getThreadGlobalExecState):
1309 2007-12-02 Geoffrey Garen <ggaren@apple.com>
1311 Reviewed by Eric Seidel.
1313 Updated to match the JavaScriptCore change to move virtual methods from
1314 Interpreter to JSGlobalObject.
1318 * JSValueWrapper.cpp:
1319 (getThreadGlobalExecState):
1320 * JavaScriptGlue.cpp:
1321 (JSRunCopyGlobalObject):
1324 2007-11-30 Geoffrey Garen <ggaren@apple.com>
1326 Reviewed by Beth Dakin.
1328 Modified to follow new JSGlobalObject/Interpreter ownership rules
1333 (JSRun::GetInterpreter):
1335 (JSRun::CheckSyntax):
1337 * JSValueWrapper.cpp:
1338 (unprotectGlobalObject):
1339 (initializeGlobalObjectKey):
1340 (getThreadGlobalExecState):
1342 2007-11-29 Mark Rowe <mrowe@apple.com>
1346 Fix REGRESSION(r27885): Installer hits assertion failure in JavaScriptGlue.
1348 * JSValueWrapper.cpp:
1349 (getThreadGlobalExecState): Set the global object on the Interpreter before using it.
1351 2007-11-27 Anders Carlsson <andersca@apple.com>
1356 (KJSValueToCFTypeInternal):
1357 * JSValueWrapper.cpp:
1358 (JSValueWrapper::JSObjectCopyPropertyNames):
1360 2007-11-21 Mark Rowe <mrowe@apple.com>
1364 Fix JavaScriptGlue to build without warnings using GCC 4.2.
1366 * Configurations/Base.xcconfig:
1369 2007-11-17 Mark Rowe <mrowe@apple.com>
1371 Reviewed by Darin Adler.
1373 Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
1374 <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
1375 http://bugs.webkit.org/show_bug.cgi?id=16033
1377 Update for changes in Interpreter method signatures.
1381 2007-11-13 Geoffrey Garen <ggaren@apple.com>
1383 Reviewed by Anders Carlsson.
1385 Renamed Shared to RefCounted.
1387 * ForwardingHeaders/wtf/RefCounted.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/Shared.h.
1388 * ForwardingHeaders/wtf/Shared.h: Removed.
1390 2007-11-13 Geoffrey Garen <ggaren@apple.com>
1392 Reviewed by Sam Weinig.
1394 Moved Shared.h into wtf so it could be used in more places.
1396 * ForwardingHeaders/wtf/Shared.h: Added.
1398 2007-11-08 Mark Rowe <mrowe@apple.com>
1402 * ForwardingHeaders/wtf/MathExtras.h: Copied from WebCore/ForwardingHeaders/wtf/MathExtras.h.
1404 2007-11-05 Geoffrey Garen <ggaren@apple.com>
1408 * ForwardingHeaders/kjs/value.h: Added.
1410 2007-11-03 Sam Weinig <sam@webkit.org>
1414 * UserObjectImp.cpp:
1416 2007-11-03 David D. Kilzer <ddkilzer@webkit.org>
1418 Sort files(...); sections of Xcode project files.
1420 Rubber-stamped by Darin Adler.
1422 * JavaScriptGlue.xcodeproj/project.pbxproj:
1424 2007-10-25 Eric Seidel <eric@webkit.org>
1428 Make JSG build again after JSGlobalObject change.
1432 (JSRun::GlobalObject):
1434 (JSInterpreter::JSInterpreter):
1437 2007-10-11 Mark Rowe <mrowe@apple.com>
1439 Reviewed by Tim Hatcher.
1441 Fix for <rdar://problem/5488678>. Disable debugging symbols in production builds for 10.4
1442 PowerPC to prevent a huge STABS section from being generated.
1444 * Configurations/Base.xcconfig:
1446 2007-10-04 Mark Rowe <mrowe@apple.com>
1450 Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
1451 The "full" level appears to offer no observable benefits even though the documentation
1452 suggests it be used for dead code stripping. This should also decrease link times.
1454 * Configurations/Base.xcconfig:
1456 2007-09-03 Mark Rowe <mrowe@apple.com>
1458 Reviewed by Tim Hatcher.
1460 <rdar://problem/5452164> Production build with in symbols directory has no debug info
1462 Enable debug symbol generation on all build configurations. Production builds are stripped
1463 of symbols by Xcode during deployment post-processing.
1465 * Configurations/Base.xcconfig:
1466 * JavaScriptGlue.xcodeproj/project.pbxproj:
1468 2007-08-09 Mark Rowe <mrowe@apple.com>
1472 <rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +
1474 * Configurations/Version.xcconfig:
1475 * JavaScriptGlue.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between
1476 Version.xcconfig and Info.plist explicit to Xcode.
1478 2007-07-16 Sam Weinig <sam@webkit.org>
1482 Turn off -Wshorten-64-to-32 warning for 64-bit builds.
1484 * Configurations/Base.xcconfig:
1486 2007-04-27 Mark Rowe <mrowe@apple.com>
1490 * JavaScriptGlue.xcodeproj/project.pbxproj: Improve dependencies in Xcode project
1491 by marking JavaScriptGlue as a dependency of testjsglue.
1493 2007-03-24 Mark Rowe <mrowe@apple.com>
1495 Reviewed by Dave Hyatt.
1497 * JavaScriptGlue.xcodeproj/project.pbxproj: Use GCC 4.0 for testjsglue.
1499 2007-03-24 Mark Rowe <mrowe@apple.com>
1501 Rubber-stamped by Darin Adler.
1503 * Configurations/JavaScriptGlue.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS.
1505 2007-03-19 Andrew Wellington <proton@wiretapped.net>
1509 Really set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
1511 * JavaScriptGlue.xcodeproj/project.pbxproj:
1513 2007-03-18 Andrew Wellington <proton@wiretapped.net>
1515 Reviewed by Mark Rowe
1517 Set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
1519 * JavaScriptGlue.xcodeproj/project.pbxproj:
1521 2007-03-17 Timothy Hatcher <timothy@apple.com>
1523 Reviewed by Mark Rowe.
1525 Made Version.xcconfig smarter when building for different configurations.
1526 Now uses the 522+ OpenSource version for Debug and Release, while using the
1527 full 522.4 version for Production builds. The system prefix is also computed
1528 based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.
1530 * Configurations/JavaScriptGlue.xcconfig:
1531 * Configurations/Version.xcconfig:
1533 2007-03-15 Timothy Hatcher <timothy@apple.com>
1537 * Factored out most of our common build settings into .xcconfig files. Anything that was common in
1538 each build configuration was factored out into the shared .xcconfig file.
1539 * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
1540 * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
1541 * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
1543 * Configurations/Base.xcconfig: Added.
1544 * Configurations/DebugRelease.xcconfig: Added.
1545 * Configurations/JavaScriptGlue.xcconfig: Added.
1546 * Configurations/Version.xcconfig: Added.
1548 * JavaScriptGlue.xcodeproj/project.pbxproj:
1550 === Safari-5522.4 ===
1552 2007-03-12 Geoffrey Garen <ggaren@apple.com>
1554 Reviewed by Oliver Hunt.
1556 Updated in light of fix for <rdar://problem/4681051> Installer crashes
1557 in KJS::Collector::markOtherThreadConservatively(KJS::Collector::Thread*)
1558 trying to install iLife 06 using Rosetta on an Intel Machine
1560 * JavaScriptGlue.cpp:
1561 (JSLockInterpreter): Ensure backwards compatibility by calling
1562 registerThread() when explicitly taking the JSLock. (This doesn't happen
1563 automatically anymore.) I doubt this actally matters, but in JavaScriptGlue
1564 territory, that kind of thinking will get you killed.
1566 2007-03-06 Geoffrey Garen <ggaren@apple.com>
1568 Reviewed by Maciej Stachowiak.
1570 Fixed all known crashers exposed by run-webkit-tests --threaded while using
1571 a PAC file (for maximum carnage). See JavaScriptCore ChangeLog for
1575 (JSBase::Release): Lock when deleting, because we may be deleting an object
1576 (like a JSRun) that holds thread-unsafe data.
1579 (CFStringToUString): Don't lock, because our caller locks. Also, locking
1580 inside a function that returns thread-unsafe data by copy will only mask
1583 * JavaScriptGlue.cpp:
1584 (JSRunEvaluate): Added missing JSLock.
1585 (JSRunCheckSyntax): Converted to JSLock.
1586 * JavaScriptGlue.xcodeproj/project.pbxproj:
1588 2007-02-22 Geoffrey Garen <ggaren@apple.com>
1590 Reviewed by Darin Adler.
1592 Fixed <rdar://problem/4942528> Installer.app Stuck "Examining additional
1595 The problem was that JavaScriptGlue held a JSObject in a static pointer
1596 without protecting it from garbage collection.
1598 sUserObjectPrototypeImp = new UserObjectPrototypeImp();
1599 static ProtectedPtr<UserObjectPrototypeImp> protectPrototype; // valiant, brave, but useless
1601 Through an interesting comedy of errors, this object would be collected
1602 and then assigned as the prototype of another object allocated at the
1603 same address, thus becoming its own prototype. (See http://www.ziplo.com/grandpa.htm
1604 for further explanation of this phenomenon.) Hence the infinte loop in
1607 The solution is equally humorous: all of this code was completely useless --
1608 it only served to create an empty object in the prototype chain -- so
1611 * UserObjectImp.cpp:
1612 (UserObjectImp::UserObjectImp):
1615 2007-02-19 Timothy Hatcher <timothy@apple.com>
1619 <rdar://problem/4636301> Deprecate JavaScriptGlue
1621 * JavaScriptGlue.h: adds DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER to everything
1622 * JavaScriptGlue.xcodeproj/project.pbxproj: use -Wno-deprecated-declarations to keep the project building
1623 * config.h: define DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER as empty on other systems
1625 2007-02-16 Darin Adler <darin@apple.com>
1629 - fix <rdar://problem/5000216> JavaScriptGlue framework started turning all CFNumbers
1630 into signed 32bit values
1632 Circumstantial evidence seems to indicate that JavaScriptGlue was depending on a bug
1633 in CFNumber where CFNumberIsFloatType was returning true for 64-bit integer values.
1635 * JSUtils.cpp: (JSObjectKJSValue): Removed the call to CFNumberIsFloatType in the
1636 conversion of numeric values, and always use kCFNumberDoubleType, since double is
1637 the internal format of numbers in JavaScriptCore. There's no value to having a
1638 separate code path for integers. There's also no reason to check the return value
1639 from CFNumberGetValue -- if it returns false it still does the best it can to convert
1640 to a double, which is what we want.
1642 * UserObjectImp.cpp: (UserObjectImp::toString): Removed a similar code path that
1643 tried to handle integers separate from double. Instead, always use a double. For
1644 compatibility, use a format without a decimal point when CFNumberIsFloatType returns
1645 false. Also removed a bogus cast to float; the "%f" format string takes a double,
1646 not a float, so all the cast did was cut down on precision.
1648 2007-01-25 Mark Rowe <mrowe@apple.com>
1652 * Info.plist: Update copyright string.
1654 2006-12-19 Timothy Hatcher <timothy@apple.com>
1656 Reviewed by Darin Adler.
1658 <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features
1660 * JavaScriptGlue.xcodeproj/project.pbxproj:
1662 === Safari-521.26 ===
1664 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
1668 Build fix: DWARF and -gfull are incompatible with symbol separation.
1670 * JavaScriptGlue.xcodeproj/project.pbxproj:
1672 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
1676 http://bugs.webkit.org/show_bug.cgi?id=10394
1677 Bug 10394: WebKit Release and Production configurations should enable dead code stripping
1679 * JavaScriptGlue.xcodeproj/project.pbxproj:
1681 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
1685 http://bugs.webkit.org/show_bug.cgi?id=10384
1686 Bug 10384: Switch to DWARF for Release configuration
1688 * JavaScriptGlue.xcodeproj/project.pbxproj:
1690 2006-08-04 Sam Weinig <sam.weinig@gmail.com>
1692 Reviewed by Darin Adler.
1694 - patch for http://bugs.webkit.org/show_bug.cgi?id=10192
1695 Make WebCore (and friends) compile with -Wshorten-64-to-32
1697 * Adds -Wshorten-64-to-32 flag to Xcode project.
1699 * JavaScriptGlue.xcodeproj/project.pbxproj:
1701 2006-08-03 Sam Weinig <sam.weinig@gmail.com>
1703 Reviewed by Darin Adler.
1705 - patch for http://bugs.webkit.org/show_bug.cgi?id=10176
1706 Make WebCore compile with -Wundef
1708 * Adds -Wundef flag to Xcode project
1710 * JavaScriptGlue.xcodeproj/project.pbxproj:
1712 2006-07-29 Sam Weinig <sam.weinig@gmail.com>
1714 Reviewed by Darin Adler.
1716 - patch for http://bugs.webkit.org/show_bug.cgi?id=10080
1717 Adopt pedantic changes from the Unity project to improve
1718 cross-compiler compatibility
1721 * Turning on gcc warning for missing newline at the end of a source file
1722 (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
1724 * JavaScriptGlue.xcodeproj/project.pbxproj:
1726 === Safari-521.19 ===
1728 2006-07-19 Geoffrey Garen <ggaren@apple.com>
1730 Fixed by Darin & Maciej, reviewed by me.
1732 - Fixed <rdar://problem/4638934> Leopard 9A227: Installer crashes right
1733 after LCA and while preparing Installation
1735 Compile release/production with NDEBUG set, to ensure binary compatibility
1736 between JavaScriptGlue and JavaScriptCore. In debug builds, JavaScriptCore
1737 includes an extra debug data member in HashSet.
1739 * JavaScriptGlue.xcodeproj/project.pbxproj:
1741 === Safari-521.18 ===
1743 2006-07-15 Maciej Stachowiak <mjs@apple.com>
1745 Reviewed by Darin Adler.
1747 - switch property lists to be vector+set of Identifiers instead of list of References
1750 (KJSValueToCFTypeInternal): updated for JSC SPI changes
1751 * JSValueWrapper.cpp:
1752 (JSValueWrapper::JSObjectCopyPropertyNames): ditto
1753 * UserObjectImp.cpp:
1754 (UserObjectImp::getPropertyNames): ditto
1757 === Safari-521.17 ===
1759 2006-07-14 Geoffrey Garen <ggaren@apple.com>
1763 - Updated JSInterpreter to work with Interpreter ref-counting in JavaScriptCore.
1765 (JSInterpreter::JSInterpreter::~JSInterpreter): Now protected to catch
1768 2006-07-12 Anders Carlsson <acarlsson@apple.com>
1773 (KJSValueToCFTypeInternal):
1774 * JSValueWrapper.cpp:
1775 (JSValueWrapper::JSObjectCopyPropertyNames):
1776 * UserObjectImp.cpp:
1777 (UserObjectImp::getPropertyList):
1779 === Safari-521.15 ===
1781 2006-07-07 Geoffrey Garen <ggaren@apple.com>
1786 (KJSValueToCFTypeInternal):
1787 * JSValueWrapper.cpp:
1788 (JSValueWrapper::JSObjectCopyPropertyNames):
1790 2006-07-03 Geoffrey Garen <ggaren@apple.com>
1795 (JSRun::CheckSyntax): Updated to use new checkSyntax syntax in JSC.
1796 * JavaScriptGlue.xcodeproj/project.pbxproj:
1798 === Safari-521.14 ===
1800 2006-06-28 Timothy Hatcher <timothy@apple.com>
1802 Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
1804 * JavaScriptGlue.xcodeproj/project.pbxproj:
1806 2006-06-24 David Kilzer <ddkilzer@kilzer.net>
1808 Reviewed by Timothy.
1810 * Info.plist: Fixed copyright to include 2003-2006.
1812 === JavaScriptGlue-521.13 ===
1814 2006-06-20 Geoffrey Garen <ggaren@apple.com>
1818 - Required for JS API: Rename propList to getPropertyList and have it
1819 take its target property list by reference so that subclasses can
1820 add properties to the list before calling through to their superclasses.
1823 (KJSValueToCFTypeInternal):
1824 * JSValueWrapper.cpp:
1825 (JSValueWrapper::JSObjectCopyPropertyNames):
1826 * UserObjectImp.cpp:
1827 (UserObjectImp::getPropertyList):
1830 2006-06-15 Timothy Hatcher <timothy@apple.com>
1832 Reviewed by Geoff and Darin.
1834 Prefer the DWARF debugging symbols format for use in Xcode 2.3.
1836 * JavaScriptGlue.xcodeproj/project.pbxproj:
1838 2006-06-12 Geoffrey Garen <ggaren@apple.com>
1840 Reviewed by TimO, Maciej.
1842 - JSGlue part of merging InterpreterImp into Interpreter.
1844 Since there's now a kjs forwarding header, I moved all forwarding
1845 headers into a "ForwardingHeaders" directory, like in WebCore.
1847 * ForwardingHeaders: Added.
1848 * ForwardingHeaders/kjs: Added.
1849 * ForwardingHeaders/kjs/ExecState.h: Added.
1850 * ForwardingHeaders/wtf: Added.
1851 * JavaScriptGlue.xcodeproj/project.pbxproj:
1854 * wtf/AlwaysInline.h: Removed.
1855 * wtf/Assertions.h: Removed.
1856 * wtf/FastMalloc.h: Removed.
1857 * wtf/Forward.h: Removed.
1858 * wtf/HashCountedSet.h: Removed.
1859 * wtf/HashSet.h: Removed.
1860 * wtf/Noncopyable.h: Removed.
1861 * wtf/OwnArrayPtr.h: Removed.
1862 * wtf/OwnPtr.h: Removed.
1863 * wtf/PassRefPtr.h: Removed.
1864 * wtf/Platform.h: Removed.
1865 * wtf/RefPtr.h: Removed.
1866 * wtf/Vector.h: Removed.
1868 === JavaScriptGlue-521.10 ===
1870 2006-05-09 Maciej Stachowiak <mjs@apple.com>
1872 Rubber stamped by Anders.
1874 - renamed kxmlcore to wtf
1881 * kxmlcore: Removed.
1882 * kxmlcore/AlwaysInline.h: Removed.
1883 * kxmlcore/Assertions.h: Removed.
1884 * kxmlcore/FastMalloc.h: Removed.
1885 * kxmlcore/Forward.h: Removed.
1886 * kxmlcore/HashCountedSet.h: Removed.
1887 * kxmlcore/HashSet.h: Removed.
1888 * kxmlcore/Noncopyable.h: Removed.
1889 * kxmlcore/OwnArrayPtr.h: Removed.
1890 * kxmlcore/OwnPtr.h: Removed.
1891 * kxmlcore/PassRefPtr.h: Removed.
1892 * kxmlcore/Platform.h: Removed.
1893 * kxmlcore/RefPtr.h: Removed.
1894 * kxmlcore/Vector.h: Removed.
1897 2006-04-11 Darin Adler <darin@apple.com>
1899 - try to fix Windows build
1901 * kxmlcore/HashForward.h: Removed.
1903 2006-04-10 Darin Adler <darin@apple.com>
1905 Rubber-stamped by John Sullivan.
1907 - added forwarding headers for the new Forward.h and HashForward.h files
1909 * kxmlcore/Forward.h: Added.
1910 * kxmlcore/HashForward.h: Added.
1912 2006-04-04 Timothy Hatcher <timothy@apple.com>
1914 Reviewed by Darin Adler.
1916 The Debug and Release frameworks are now built with install paths relative to the build products directory.
1917 This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore.
1919 * JavaScriptGlue.xcodeproj/project.pbxproj:
1921 2006-04-02 Eric Seidel <eseidel@apple.com>
1923 Reviewed by andersca.
1925 Add missing forwarding header.
1927 * kxmlcore/Vector.h: Added.
1929 2006-03-31 Geoffrey Garen <ggaren@apple.com>
1931 Reviewed by Darin Adler.
1933 - Fixed <rdar://problem/4430836> JavaScript patch crashing Quartz
1936 JSValueWrappers used to hold on to the ExecState that pertained at
1937 the time of their creation. Since ExecStates are transient, that
1938 design was totally bogus, and it would crash once the ExecState had
1941 Unfortunately, there's no clean solution to this problem, since
1942 the JSGlue API has no notion of state. The solution here is to use
1943 a shared, global ExecState for the purpose of JSGlue calls. Given
1944 the pre-existing limitations in the JSGlue API, this design
1945 shouldn't actually introduce any new limitations (see comments in
1946 JSValueWrapper.cpp).
1948 I tested with Quartz Composer and PAC files, neither of which are
1952 (KJSValueToJSObject):
1953 * JSValueWrapper.cpp:
1954 (JSValueWrapper::JSValueWrapper):
1955 (JSValueWrapper::GetValue):
1956 (getProcessGlobalExecState):
1957 (JSValueWrapper::JSObjectCopyPropertyNames):
1958 (JSValueWrapper::JSObjectCopyProperty):
1959 (JSValueWrapper::JSObjectSetProperty):
1960 (JSValueWrapper::JSObjectCallFunction):
1961 (JSValueWrapper::JSObjectCopyCFValue):
1964 Also added a test harness file. It was helpful while I was testing,
1965 and may come in handy in the future:
1967 * JavaScriptGlue.xcodeproj/project.pbxproj:
1968 testjsglue.cpp: Added.
1970 2006-03-28 Darin Adler <darin@apple.com>
1974 - added a build step that checks for init routines
1976 * JavaScriptGlue.xcodeproj/project.pbxproj: Added a custom build phase that invokes the
1977 check-for-global-initializers script.
1979 2006-03-02 Maciej Stachowiak <mjs@apple.com>
1981 Not reviewed, but I noticed these trivial extra changes were needed to avoid
1982 breaking the build with my reviewed patch for:
1984 http://bugs.webkit.org/show_bug.cgi?id=7387
1986 Add config.h, includes of it, and Platform.h forwarding header.
1992 * JSValueWrapper.cpp:
1993 * JavaScriptGlue.cpp:
1994 * UserObjectImp.cpp:
1996 * kxmlcore/Platform.h: Added.
1998 === JavaScriptGlue-521.7 ===
2000 2006-02-10 Geoffrey Garen <ggaren@apple.com>
2006 * UserObjectImp.cpp:
2007 (UserObjectImp::toPrimitive):
2010 2006-02-03 Timothy Hatcher <timothy@apple.com>
2014 Renamed configuration names to Debug, Release and Production.
2016 * JavaScriptGlue.xcodeproj/project.pbxproj:
2018 2006-02-01 Darin Adler <darin@apple.com>
2020 - added some forwarding headers to make new JavaScriptCore changes work
2022 * kxmlcore/Assertions.h: Added.
2023 * kxmlcore/Noncopyable.h: Added.
2024 * kxmlcore/OwnPtr.h: Added.
2025 * kxmlcore/OwnArrayPtr.h: Added.
2027 2006-01-16 Timothy Hatcher <timothy@apple.com>
2029 Adding the license header to all files so we can
2030 move JavaScriptGlue into the open source repository.
2033 * JSBase.cpp: license header added.
2035 * JSObject.cpp: ditto.
2036 * JSObject.h: ditto.
2039 * JSUtils.cpp: ditto.
2041 * JSValueWrapper.cpp: ditto.
2042 * JSValueWrapper.h: ditto.
2043 * JavaScriptGlue.cpp: ditto.
2044 * JavaScriptGlue.h: ditto.
2045 * UserObjectImp.cpp: ditto.
2046 * UserObjectImp.h: ditto.
2048 2005-12-21 Timothy Hatcher <timothy@apple.com>
2050 * JavaScriptGlue.xcodeproj/project.pbxproj:
2051 Set tab width to 8, indent width to 4 and uses tabs to false per file.
2053 2005-12-19 Darin Adler <darin@apple.com>
2055 Reviewed by Geoff Garen and Eric Seidel.
2057 - fix http://bugs.webkit.org/show_bug.cgi?id=4923
2058 stop using <ostream> in WebCore, eliminating the <cmath> troubles it causes
2060 * kxmlcore/AlwaysInline.h: Added.
2062 2005-12-15 Darin Adler <darin@apple.com>
2066 * JSRun.cpp: (JSRun::Evaluate): Updated for change to Interpreter::evaluate.
2068 2005-12-15 Darin Adler <darin@apple.com>
2070 Reviewed by Tim Hatcher.
2072 * JavaScriptGlue.xcodeproj/project.pbxproj: Removed some redundant build
2073 settings, turned off prebinding explicitly for our Development and
2074 Deployment builds, remove .exp file from sources. All "clean-up".
2076 === Safari-521~5 ===
2078 2005-12-13 Geoffrey Garen <ggaren@apple.com>
2080 - Fixed build after Anders's last checkin to JavaScriptCore.
2084 * UserObjectImp.cpp:
2085 (UserObjectImp::userObjectGetter): Updated to reflect new argument that
2086 getters take (unused here).
2089 2005-12-13 Maciej Stachowiak <mjs@apple.com>
2093 - added forwarding header for HashCountedSet
2095 * kxmlcore/HashCountedSet.h: Added.
2097 2005-12-10 Darin Adler <darin@apple.com>
2099 Rubber stamped by Maciej.
2101 - updated for KJS class renaming
2103 * many files and functions
2105 2005-12-10 Darin Adler <darin@apple.com>
2109 - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
2111 Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
2115 * UserObjectImp.cpp:
2116 (UserObjectImp::callAsFunction):
2117 (UserObjectImp::toPrimitive):
2119 2005-12-05 Maciej Stachowiak <mjs@apple.com>
2121 - added new forwarding headers
2123 * kxmlcore/PassRefPtr.h: Added.
2124 * kxmlcore/RefPtr.h: Added.
2126 2005-12-05 Maciej Stachowiak <mjs@apple.com>
2128 * kxmlcore/PassRefPtr.h: Added.
2130 2005-11-26 Maciej Stachowiak <mjs@apple.com>
2132 Rubber stamped by Eric.
2134 - renamed InterpreterLock to JSLock
2137 (CFStringToUString):
2139 (KJSValueToCFTypeInternal):
2140 * JSValueWrapper.cpp:
2141 (JSValueWrapper::JSObjectCopyPropertyNames):
2142 (JSValueWrapper::JSObjectCopyProperty):
2143 (JSValueWrapper::JSObjectSetProperty):
2144 (JSValueWrapper::JSObjectCallFunction):
2145 (JSValueWrapper::JSObjectCopyCFValue):
2146 * JavaScriptGlue.cpp:
2149 (JSLockInterpreter):
2150 (JSUnlockInterpreter):
2151 * UserObjectImp.cpp:
2152 (UserObjectImp::callAsFunction):
2154 2005-11-16 Maciej Stachowiak <mjs@apple.com>
2158 Updated to use new API to drop all locks.
2160 * JavaScriptGlue.cpp:
2161 (JSLockInterpreter):
2162 (JSUnlockInterpreter):
2163 * UserObjectImp.cpp:
2164 (UserObjectImp::callAsFunction):
2166 2005-11-14 Geoffrey Garen <ggaren@apple.com>
2170 - Part of the fix for <rdar://problem/4342216> Installer crash in
2171 KJS::ValueImp::marked() when garbage collector runs inside call to
2172 ConstantValues::init()
2174 Added locking in JSRunCreate, since JSRun::JSRun constructs an object.
2176 * JavaScriptGlue.cpp:
2179 2005-11-10 Geoffrey Garen <ggaren@apple.com>
2183 - Fixed <rdar://problem/4334445> installer crashed on my
2184 dual g4 450Mhz after clicking language
2186 - Reversed backwards NULL check.
2187 - Inserted guards against NULL fJSUserObject data member.
2188 - Cleaned up some style.
2191 (KJSValueToCFTypeInternal):
2192 * UserObjectImp.cpp:
2193 (UserObjectImp::~UserObjectImp):
2194 (UserObjectImp::callAsFunction):
2195 (UserObjectImp::userObjectGetter):
2196 (UserObjectImp::getOwnPropertySlot):
2197 (UserObjectImp::put):
2198 (UserObjectImp::mark):
2200 2005-11-04 Timothy Hatcher <timothy@apple.com>
2202 Reviewed by Darin Adler.
2204 * JavaScriptGlue.xcodeproj/project.pbxproj:
2205 Fixed the FRAMEWORK_SEARCH_PATHS to look in the WebKit
2206 Frameworks for the Default config.
2208 2005-11-03 Timothy Hatcher <timothy@apple.com>
2210 Reviewed by Darin and Vicki.
2212 * JavaScriptGlue.xcodeproj/project.pbxproj:
2213 Change to use $(SYSTEM_LIBRARY_DIR) consistently and place
2214 $(NEXT_ROOT) in a few spots to make build-root work.
2216 2005-11-01 Maciej Stachowiak <mjs@apple.com>
2220 <rdar://problem/4324107> get JavaScriptGlue working with TOT JavaScriptCore again
2222 - reverted all this stuff to use ReferenceList instead of IdentifierSequencedSet
2225 (KJSValueToCFTypeInternal):
2226 * JSValueWrapper.cpp:
2227 (JSValueWrapper::JSObjectCopyPropertyNames):
2228 * UserObjectImp.cpp:
2229 (UserObjectImp::propList):
2232 2005-10-11 Timothy Hatcher <timothy@apple.com>
2234 Setup the proper Framework search path for the Default config.
2235 Prepping for a TOT submission and build by B&I.
2237 * JavaScriptGlue.xcodeproj/project.pbxproj:
2239 2005-10-10 Darin Adler <darin@apple.com>
2243 - converted tabs to spaces, NULL to 0, added some (void), got rid of __ prefixes
2244 in headers (reserved for compiler/library)
2255 * JSValueWrapper.cpp:
2257 * JavaScriptGlue.cpp:
2259 * UserObjectImp.cpp:
2262 2005-10-10 Darin Adler <darin@apple.com>
2264 * .cvsignore: Added. Ignore Makefile.in and Makefile.
2266 2005-10-07 Timothy Hatcher <timothy@apple.com>
2270 Build fix, needed to disable RTTI. Upgraded to a native target.
2272 * JavaScriptGlue.xcodeproj/project.pbxproj:
2275 2005-10-05 Maciej Stachowiak <mjs@apple.com>
2277 Reviewed by Eric and Darin.
2279 <rdar://problem/4260506> Port JavaScriptGlue to TOT JavaScriptCore
2283 (JSRun::GlobalObject):
2285 (JSInterpreter::JSInterpreter):
2287 (KJSValueToJSObject):
2289 (KJSValueToCFTypeInternal):
2292 * JSValueWrapper.cpp:
2293 (JSValueWrapper::JSValueWrapper):
2294 (JSValueWrapper::GetValue):
2295 (JSValueWrapper::JSObjectCopyPropertyNames):
2296 (JSValueWrapper::JSObjectCopyProperty):
2297 (JSValueWrapper::JSObjectSetProperty):
2298 (JSValueWrapper::JSObjectCallFunction):
2299 (JSValueWrapper::JSObjectMark):
2301 * JavaScriptGlue.cpp:
2302 (JSRunCopyGlobalObject):
2303 * JavaScriptGlue.xcodeproj/project.pbxproj:
2304 * Makefile.am: Added.
2305 * UserObjectImp.cpp:
2306 (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
2307 (UserObjectImp::UserObjectImp):
2308 (UserObjectImp::callAsFunction):
2309 (UserObjectImp::getPropertyNames):
2310 (UserObjectImp::userObjectGetter):
2311 (UserObjectImp::getOwnPropertySlot):
2312 (UserObjectImp::put):
2313 (UserObjectImp::toPrimitive):
2314 (UserObjectImp::mark):
2316 * kxmlcore/FastMalloc.h: Added.
2317 * kxmlcore/HashSet.h: Added.
2319 2005-09-14 Maciej Stachowiak <mjs@apple.com>
2323 - fixed <rdar://problem/4214783> REGRESSION: kjs_fast_malloc crash due to lack of locking on multiple threads (seen selecting volumes in the installer)
2325 Make sure to lock using the InterpreterLock class in all places that need it
2326 (including anything that uses the collector, the parser, the protect count hash table,
2327 and anything that allocates via fast_malloc).
2330 (CFStringToUString):
2332 (KJSValueToCFTypeInternal):
2334 * JSValueWrapper.cpp:
2335 (JSValueWrapper::JSObjectCopyPropertyNames):
2336 (JSValueWrapper::JSObjectCopyProperty):
2337 (JSValueWrapper::JSObjectSetProperty):
2338 (JSValueWrapper::JSObjectCallFunction):
2339 (JSValueWrapper::JSObjectCopyCFValue):
2340 * JavaScriptGlue.cpp:
2343 2005-09-27 Adele Peterson <adele@apple.com>
2347 <rdar://problem/4223297> JavaScriptGlue: Submit 64-bit compatible versions of your API and SPIs by September 15
2349 * JavaScriptGlue.h: Changed UInt32 to CFTypeID for JSTypeID
2351 2005-09-06 Geoffrey Garen <ggaren@apple.com>
2353 -upgraded project files to XCode 2.1
2355 * JavaScriptGlue.pbproj/project.pbxproj: Removed.
2356 * JavaScriptGlue.xcodeproj/.cvsignore: Added.
2357 * JavaScriptGlue.xcodeproj/project.pbxproj: Added.
2359 2005-09-01 Maciej Stachowiak <mjs@apple.com>
2361 Rubber stamped by hyatt.
2363 - initial import of JavaScriptGlue into our repository
2365 * English.lproj/InfoPlist.strings: Added.
2366 * JSBase.cpp: Added.
2371 (JSBase::RetainCount):
2372 (JSBase::GetTypeID):
2373 (JSBase::CopyDescription):
2376 * JSObject.cpp: Added.
2377 (JSUserObject::JSUserObject):
2378 (JSUserObject::~JSUserObject):
2379 (JSUserObject::CopyPropertyNames):
2380 (JSUserObject::CopyProperty):
2381 (JSUserObject::SetProperty):
2382 (JSUserObject::ImplementsCall):
2383 (JSUserObject::CallFunction):
2384 (JSUserObject::CopyCFValue):
2385 (JSUserObject::Equal):
2386 (JSUserObject::Mark):
2387 (JSUserObject::GetData):
2388 * JSObject.h: Added.
2389 (JSUserObject::DataType):
2395 (JSRun::GlobalObject):
2396 (JSRun::GetInterpreter):
2398 (JSRun::CheckSyntax):
2400 (JSInterpreter::JSInterpreter):
2401 (JSInterpreter::JSInterpreter::~JSInterpreter):
2402 (JSInterpreter::Flags):
2403 * JSUtils.cpp: Added.
2404 (CFStringToUString):
2405 (UStringToCFString):
2406 (CFStringToIdentifier):
2407 (IdentifierToCFString):
2408 (KJSValueToJSObject):
2410 (KJSValueToCFTypeInternal):
2416 * JSValueWrapper.cpp: Added.
2417 (JSValueWrapper::JSValueWrapper):
2418 (JSValueWrapper::~JSValueWrapper):
2419 (JSValueWrapper::GetValue):
2420 (JSValueWrapper::GetExecState):
2421 (JSValueWrapper::GetJSObectCallBacks):
2422 (JSValueWrapper::JSObjectDispose):
2423 (JSValueWrapper::JSObjectCopyPropertyNames):
2424 (JSValueWrapper::JSObjectCopyProperty):
2425 (JSValueWrapper::JSObjectSetProperty):
2426 (JSValueWrapper::JSObjectCallFunction):
2427 (JSValueWrapper::JSObjectCopyCFValue):
2428 (JSValueWrapper::JSObjectMark):
2429 * JSValueWrapper.h: Added.
2430 * JavaScriptGlue.cpp: Added.
2435 (JSCopyDescription):
2440 (JSObjectCreateInternal):
2441 (JSObjectCopyCFValue):
2443 (JSObjectCopyProperty):
2444 (JSObjectSetProperty):
2445 (JSObjectCallFunction):
2448 (JSRunCopyGlobalObject):
2452 (JSTypeGetCFArrayCallBacks):
2455 (JSObjectCreateWithCFType):
2456 (CFJSObjectDispose):
2457 (JSObjectCopyPropertyNames):
2458 (CFJSObjectCopyProperty):
2459 (CFJSObjectSetProperty):
2460 (CFJSObjectCopyCFValue):
2462 (CFJSObjectCopyPropertyNames):
2463 (JSCreateCFArrayFromJSArray):
2464 (JSCreateJSArrayFromCFArray):
2465 (JSLockInterpreter):
2466 (JSUnlockInterpreter):
2467 * JavaScriptGlue.exp: Added.
2468 * JavaScriptGlue.h: Added.
2469 * JavaScriptGlue.pbproj/project.pbxproj: Added.
2470 * UserObjectImp.cpp: Added.
2471 (UserObjectPrototypeImp::UserObjectPrototypeImp):
2472 (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
2473 (UserObjectImp::UserObjectImp):
2474 (UserObjectImp::~UserObjectImp):
2475 (UserObjectImp::classInfo):
2476 (UserObjectImp::implementsCall):
2477 (UserObjectImp::call):
2478 (UserObjectImp::propList):
2479 (UserObjectImp::hasProperty):
2480 (UserObjectImp::get):
2481 (UserObjectImp::put):
2482 (UserObjectImp::GetJSUserObject):
2483 (UserObjectImp::toPrimitive):
2484 (UserObjectImp::toBoolean):
2485 (UserObjectImp::toNumber):
2486 (UserObjectImp::toString):
2487 (UserObjectImp::mark):
2488 * UserObjectImp.h: Added.