• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
12009-02-03  Mark Rowe  <mrowe@apple.com>
2
3        Merge r40345.
4
5    2009-01-28  Sam Weinig  <sam@webkit.org>
6
7        Reviewed by Gavin Barraclough.
8
9        Fix for <rdar://problem/6525537>
10        Hang occurs when closing Installer window (iTunes, Aperture)
11
12        * JSUtils.cpp:
13        (getThreadGlobalObject): Use the shared JSGlobalData instance.
14
152009-01-22  Mark Rowe  <mrowe@apple.com>
16
17        Rubber-stamped by Anders Carlsson.
18
19        Disable GCC_WARN_ABOUT_MISSING_PROTOTYPES temporarily.
20
21        Current versions of Xcode only respect it for C and Objective-C files,
22        and our code doesn't currently compile if it is applied to C++ and
23        Objective-C++ files.
24
25        * Configurations/Base.xcconfig:
26
272009-01-19  Sam Weinig  <sam@webkit.org>
28
29        Rubber-stamped by Gavin Barraclough.
30
31        Remove temporary operator-> from JSValuePtr.
32
33        * JSUtils.cpp:
34        (KJSValueToJSObject):
35        (KJSValueToCFTypeInternal):
36        * JSValueWrapper.cpp:
37        (JSValueWrapper::JSObjectCopyPropertyNames):
38        (JSValueWrapper::JSObjectCopyProperty):
39        (JSValueWrapper::JSObjectSetProperty):
40        (JSValueWrapper::JSObjectCallFunction):
41        (JSValueWrapper::JSObjectMark):
42        * UserObjectImp.cpp:
43        (UserObjectImp::getOwnPropertySlot):
44
452009-01-14  Dan Bernstein  <mitz@apple.com>
46
47        Reviewed by John Sullivan.
48
49        - update copyright
50
51        * Info.plist:
52
532009-01-09  David Levin  <levin@chromium.org>
54
55        Reviewed by Oliver Hunt.
56
57        https://bugs.webkit.org/show_bug.cgi?id=23175
58
59        Added forwarding header.
60
61        * ForwardingHeaders/wtf/PtrAndFlags.h: Added.
62
632009-01-05  Gavin Barraclough  <baraclough@apple.com>
64
65        Rubber Stamped by Oliver Hunt.
66
67        Replace all uses of JSValue* with new wrapper class, JSValuePtr.
68        See JavaScriptCore/ChangeLog for more detailed description.
69
70        * JSObject.cpp:
71        (nativeCallFunction):
72        * JSUtils.cpp:
73        (KJSValueToJSObject):
74        (JSObjectKJSValue):
75        (KJSValueToCFTypeInternal):
76        (KJSValueToCFType):
77        * JSUtils.h:
78        * JSValueWrapper.cpp:
79        (JSValueWrapper::JSValueWrapper):
80        (JSValueWrapper::GetValue):
81        (JSValueWrapper::JSObjectCopyProperty):
82        (JSValueWrapper::JSObjectSetProperty):
83        (JSValueWrapper::JSObjectCallFunction):
84        * JSValueWrapper.h:
85        * UserObjectImp.cpp:
86        (UserObjectImp::callAsFunction):
87        (UserObjectImp::userObjectGetter):
88        (UserObjectImp::getOwnPropertySlot):
89        (UserObjectImp::put):
90        (UserObjectImp::toPrimitive):
91        * UserObjectImp.h:
92        (UserObjectImp::createStructure):
93
942008-12-15  Mark Rowe  <mrowe@apple.com>
95
96        Rubber-stamped by Cameron Zwarich.
97
98        <rdar://problem/6289933> Change WebKit-related projects to build with GCC 4.2 on Leopard.
99
100        * Configurations/Base.xcconfig:
101        * Configurations/DebugRelease.xcconfig:
102
1032008-12-08  David Kilzer  <ddkilzer@apple.com>
104
105        Bug 22555: Sort "children" sections in Xcode project files
106
107        <https://bugs.webkit.org/show_bug.cgi?id=22555>
108
109        Reviewed by Eric Seidel.
110
111        * JavaScriptGlue.xcodeproj/project.pbxproj: Sorted.
112
1132008-11-17  Geoffrey Garen  <ggaren@apple.com>
114
115        Reviewed by Sam Weinig.
116
117        Updated for JavaScriptCore rename.
118
119        * ForwardingHeaders/runtime/CallFrame.h: Copied from JavaScriptGlue/ForwardingHeaders/runtime/ExecState.h.
120        * ForwardingHeaders/runtime/ExecState.h: Removed.
121        * config.h:
122
1232008-11-17  Geoffrey Garen  <ggaren@apple.com>
124
125        Reviewed by Sam Weinig.
126
127        Updated for JavaScriptCore rename.
128
129        * ForwardingHeaders/interpreter: Added.
130        * ForwardingHeaders/interpreter/CallFrame.h: Copied from ForwardingHeaders/runtime/ExecState.h.
131        * ForwardingHeaders/runtime/ExecState.h: Removed.
132
1332008-11-15  Darin Adler  <darin@apple.com>
134
135        Rubber stamped by Geoff Garen.
136
137        - do the long-planned StructureID -> Structure rename
138
139        * JSRun.cpp:
140        (JSGlueGlobalObject::JSGlueGlobalObject):
141        (JSRun::JSRun):
142        * JSRun.h:
143        (JSGlueGlobalObject::userObjectStructure):
144        * JSUtils.cpp:
145        (getThreadGlobalObject):
146        * UserObjectImp.cpp:
147        (UserObjectImp::UserObjectImp):
148        * UserObjectImp.h:
149        (UserObjectImp::createStructure):
150
1512008-11-15  Geoffrey Garen  <ggaren@apple.com>
152
153        Reviewed by Sam Weinig.
154
155        Updated for JavaScriptCore renames.
156
157        * JSRun.cpp:
158        (JSRun::Evaluate):
159        (JSRun::CheckSyntax):
160
1612008-11-05  Cameron Zwarich  <zwarich@apple.com>
162
163        Not reviewed.
164
165        Fix the JavaScriptGlue build. This wouldn't show up unless one was
166        doing a clean build, because changes in JavaScriptCore don't cause
167        anything in JavaScriptGlue to get rebuilt.
168
169        * JSRun.cpp:
170        * JSUtils.h:
171        * JavaScriptGlue.cpp:
172
1732008-11-04  Cameron Zwarich  <zwarich@apple.com>
174
175        Reviewed by Mark Rowe.
176
177        Remove JavaScriptGlue forwarding headers that are no longer necessary,
178        and correct the path of the ExecState.h forwarding header.
179
180        * ForwardingHeaders/kjs: Removed.
181        * ForwardingHeaders/kjs/CTI.h: Removed.
182        * ForwardingHeaders/kjs/ExecState.h: Removed.
183        * ForwardingHeaders/kjs/JSValue.h: Removed.
184        * ForwardingHeaders/kjs/PutPropertySlot.h: Removed.
185        * ForwardingHeaders/kjs/ustring.h: Removed.
186        * ForwardingHeaders/runtime: Added.
187        * ForwardingHeaders/runtime/ExecState.h: Copied from ForwardingHeaders/kjs/ExecState.h.
188        * config.h:
189
1902008-10-31  Stephanie Lewis  <slewis@apple.com>
191
192        Fix build by including right files.
193
194        * JSRun.cpp:
195
1962008-10-30  Mark Rowe  <mrowe@apple.com>
197
198        Reviewed by Jon Homeycutt.
199
200        Explicitly default to building for only the native architecture in debug and release builds.
201
202        * Configurations/DebugRelease.xcconfig:
203
2042008-10-24  Darin Adler  <darin@apple.com>
205
206        - finish rolling out https://bugs.webkit.org/show_bug.cgi?id=21732
207
208        * JSObject.cpp:
209        (nativeCallFunction):
210        * JSUtils.cpp:
211        (KJSValueToJSObject):
212        (JSObjectKJSValue):
213        (KJSValueToCFTypeInternal):
214        (KJSValueToCFType):
215        * JSUtils.h:
216        * JSValueWrapper.cpp:
217        (JSValueWrapper::JSValueWrapper):
218        (JSValueWrapper::GetValue):
219        (JSValueWrapper::JSObjectCopyProperty):
220        (JSValueWrapper::JSObjectSetProperty):
221        (JSValueWrapper::JSObjectCallFunction):
222        * JSValueWrapper.h:
223        * UserObjectImp.cpp:
224        (UserObjectImp::callAsFunction):
225        (UserObjectImp::userObjectGetter):
226        (UserObjectImp::getOwnPropertySlot):
227        (UserObjectImp::put):
228        (UserObjectImp::toPrimitive):
229        * UserObjectImp.h:
230        (UserObjectImp::createStructureID):
231        Use JSValue* instead of JSValuePtr.
232
2332008-10-23  Darin Adler  <darin@apple.com>
234
235        - roll out https://bugs.webkit.org/show_bug.cgi?id=21732
236
237        * JSValueWrapper.cpp:
238        (JSValueWrapper::GetValue): Added missing call to .get().
239        * JSValueWrapper.h: ProtectedPtr<JSValue> instead of ProtectedPtr<JSValuePtr>.
240
2412008-10-22  Darin Adler  <darin@apple.com>
242
243        Reviewed by Sam Weinig.
244
245        - fix https://bugs.webkit.org/show_bug.cgi?id=21294
246          Bug 21294: Devirtualize getOwnPropertySlot()
247
248        * JSRun.cpp:
249        (JSGlueGlobalObject::JSGlueGlobalObject): Moved constructor here.
250        Set up flags in its new location in global object data, and set up
251        a structure for UserObjectImp too.
252        (JSRun::JSRun): Added code to give the JSGlueGlobalObject its own unique
253        structure, rather than using the default one from JSGlobalObject.
254
255        * JSRun.h: Made JSGlueGlobalObject take a structure ID. Also moved
256        the data into a separate data object. And added userObjectStructure,
257        a Structure to be used by UserObjectImp.
258
259        * JSUtils.cpp: Removed unused sharedGlobalData global.
260        (JSObjectKJSValue): Pass Structure in when creating UserObjectImp.
261        (unprotectGlobalObject): Use JSGlueGLobalObject type specifically.
262        (initializeGlobalObjectKey): Removed code to set up unused sharedGlobalData.
263        (getThreadGlobalObject): Added. Shared by JSObjectKJSValue and
264        getThreadGlobalExecState. Also now passes in a structure ID when creating
265        the global object.
266        (getThreadGlobalExecState): Changed to call getThreadGlobalObject.
267
268        * UserObjectImp.cpp:
269        (UserObjectImp::UserObjectImp): Changed to take a structure.
270        * UserObjectImp.h:
271        (UserObjectImp::createStructureID): Added. Returns a structure without
272        HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
273
2742008-10-20  Sam Weinig  <sam@webkit.org>
275
276        Reviewed by Cameron Zwarich.
277
278        Fix for https://bugs.webkit.org/show_bug.cgi?id=21766
279        REGRESSION: 12 JSC tests fail
280
281        The JSGlobalObject constructor no longer takes a JSGlobalData
282        as an argument.
283
284        * JSRun.cpp:
285        (JSRun::JSRun):
286        * JSRun.h:
287        (JSGlueGlobalObject::JSGlueGlobalObject):
288        * JSUtils.cpp:
289        (getThreadGlobalExecState):
290
2912008-10-19  Darin Adler  <darin@apple.com>
292
293        Reviewed by Oliver Hunt.
294
295        - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
296          improve performance by eliminating JSValue as a base class for JSCell
297
298        Remove most uses of JSValue, which will be removed in a future patch.
299
300        * JSValueWrapper.h: Use JSValuePtr instead of JSValue*.
301
3022008-10-18  Darin Adler  <darin@apple.com>
303
304        Reviewed by Oliver Hunt.
305
306        - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
307          improve performance by eliminating JSValue as a base class for JSCell
308
309        Tweak a little more to get closer to where we can make JSValuePtr a class.
310
311        * JSObject.cpp:
312        (nativeCallFunction): Call asObject.
313
314        * JSUtils.cpp:
315        (KJSValueToJSObject): Use JSValuePtr and asObject.
316        (JSObjectKJSValue): Ditto.
317        (KJSValueToCFTypeInternal): Ditto.
318        (KJSValueToCFType): Ditto.
319        * JSUtils.h: Ditto.
320
321        * UserObjectImp.cpp:
322        (UserObjectImp::callAsFunction): Use JSValuePtr and asObject.
323        (UserObjectImp::userObjectGetter): Ditto.
324        (UserObjectImp::getOwnPropertySlot): Ditto.
325        (UserObjectImp::put): Ditto.
326        (UserObjectImp::toPrimitive): Ditto.
327        * UserObjectImp.h: Ditto.
328
3292008-10-18  Darin Adler  <darin@apple.com>
330
331        Reviewed by Cameron Zwarich.
332
333        - next step on https://bugs.webkit.org/show_bug.cgi?id=21732
334          improve performance by eliminating JSValue as a base class for JSCell
335
336        Use JSValuePtr everywhere instead of JSValue*. In the future, we'll be
337        changing JSValuePtr to be a class, and then eventually renaming it
338        to JSValue once that's done.
339
340        * JSObject.cpp:
341        * JSValueWrapper.cpp:
342        * UserObjectImp.cpp:
343        * UserObjectImp.h:
344        Replace JSValue* with JSValuePtr.
345
3462008-10-13  Maciej Stachowiak  <mjs@apple.com>
347
348        Rubber stamped by Mark Rowe.
349
350        - use gcc 4.2 when building with Xcode 3.1 or newer on Leopard, even though this is not the default
351
352        * Configurations/DebugRelease.xcconfig:
353
3542008-10-06  Maciej Stachowiak  <mjs@apple.com>
355
356        Not reviewed. Build fix.
357
358        - revert toBoolean changes (r37333 and r37335); need to make WebCore work with these
359
360        * JSUtils.cpp:
361        (KJSValueToCFTypeInternal):
362
3632008-10-06  Maciej Stachowiak  <mjs@apple.com>
364
365        Not reviewed.
366
367        - fix build; toBoolean no longer takes an ExecState
368
369        * JSUtils.cpp:
370        (KJSValueToCFTypeInternal):
371
3722008-10-04  Mark Rowe  <mrowe@apple.com>
373
374        Reviewed by Tim Hatcher.
375
376        Add a 'Check For Weak VTables' build phase to catch weak vtables as early as possible.
377
378        * JavaScriptGlue.xcodeproj/project.pbxproj:
379
3802008-10-01  Geoffrey Garen  <ggaren@apple.com>
381
382        Reviewed by Darin Adler and Cameron Zwarich.
383
384        * JSRun.cpp:
385        (JSRun::Evaluate):
386        (JSRun::CheckSyntax): Provide a SourceCode to the Interpreter, since
387        other APIs are no longer supported.
388
3892008-09-29  Geoffrey Garen  <ggaren@apple.com>
390
391        Not reviewed.
392
393        Forwarding headers to fix the build.
394
395        * ForwardingHeaders/kjs/CTI.h: Copied from ForwardingHeaders/kjs/ExecState.h.
396        * ForwardingHeaders/kjs/ustring.h: Copied from ForwardingHeaders/kjs/ExecState.h.
397        * ForwardingHeaders/masm: Added.
398        * ForwardingHeaders/masm/X86Assembler.h: Added.
399        * ForwardingHeaders/profiler: Added.
400        * ForwardingHeaders/profiler/Profiler.h: Added.
401
4022008-09-08  Sam Weinig  <sam@webkit.org>
403
404        Reviewed by Maciej Stachowiak and Oliver Hunt.
405
406        Add forwarding headers.
407
408        * ForwardingHeaders/wtf/HashFunctions.h: Added.
409        * ForwardingHeaders/wtf/HashTraits.h: Added.
410
4112008-09-02  Geoffrey Garen  <ggaren@apple.com>
412
413        Reviewed by Sam Weinig.
414
415        Implemented the rest of Darin's review comments for the 09-01 inline
416        caching patch.
417
418        * ForwardingHeaders/kjs/PutPropertySlot.h: Added.
419
4202008-09-01  Geoffrey Garen  <ggaren@apple.com>
421
422        Reviewed by Darin Adler.
423
424        First cut at inline caching for access to vanilla JavaScript properties.
425
426        Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
427        to JavaScriptGlue classes, and PutPropertySlot& arguments to put functions.
428
4292008-08-22  Anders Carlsson  <andersca@apple.com>
430
431        Fix build for real this time.
432
433        * UserObjectImp.h:
434
4352008-08-22  Anders Carlsson  <andersca@apple.com>
436
437        Fix build.
438
439        * UserObjectImp.cpp:
440        (UserObjectImp::toPrimitive):
441        * UserObjectImp.h:
442
4432008-08-19  Alexey Proskuryakov  <ap@webkit.org>
444
445        Reviewed by Geoff Garen.
446
447        Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
448
449        * JSBase.cpp:
450        (JSBase::Release):
451        * JSUtils.cpp:
452        (JSObjectKJSValue):
453        (KJSValueToCFTypeInternal):
454        (unprotectGlobalObject):
455        * JSUtils.h:
456        * JSValueWrapper.cpp:
457        (JSValueWrapper::JSObjectCopyPropertyNames):
458        (JSValueWrapper::JSObjectCopyProperty):
459        (JSValueWrapper::JSObjectSetProperty):
460        (JSValueWrapper::JSObjectCallFunction):
461        (JSValueWrapper::JSObjectCopyCFValue):
462        * JavaScriptGlue.cpp:
463        (JSRunCreate):
464        (JSRunEvaluate):
465        (JSRunCheckSyntax):
466        (JSCollect):
467        (JSLockInterpreter):
468        (JSUnlockInterpreter):
469        * UserObjectImp.cpp:
470        (UserObjectImp::callAsFunction):
471
4722008-08-12  Darin Adler  <darin@apple.com>
473
474        Reviewed by Geoff.
475
476        - eliminate JSValue::type()
477
478        * JSUtils.cpp:
479        (KJSValueToCFTypeInternal): Replaced uses of JSValue::type() with
480        JSValue::is functions.
481        * UserObjectImp.cpp:
482        (UserObjectImp::getOwnPropertySlot): Ditto.
483        (UserObjectImp::toPrimitive): Take PreferredPrimitiveType argument
484        instead of JSType argument.
485        * UserObjectImp.h: Ditto.
486
4872008-08-17  Geoffrey Garen  <ggaren@apple.com>
488
489        Reviewed by Cameron Zwarich.
490
491        Updated project files to XCode 3.1.
492
493        * JavaScriptGlue.xcodeproj/project.pbxproj:
494
4952008-08-15  Mark Rowe  <mrowe@apple.com>
496
497        Rubber-stamped by Geoff Garen.
498
499        <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
500
501        * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
502        between the Debug configuration and debug Production variant.
503        * JavaScriptGlue.xcodeproj/project.pbxproj: Enable the debug variant.
504
5052008-07-31  Alexey Proskuryakov  <ap@webkit.org>
506
507        Rubber-stamped by Maciej.
508
509        Eliminate JSLock (it was already disabled, removing the stub implementaion and all
510        call sites now).
511
512        * JSBase.cpp:
513        (JSBase::Release):
514        * JSUtils.cpp:
515        (JSObjectKJSValue):
516        (KJSValueToCFTypeInternal):
517        (unprotectGlobalObject):
518        * JSUtils.h:
519        * JSValueWrapper.cpp:
520        (JSValueWrapper::JSObjectCopyPropertyNames):
521        (JSValueWrapper::JSObjectCopyProperty):
522        (JSValueWrapper::JSObjectSetProperty):
523        (JSValueWrapper::JSObjectCallFunction):
524        (JSValueWrapper::JSObjectCopyCFValue):
525        * JavaScriptGlue.cpp:
526        (JSRunCreate):
527        (JSRunEvaluate):
528        (JSRunCheckSyntax):
529        (JSCollect):
530        (JSLockInterpreter):
531        (JSUnlockInterpreter):
532        * UserObjectImp.cpp:
533        (UserObjectImp::callAsFunction):
534
5352008-07-29  Alexey Proskuryakov  <ap@webkit.org>
536
537        Reviewed by Geoff Garen.
538
539        Implement JSContextGroup APIs to make concurrent execution possible for
540        JavaScriptCore clients.
541
542        * JSRun.cpp:
543        (JSRun::JSRun):
544        * JSUtils.cpp:
545        (getThreadGlobalExecState):
546        Changed JavaScriptGlue to use a JSGlobalData of its own, now that there is no shared
547        instance.
548
5492008-07-23  Alexey Proskuryakov  <ap@webkit.org>
550
551        Reviewed by Geoff Garen.
552
553        Make JSClassRef work with any context, not just the first one it was used in.
554
555        * ForwardingHeaders/wtf/HashMap.h: Added.
556
5572008-07-22  Geoffrey Garen  <ggaren@apple.com>
558
559        Reviewed by Oliver Hunt and Sam Weinig.
560
561        Next step toward putting doubles in registers: Prepare the Register class
562        and its clients for registers that don't contain JSValue*s.
563
5642008-07-21  Mark Rowe  <mrowe@apple.com>
565
566        Reviewed by Sam Weinig.
567
568        <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
569
570        * Configurations/Version.xcconfig:
571        * Info.plist:
572
5732008-07-18  Geoffrey Garen  <ggaren@apple.com>
574
575        Reviewed by Cameron Zwarich.
576
577        Three renames:
578
579        "CallTypeNative" => "CallTypeHost"
580        "code" => "byteCode"
581        "generatedCode" => "generatedByteCode"
582
583        * ChangeLog:
584        * JSObject.cpp:
585        (JSUserObject::getCallData):
586
5872008-07-14  Alexey Proskuryakov  <ap@webkit.org>
588
589        Reviewed by Geoff Garen.
590
591        Eliminate per-thread JavaScript global data instance support and make arbitrary
592        global data/global object combinations possible.
593
594        * ForwardingHeaders/wtf/ThreadSpecific.h: Added.
595        * JSRun.cpp:
596        (JSRun::JSRun):
597        * JSUtils.cpp:
598        (getThreadGlobalExecState):
599        Adapt to the new way of asking for shared JSGlobalData.
600
6012008-07-10  Mark Rowe  <mrowe@apple.com>
602
603        Reviewed by Sam Weinig.
604
605        Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
606
607        * Configurations/JavaScriptGlue.xcconfig:
608
6092008-07-09  Mark Rowe  <mrowe@apple.com>
610
611        Reviewed by Geoff Garen.
612
613        Don't warn about deprecated functions in production builds.
614
615        * Configurations/Base.xcconfig:
616        * Configurations/DebugRelease.xcconfig:
617
6182008-07-08  Alexey Proskuryakov  <ap@webkit.org>
619
620        Reviewed by Darin Adler.
621
622        <rdar://problem/6058368> REGRESSION: Crash occurs in KJS::Machine after launching
623        Apple Installer
624
625        The problem was that JSUserObject::getCallData() was setting call type to native, but
626        left callData.native.function uninitialized.
627
628        * JSObject.cpp:
629        (JSUserObject::getCallData): Initialize callData.native.function.
630        (nativeCallFunction): Call UserObjectImp::callAsFunction().
631
6322008-07-04  Sam Weinig  <sam@webkit.org>
633
634        Rubber-stamped by Dan Bernstein.
635
636        * JSObject.h: Rename the header guard as it now conflicts with the
637        JSObject in JavaScriptCore.
638
6392008-07-01  Alexey Proskuryakov  <ap@webkit.org>
640
641        Reviewed by Darin Adler.
642
643        Disable JSLock for per-thread contexts.
644
645        * ForwardingHeaders/wtf/Locker.h: Added.
646        * ForwardingHeaders/wtf/Threading.h: Added.
647        * JSBase.cpp:
648        (JSBase::Release):
649        * JSUtils.cpp:
650        (JSObjectKJSValue):
651        (KJSValueToCFTypeInternal):
652        (unprotectGlobalObject):
653        * JSUtils.h:
654        * JSValueWrapper.cpp:
655        (JSValueWrapper::JSObjectCopyPropertyNames):
656        (JSValueWrapper::JSObjectCopyProperty):
657        (JSValueWrapper::JSObjectSetProperty):
658        (JSValueWrapper::JSObjectCallFunction):
659        (JSValueWrapper::JSObjectCopyCFValue):
660        * JavaScriptGlue.cpp:
661        (JSRunCreate):
662        (JSRunEvaluate):
663        (JSRunCheckSyntax):
664        (JSCollect):
665        (JSLockInterpreter):
666        (JSUnlockInterpreter):
667        * UserObjectImp.cpp:
668        (UserObjectImp::callAsFunction):
669        Pass a parameter (always true) to JSLock and JSLock::DropAllLocks to indicate that JSG
670        clients always need implicit mutex protection.
671        Added includes that are now needed.
672
6732008-06-26  Darin Adler  <darin@apple.com>
674
675        Reviewed by Geoff.
676
677        * JSUtils.cpp: Added include of <JavaScriptCore/JSString.h> since jsString
678        will soon be changed to return a JSString*.
679        * UserObjectImp.cpp: Ditto.
680
6812008-06-23  Darin Adler  <darin@apple.com>
682
683        Reviewed by Geoff.
684
685        * JSValueWrapper.cpp:
686        (JSValueWrapper::JSObjectCallFunction): Updated to use getCallData and call instead
687        of the old callAsFunction.
688
6892008-06-17  Alexey Proskuryakov  <ap@webkit.org>
690
691        Reviewed by Darin Adler.
692
693        Prepare JavaScript heap for being per-thread.
694
695        * JSRun.cpp: (JSRun::JSRun): Create JSGlueGlobalObject in a shared JS heap.
696
697        * JSUtils.h: Made getThreadGlobalExecState available throughout JSGlue.
698
699        * JSUtils.cpp:
700        (JSObjectKJSValue): Pass an ExecState where now required.
701        (unprotectGlobalObject):
702        (initializeGlobalObjectKey):
703        (getThreadGlobalExecState):
704        Moved these functions from JSValueWrapper.cpp, as the global exec state is now needed
705        elsewhere. I'm not quite sure how this relates to the global object from JSRun, but
706        since the new uses are all for Heap access, there doesn't seem to be any behavior change.
707
708        * JavaScriptGlue.cpp:
709        (JSLockInterpreter): Don't call registerThread explicitly, as JSLock will do that.
710
711        * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState* where now required.
712
7132008-06-17  Mark Rowe  <mrowe@apple.com>
714
715        Reviewed by Darin Adler.
716
717        <rdar://problem/5775802> JavaScriptGlue should not force use of GCC 4.0.
718
719        * JavaScriptGlue.xcodeproj/project.pbxproj:
720
7212008-06-16  Maciej Stachowiak  <mjs@apple.com>
722
723        Reviewed by Alexey.
724
725        - removed nearly unused types.h and LocalStorageEntry.h headers
726
727        * JSUtils.h:
728
7292008-06-16  Alexey Proskuryakov  <ap@webkit.org>
730
731        Reviewed by Geoff Garen.
732
733        Make Identifier construction use an explicitly passed IdentifierTable.
734
735        * JSUtils.cpp:
736        (CFStringToIdentifier):
737        (KJSValueToCFTypeInternal):
738        * JSUtils.h:
739        * JSValueWrapper.cpp:
740        (JSValueWrapper::JSObjectCopyPropertyNames):
741        (JSValueWrapper::JSObjectCopyProperty):
742        (JSValueWrapper::JSObjectSetProperty):
743        * UserObjectImp.cpp:
744        (UserObjectImp::getPropertyNames):
745        Pass ExecState or JSGlobalData everywhere.
746
7472008-06-15  Darin Adler  <darin@apple.com>
748
749        - rename KJS::List to KJS::ArgList
750
751        * JSValueWrapper.cpp:
752        (JSValueWrapper::JSObjectCallFunction):
753        * UserObjectImp.cpp:
754        (UserObjectImp::callAsFunction):
755        * UserObjectImp.h:
756
7572008-06-15  Darin Adler  <darin@apple.com>
758
759        - new names for a few key JavaScriptCore files
760
761        * ForwardingHeaders/kjs/JSValue.h: Copied from JavaScriptGlue/ForwardingHeaders/kjs/value.h.
762        * ForwardingHeaders/kjs/value.h: Removed.
763        * JSUtils.h:
764
7652008-06-03  Darin Adler  <darin@apple.com>
766
767        - update for JavaScriptCore changes for https://bugs.webkit.org/show_bug.cgi?id=19269
768          speed up SunSpider by eliminating the toObject call for most get/put/delete
769
770        * UserObjectImp.cpp:
771        (UserObjectImp::userObjectGetter): Removed originalObject argument.
772        * UserObjectImp.h: Ditto.
773
7742008-06-02  Geoffrey Garen  <ggaren@apple.com>
775
776        Reviewed by Alexey Proskuryakov.
777
778        Removed JSObject::call, since it just called JSObject::callAsFunction.
779
780        SunSpider reports no change.
781
7822008-05-28  Geoffrey Garen  <ggaren@apple.com>
783
784        Reviewed by Oliver Hunt.
785
786        Fixed total destruction in Software Update.app.
787
788        Updated JavaScriptGlue to honor squirrelfish's new getCallData mechanism for
789        indicating that an object can be called as a function.
790
7912008-05-10  Maciej Stachowiak  <mjs@apple.com>
792
793        Reviewed by Oliver.
794
795        - JavaScriptGlue part of fix for: "SQUIRRELFISH: function toString broken after calling"
796        https://bugs.webkit.org/show_bug.cgi?id=18869
797
798        * JSRun.cpp:
799        (JSRun::Evaluate): Use UString version of eveluate() instead of
800        the now departed UChar*/length variant; use of the lower-level
801        version was gratuitous in any case.
802        (JSRun::CheckSyntax): Ditto for checkSyntax().
803
8042008-04-30  Geoffrey Garen  <ggaren@apple.com>
805
806        Build fix: supply missing parameter that used to be implicit.
807
808        * JSRun.cpp:
809        (JSRun::Evaluate):
810
8112008-03-30  Geoffrey Garen  <ggaren@apple.com>
812
813        Reviewed by Oliver Hunt.
814
815        Build fix.
816
817        * ForwardingHeaders/wtf/UnusedParam.h: Copied from ForwardingHeaders/wtf/OwnPtr.h.
818
8192008-05-12  Alexey Proskuryakov  <ap@webkit.org>
820
821        Roll out recent  threading changes (r32807, r32810, r32819, r32822) to simplify
822        SquirrelFish merging.
823
824        * JSUtils.cpp:
825        (JSObjectKJSValue):
826        * JSUtils.h:
827        * JSValueWrapper.cpp:
828        (unprotectGlobalObject):
829        (initializeGlobalObjectKey):
830        (getThreadGlobalExecState):
831        * JavaScriptGlue.cpp:
832        (JSCollect):
833        (JSLockInterpreter):
834        * UserObjectImp.cpp:
835        (UserObjectImp::toPrimitive):
836
8372008-05-02  Alexey Proskuryakov  <ap@webkit.org>
838
839        Reviewed by Darin Adler.
840
841        Make JavaScriptGlue and JavaScriptCore API functions implicitly call initializeThreading
842        for the sake of non-WebKit clients.
843
844        * JavaScriptGlue.cpp:
845        (JSRunCreate):
846        (JSCollect):
847        (JSCreateJSArrayFromCFArray):
848        (JSLockInterpreter):
849        These are all possible JavaScriptGlue entry points.
850
8512008-05-02  Alexey Proskuryakov  <ap@webkit.org>
852
853        Reviewed by Geoffrey Garen.
854
855        https://bugs.webkit.org/show_bug.cgi?id=18826
856        Make JavaScript heap per-thread
857
858        * JSValueWrapper.cpp:
859        * JSUtils.h:
860        Moved getThreadGlobalExecState() to JSUtils and made it extern, as ExecState is now needed
861        for all JS allocations.
862
863        * JSUtils.cpp:
864        (JSObjectKJSValue): Pass ExecState to functions that now need it.
865        (unprotectGlobalObject): Moved from JSValueWrapper.cpp.
866        (initializeGlobalObjectKey): Ditto.
867        (getThreadGlobalExecState): Ditto.
868
869        * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState to jsString and jsNumber.
870
871        * JavaScriptGlue.cpp:
872        (JSCollect): Use current thread's heap.
873        (JSLockInterpreter): Removed JSLock::registerThread(), because a JS heap doesn't need to
874        know about other threads.
875
8762008-04-25  Alexey Proskuryakov  <ap@webkit.org>
877
878        Reviewed by Darin Adler.
879
880        Fix run-webkit-tests --threading
881        and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661>
882        Proxy server issue in Sunday's Nightly
883
884        * UserObjectImp.cpp: Adjusted for the new member added to ClassInfo.
885
8862008-04-25  Mark Rowe  <mrowe@apple.com>
887
888        Reviewed by Adele Peterson.
889
890        <rdar://problem/5891264> Don't install the JavaScriptGlue headers
891
892        * JavaScriptGlue.xcodeproj/project.pbxproj:
893
8942008-04-25  Mark Rowe  <mrowe@apple.com>
895
896        Rubber-stamped by Sam Weinig.
897
898        Add some content to an empty ICU header file to prevent verification errors.
899
900        * icu/unicode/utf_old.h:
901
9022008-04-02  Mark Rowe  <mrowe@apple.com>
903
904        Reviewed by Oliver Hunt.
905
906        Ensure that debug symbols are generated for x86_64 and ppc64 builds.
907
908        * Configurations/Base.xcconfig:
909
9102008-03-20  Maciej Stachowiak  <mjs@apple.com>
911
912        - fix build
913
914        * ForwardingHeaders/wtf/ListRefPtr.h: Added.
915
9162008-03-01  Mark Rowe  <mrowe@apple.com>
917
918        Reviewed by Tim Hatcher.
919
920        Update Xcode configuration to support building debug and release from the mysterious future.
921
922        * Configurations/Base.xcconfig:
923        * Configurations/DebugRelease.xcconfig:
924
9252008-02-29  Geoffrey Garen  <ggaren@apple.com>
926
927        Reviewed by David Harrison.
928
929        Fixed <rdar://problem/5765063> TOT REGRESSION: Software Update crash in
930        KJS::Collector::collect() (missing JSLock)
931
932        * JSValueWrapper.cpp:
933        (unprotectGlobalObject): Added missing JSLock.
934
9352008-02-05  Mark Rowe  <mrowe@apple.com>
936
937        Reviewed by Oliver Hunt.
938
939        Update versioning to support the mysterious future.
940
941        * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
942
9432008-01-28  Eric Seidel  <eric@webkit.org>
944
945        Reviewed by darin.
946
947        Add icu headers to JSG in preparation for depending on ::UChar.
948
949        * Configurations/Base.xcconfig:
950        * ForwardingHeaders/wtf/unicode: Added.
951        * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
952        * ForwardingHeaders/wtf/unicode/icu: Added.
953        * ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Added.
954        * icu: Copied from ../JavaScriptCore/icu.
955
9562007-12-19  Geoffrey Garen  <ggaren@apple.com>
957
958        Build fix.
959
960        * ForwardingHeaders/wtf/VectorTraits.h: Added.
961
9622007-12-10  Timothy Hatcher  <timothy@apple.com>
963
964        Reviewed by Mark Rowe.
965
966        <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
967
968        * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
969          so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
970
9712007-12-04  Geoffrey Garen  <ggaren@apple.com>
972
973        Reviewed by Darin Adler.
974
975        Third step in refactoring JSGlobalObject: Moved data members and data
976        member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
977        subclass with JSGlobalObject subclass.
978
979        * JSRun.cpp:
980        (JSRun::JSRun):
981        (JSRun::Evaluate):
982        (JSRun::CheckSyntax):
983        * JSRun.h:
984        (JSGlueGlobalObject::JSGlueGlobalObject):
985        * JSUtils.cpp:
986        (KJSValueToCFTypeInternal):
987        * JSValueWrapper.cpp:
988        (getThreadGlobalExecState):
989
9902007-12-02  Geoffrey Garen  <ggaren@apple.com>
991
992        Reviewed by Eric Seidel.
993
994        Updated to match the JavaScriptCore change to move virtual methods from
995        Interpreter to JSGlobalObject.
996
997        * JSRun.cpp:
998        * JSRun.h:
999        * JSValueWrapper.cpp:
1000        (getThreadGlobalExecState):
1001        * JavaScriptGlue.cpp:
1002        (JSRunCopyGlobalObject):
1003        (JSRunEvaluate):
1004
10052007-11-30  Geoffrey Garen  <ggaren@apple.com>
1006
1007        Reviewed by Beth Dakin.
1008
1009        Modified to follow new JSGlobalObject/Interpreter ownership rules
1010        in JavaScriptCore.
1011
1012        * JSRun.cpp:
1013        (JSRun::JSRun):
1014        (JSRun::GetInterpreter):
1015        (JSRun::Evaluate):
1016        (JSRun::CheckSyntax):
1017        * JSRun.h:
1018        * JSValueWrapper.cpp:
1019        (unprotectGlobalObject):
1020        (initializeGlobalObjectKey):
1021        (getThreadGlobalExecState):
1022
10232007-11-29  Mark Rowe  <mrowe@apple.com>
1024
1025        Reviewed by Maciej.
1026
1027        Fix REGRESSION(r27885): Installer hits assertion failure in JavaScriptGlue.
1028
1029        * JSValueWrapper.cpp:
1030        (getThreadGlobalExecState): Set the global object on the Interpreter before using it.
1031
10322007-11-27  Anders Carlsson  <andersca@apple.com>
1033
1034        Build fix.
1035
1036        * JSUtils.cpp:
1037        (KJSValueToCFTypeInternal):
1038        * JSValueWrapper.cpp:
1039        (JSValueWrapper::JSObjectCopyPropertyNames):
1040
10412007-11-21  Mark Rowe  <mrowe@apple.com>
1042
1043        Reviewed by Eric.
1044
1045        Fix JavaScriptGlue to build without warnings using GCC 4.2.
1046
1047        * Configurations/Base.xcconfig:
1048        * JSRun.h:
1049
10502007-11-17  Mark Rowe  <mrowe@apple.com>
1051
1052        Reviewed by Darin Adler.
1053
1054        Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
1055             <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
1056             http://bugs.webkit.org/show_bug.cgi?id=16033
1057
1058        Update for changes in Interpreter method signatures.
1059
1060        * JSRun.h:
1061
10622007-11-13  Geoffrey Garen  <ggaren@apple.com>
1063
1064        Reviewed by Anders Carlsson.
1065
1066        Renamed Shared to RefCounted.
1067
1068        * ForwardingHeaders/wtf/RefCounted.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/Shared.h.
1069        * ForwardingHeaders/wtf/Shared.h: Removed.
1070
10712007-11-13  Geoffrey Garen  <ggaren@apple.com>
1072
1073        Reviewed by Sam Weinig.
1074
1075        Moved Shared.h into wtf so it could be used in more places.
1076
1077        * ForwardingHeaders/wtf/Shared.h: Added.
1078
10792007-11-08  Mark Rowe  <mrowe@apple.com>
1080
1081        Build fix.
1082
1083        * ForwardingHeaders/wtf/MathExtras.h: Copied from WebCore/ForwardingHeaders/wtf/MathExtras.h.
1084
10852007-11-05  Geoffrey Garen  <ggaren@apple.com>
1086
1087        Build fix.
1088
1089        * ForwardingHeaders/kjs/value.h: Added.
1090
10912007-11-03  Sam Weinig  <sam@webkit.org>
1092
1093        Build-fix.
1094
1095        * UserObjectImp.cpp:
1096
10972007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
1098
1099        Sort files(...); sections of Xcode project files.
1100
1101        Rubber-stamped by Darin Adler.
1102
1103        * JavaScriptGlue.xcodeproj/project.pbxproj:
1104
11052007-10-25  Eric Seidel  <eric@webkit.org>
1106
1107        Reviewed by Geoff.
1108
1109        Make JSG build again after JSGlobalObject change.
1110
1111        * JSRun.cpp:
1112        (JSRun::JSRun):
1113        (JSRun::GlobalObject):
1114        * JSRun.h:
1115        (JSInterpreter::JSInterpreter):
1116        * JSUtils.h:
1117
11182007-10-11  Mark Rowe  <mrowe@apple.com>
1119
1120        Reviewed by Tim Hatcher.
1121
1122        Fix for <rdar://problem/5488678>.  Disable debugging symbols in production builds for 10.4
1123        PowerPC to prevent a huge STABS section from being generated.
1124
1125        * Configurations/Base.xcconfig:
1126
11272007-10-04  Mark Rowe  <mrowe@apple.com>
1128
1129        Reviewed by Oliver.
1130
1131        Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
1132        The "full" level appears to offer no observable benefits even though the documentation
1133        suggests it be used for dead code stripping.  This should also decrease link times.
1134
1135        * Configurations/Base.xcconfig:
1136
11372007-09-03  Mark Rowe  <mrowe@apple.com>
1138
1139        Reviewed by Tim Hatcher.
1140
1141        <rdar://problem/5452164> Production build with in symbols directory has no debug info
1142
1143        Enable debug symbol generation on all build configurations.  Production builds are stripped
1144        of symbols by Xcode during deployment post-processing.
1145
1146        * Configurations/Base.xcconfig:
1147        * JavaScriptGlue.xcodeproj/project.pbxproj:
1148
11492007-08-09  Mark Rowe  <mrowe@apple.com>
1150
1151        Reviewed by Antti.
1152
1153        <rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +
1154
1155        * Configurations/Version.xcconfig:
1156        * JavaScriptGlue.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between
1157        Version.xcconfig and Info.plist explicit to Xcode.
1158
11592007-07-16  Sam Weinig  <sam@webkit.org>
1160
1161        Reviewed by Oliver.
1162
1163        Turn off -Wshorten-64-to-32 warning for 64-bit builds.
1164
1165        * Configurations/Base.xcconfig:
1166
11672007-04-27  Mark Rowe  <mrowe@apple.com>
1168
1169        Reviewed by Oliver.
1170
1171        * JavaScriptGlue.xcodeproj/project.pbxproj: Improve dependencies in Xcode project
1172        by marking JavaScriptGlue as a dependency of testjsglue.
1173
11742007-03-24  Mark Rowe  <mrowe@apple.com>
1175
1176        Reviewed by Dave Hyatt.
1177
1178        * JavaScriptGlue.xcodeproj/project.pbxproj: Use GCC 4.0 for testjsglue.
1179
11802007-03-24  Mark Rowe  <mrowe@apple.com>
1181
1182        Rubber-stamped by Darin Adler.
1183
1184        * Configurations/JavaScriptGlue.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS.
1185
11862007-03-19  Andrew Wellington  <proton@wiretapped.net>
1187
1188        Reviewed by Maciej.
1189
1190        Really set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
1191
1192        * JavaScriptGlue.xcodeproj/project.pbxproj:
1193
11942007-03-18  Andrew Wellington  <proton@wiretapped.net>
1195
1196        Reviewed by Mark Rowe
1197
1198        Set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
1199
1200        * JavaScriptGlue.xcodeproj/project.pbxproj:
1201
12022007-03-17  Timothy Hatcher  <timothy@apple.com>
1203
1204        Reviewed by Mark Rowe.
1205
1206        Made Version.xcconfig smarter when building for different configurations.
1207        Now uses the 522+ OpenSource version for Debug and Release, while using the
1208        full 522.4 version for Production builds. The system prefix is also computed
1209        based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.
1210
1211        * Configurations/JavaScriptGlue.xcconfig:
1212        * Configurations/Version.xcconfig:
1213
12142007-03-15  Timothy Hatcher  <timothy@apple.com>
1215
1216        Reviewed by John.
1217
1218        * Factored out most of our common build settings into .xcconfig files. Anything that was common in
1219          each build configuration was factored out into the shared .xcconfig file.
1220        * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
1221        * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
1222        * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
1223
1224        * Configurations/Base.xcconfig: Added.
1225        * Configurations/DebugRelease.xcconfig: Added.
1226        * Configurations/JavaScriptGlue.xcconfig: Added.
1227        * Configurations/Version.xcconfig: Added.
1228        * Info.plist:
1229        * JavaScriptGlue.xcodeproj/project.pbxproj:
1230
1231=== Safari-5522.4 ===
1232
12332007-03-12  Geoffrey Garen  <ggaren@apple.com>
1234
1235        Reviewed by Oliver Hunt.
1236
1237        Updated in light of fix for <rdar://problem/4681051> Installer crashes
1238        in KJS::Collector::markOtherThreadConservatively(KJS::Collector::Thread*)
1239        trying to install iLife 06 using Rosetta on an Intel Machine
1240
1241        * JavaScriptGlue.cpp:
1242        (JSLockInterpreter): Ensure backwards compatibility by calling
1243        registerThread() when explicitly taking the JSLock. (This doesn't happen
1244        automatically anymore.) I doubt this actally matters, but in JavaScriptGlue
1245        territory, that kind of thinking will get you killed.
1246
12472007-03-06  Geoffrey Garen  <ggaren@apple.com>
1248
1249        Reviewed by Maciej Stachowiak.
1250
1251        Fixed all known crashers exposed by run-webkit-tests --threaded while using
1252        a PAC file (for maximum carnage). See JavaScriptCore ChangeLog for
1253        more details.
1254
1255        * JSBase.cpp:
1256        (JSBase::Release): Lock when deleting, because we may be deleting an object
1257        (like a JSRun) that holds thread-unsafe data.
1258
1259        * JSUtils.cpp:
1260        (CFStringToUString): Don't lock, because our caller locks. Also, locking
1261        inside a function that returns thread-unsafe data by copy will only mask
1262        threading problems.
1263
1264        * JavaScriptGlue.cpp:
1265        (JSRunEvaluate): Added missing JSLock.
1266        (JSRunCheckSyntax): Converted to JSLock.
1267        * JavaScriptGlue.xcodeproj/project.pbxproj:
1268
12692007-02-22  Geoffrey Garen  <ggaren@apple.com>
1270
1271        Reviewed by Darin Adler.
1272
1273        Fixed <rdar://problem/4942528> Installer.app Stuck "Examining additional
1274        volumes..."
1275
1276        The problem was that JavaScriptGlue held a JSObject in a static pointer
1277        without protecting it from garbage collection.
1278
1279            sUserObjectPrototypeImp  = new UserObjectPrototypeImp();
1280            static ProtectedPtr<UserObjectPrototypeImp> protectPrototype; // valiant, brave, but useless
1281
1282        Through an interesting comedy of errors, this object would be collected
1283        and then assigned as the prototype of another object allocated at the
1284        same address, thus becoming its own prototype. (See http://www.ziplo.com/grandpa.htm
1285        for further explanation of this phenomenon.) Hence the infinte loop in
1286        property lookup.
1287
1288        The solution is equally humorous: all of this code was completely useless --
1289        it only served to create an empty object in the prototype chain -- so
1290        I just removed it.
1291
1292        * UserObjectImp.cpp:
1293        (UserObjectImp::UserObjectImp):
1294        * UserObjectImp.h:
1295
12962007-02-19  Timothy Hatcher  <timothy@apple.com>
1297
1298        Reviewed by Geoff.
1299
1300        <rdar://problem/4636301> Deprecate JavaScriptGlue
1301
1302        * JavaScriptGlue.h: adds DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER to everything
1303        * JavaScriptGlue.xcodeproj/project.pbxproj: use -Wno-deprecated-declarations to keep the project building
1304        * config.h: define DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER as empty on other systems
1305
13062007-02-16  Darin Adler  <darin@apple.com>
1307
1308        Reviewed by Anders.
1309
1310        - fix <rdar://problem/5000216> JavaScriptGlue framework started turning all CFNumbers
1311          into signed 32bit values
1312
1313        Circumstantial evidence seems to indicate that JavaScriptGlue was depending on a bug
1314        in CFNumber where CFNumberIsFloatType was returning true for 64-bit integer values.
1315
1316        * JSUtils.cpp: (JSObjectKJSValue): Removed the call to CFNumberIsFloatType in the
1317        conversion of numeric values, and always use kCFNumberDoubleType, since double is
1318        the internal format of numbers in JavaScriptCore. There's no value to having a
1319        separate code path for integers. There's also no reason to check the return value
1320        from CFNumberGetValue -- if it returns false it still does the best it can to convert
1321        to a double, which is what we want.
1322
1323        * UserObjectImp.cpp: (UserObjectImp::toString): Removed a similar code path that
1324        tried to handle integers separate from double. Instead, always use a double. For
1325        compatibility, use a format without a decimal point when CFNumberIsFloatType returns
1326        false. Also removed a bogus cast to float; the "%f" format string takes a double,
1327        not a float, so all the cast did was cut down on precision.
1328
13292007-01-25  Mark Rowe  <mrowe@apple.com>
1330
1331        Reviewed by Maciej.
1332
1333        * Info.plist: Update copyright string.
1334
13352006-12-19  Timothy Hatcher  <timothy@apple.com>
1336
1337        Reviewed by Darin Adler.
1338
1339        <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features
1340
1341        * JavaScriptGlue.xcodeproj/project.pbxproj:
1342
1343=== Safari-521.26 ===
1344
13452006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
1346
1347        Reviewed by Tim H.
1348
1349        Build fix:  DWARF and -gfull are incompatible with symbol separation.
1350
1351        * JavaScriptGlue.xcodeproj/project.pbxproj:
1352
13532006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
1354
1355        Reviewed by Tim H.
1356
1357        http://bugs.webkit.org/show_bug.cgi?id=10394
1358        Bug 10394: WebKit Release and Production configurations should enable dead code stripping
1359
1360        * JavaScriptGlue.xcodeproj/project.pbxproj:
1361
13622006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
1363
1364        Reviewed by Tim H.
1365
1366        http://bugs.webkit.org/show_bug.cgi?id=10384
1367        Bug 10384: Switch to DWARF for Release configuration
1368
1369        * JavaScriptGlue.xcodeproj/project.pbxproj:
1370
13712006-08-04  Sam Weinig  <sam.weinig@gmail.com>
1372
1373        Reviewed by Darin Adler.
1374
1375        - patch for http://bugs.webkit.org/show_bug.cgi?id=10192
1376          Make WebCore (and friends) compile with -Wshorten-64-to-32
1377
1378          * Adds -Wshorten-64-to-32 flag to Xcode project.
1379
1380        * JavaScriptGlue.xcodeproj/project.pbxproj:
1381
13822006-08-03  Sam Weinig  <sam.weinig@gmail.com>
1383
1384        Reviewed by Darin Adler.
1385
1386        - patch for http://bugs.webkit.org/show_bug.cgi?id=10176
1387          Make WebCore compile with -Wundef
1388
1389          * Adds -Wundef flag to Xcode project
1390
1391        * JavaScriptGlue.xcodeproj/project.pbxproj:
1392
13932006-07-29  Sam Weinig  <sam.weinig@gmail.com>
1394
1395        Reviewed by Darin Adler.
1396
1397        - patch for http://bugs.webkit.org/show_bug.cgi?id=10080
1398          Adopt pedantic changes from the Unity project to improve
1399          cross-compiler compatibility
1400
1401          Changes include:
1402          * Turning on gcc warning for missing newline at the end of a source file
1403            (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
1404
1405        * JavaScriptGlue.xcodeproj/project.pbxproj:
1406
1407=== Safari-521.19 ===
1408
14092006-07-19  Geoffrey Garen  <ggaren@apple.com>
1410
1411        Fixed by Darin & Maciej, reviewed by me.
1412
1413        - Fixed <rdar://problem/4638934> Leopard 9A227: Installer crashes right
1414        after LCA and while preparing Installation
1415
1416        Compile release/production with NDEBUG set, to ensure binary compatibility
1417        between JavaScriptGlue and JavaScriptCore. In debug builds, JavaScriptCore
1418        includes an extra debug data member in HashSet.
1419
1420        * JavaScriptGlue.xcodeproj/project.pbxproj:
1421
1422=== Safari-521.18 ===
1423
14242006-07-15  Maciej Stachowiak  <mjs@apple.com>
1425
1426        Reviewed by Darin Adler.
1427
1428        - switch property lists to be vector+set of Identifiers instead of list of References
1429
1430        * JSUtils.cpp:
1431        (KJSValueToCFTypeInternal): updated for JSC SPI changes
1432        * JSValueWrapper.cpp:
1433        (JSValueWrapper::JSObjectCopyPropertyNames): ditto
1434        * UserObjectImp.cpp:
1435        (UserObjectImp::getPropertyNames): ditto
1436        * UserObjectImp.h:
1437
1438=== Safari-521.17 ===
1439
14402006-07-14  Geoffrey Garen  <ggaren@apple.com>
1441
1442        Reviewed by Maciej.
1443
1444        - Updated JSInterpreter to work with Interpreter ref-counting in JavaScriptCore.
1445
1446        (JSInterpreter::JSInterpreter::~JSInterpreter): Now protected to catch
1447        manual delete.
1448
14492006-07-12  Anders Carlsson  <acarlsson@apple.com>
1450
1451        Build fix
1452
1453        * JSUtils.cpp:
1454        (KJSValueToCFTypeInternal):
1455        * JSValueWrapper.cpp:
1456        (JSValueWrapper::JSObjectCopyPropertyNames):
1457        * UserObjectImp.cpp:
1458        (UserObjectImp::getPropertyList):
1459
1460=== Safari-521.15 ===
1461
14622006-07-07  Geoffrey Garen  <ggaren@apple.com>
1463
1464        - build fix
1465
1466        * JSUtils.cpp:
1467        (KJSValueToCFTypeInternal):
1468        * JSValueWrapper.cpp:
1469        (JSValueWrapper::JSObjectCopyPropertyNames):
1470
14712006-07-03  Geoffrey Garen  <ggaren@apple.com>
1472
1473        Reviewed by Maciej.
1474
1475        * JSRun.cpp:
1476        (JSRun::CheckSyntax): Updated to use new checkSyntax syntax in JSC.
1477        * JavaScriptGlue.xcodeproj/project.pbxproj:
1478
1479=== Safari-521.14 ===
1480
14812006-06-28  Timothy Hatcher  <timothy@apple.com>
1482
1483        Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
1484
1485        * JavaScriptGlue.xcodeproj/project.pbxproj:
1486
14872006-06-24  David Kilzer  <ddkilzer@kilzer.net>
1488
1489        Reviewed by Timothy.
1490
1491        * Info.plist: Fixed copyright to include 2003-2006.
1492
1493=== JavaScriptGlue-521.13 ===
1494
14952006-06-20  Geoffrey Garen  <ggaren@apple.com>
1496
1497        Reviewed by Anders.
1498
1499        - Required for JS API: Rename propList to getPropertyList and have it
1500        take its target property list by reference so that subclasses can
1501        add properties to the list before calling through to their superclasses.
1502
1503        * JSUtils.cpp:
1504        (KJSValueToCFTypeInternal):
1505        * JSValueWrapper.cpp:
1506        (JSValueWrapper::JSObjectCopyPropertyNames):
1507        * UserObjectImp.cpp:
1508        (UserObjectImp::getPropertyList):
1509        * UserObjectImp.h:
1510
15112006-06-15  Timothy Hatcher  <timothy@apple.com>
1512
1513        Reviewed by Geoff and Darin.
1514
1515        Prefer the DWARF debugging symbols format for use in Xcode 2.3.
1516
1517        * JavaScriptGlue.xcodeproj/project.pbxproj:
1518
15192006-06-12  Geoffrey Garen  <ggaren@apple.com>
1520
1521        Reviewed by TimO, Maciej.
1522
1523        - JSGlue part of merging InterpreterImp into Interpreter.
1524
1525        Since there's now a kjs forwarding header, I moved all forwarding
1526        headers into a "ForwardingHeaders" directory, like in WebCore.
1527
1528        * ForwardingHeaders: Added.
1529        * ForwardingHeaders/kjs: Added.
1530        * ForwardingHeaders/kjs/ExecState.h: Added.
1531        * ForwardingHeaders/wtf: Added.
1532        * JavaScriptGlue.xcodeproj/project.pbxproj:
1533        * config.h:
1534        * wtf: Removed.
1535        * wtf/AlwaysInline.h: Removed.
1536        * wtf/Assertions.h: Removed.
1537        * wtf/FastMalloc.h: Removed.
1538        * wtf/Forward.h: Removed.
1539        * wtf/HashCountedSet.h: Removed.
1540        * wtf/HashSet.h: Removed.
1541        * wtf/Noncopyable.h: Removed.
1542        * wtf/OwnArrayPtr.h: Removed.
1543        * wtf/OwnPtr.h: Removed.
1544        * wtf/PassRefPtr.h: Removed.
1545        * wtf/Platform.h: Removed.
1546        * wtf/RefPtr.h: Removed.
1547        * wtf/Vector.h: Removed.
1548
1549=== JavaScriptGlue-521.10 ===
1550
15512006-05-09  Maciej Stachowiak  <mjs@apple.com>
1552
1553        Rubber stamped by Anders.
1554
1555        - renamed kxmlcore to wtf
1556
1557        kxmlcore --> wtf
1558        KXMLCore --> WTF
1559        KXC --> WTF
1560
1561        * config.h:
1562        * kxmlcore: Removed.
1563        * kxmlcore/AlwaysInline.h: Removed.
1564        * kxmlcore/Assertions.h: Removed.
1565        * kxmlcore/FastMalloc.h: Removed.
1566        * kxmlcore/Forward.h: Removed.
1567        * kxmlcore/HashCountedSet.h: Removed.
1568        * kxmlcore/HashSet.h: Removed.
1569        * kxmlcore/Noncopyable.h: Removed.
1570        * kxmlcore/OwnArrayPtr.h: Removed.
1571        * kxmlcore/OwnPtr.h: Removed.
1572        * kxmlcore/PassRefPtr.h: Removed.
1573        * kxmlcore/Platform.h: Removed.
1574        * kxmlcore/RefPtr.h: Removed.
1575        * kxmlcore/Vector.h: Removed.
1576        * wtf: Added.
1577
15782006-04-11  Darin Adler  <darin@apple.com>
1579
1580        - try to fix Windows build
1581
1582        * kxmlcore/HashForward.h: Removed.
1583
15842006-04-10  Darin Adler  <darin@apple.com>
1585
1586        Rubber-stamped by John Sullivan.
1587
1588        - added forwarding headers for the new Forward.h and HashForward.h files
1589
1590        * kxmlcore/Forward.h: Added.
1591        * kxmlcore/HashForward.h: Added.
1592
15932006-04-04  Timothy Hatcher  <timothy@apple.com>
1594
1595        Reviewed by Darin Adler.
1596
1597        The Debug and Release frameworks are now built with install paths relative to the build products directory.
1598        This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore.
1599
1600        * JavaScriptGlue.xcodeproj/project.pbxproj:
1601
16022006-04-02  Eric Seidel  <eseidel@apple.com>
1603
1604        Reviewed by andersca.
1605
1606        Add missing forwarding header.
1607
1608        * kxmlcore/Vector.h: Added.
1609
16102006-03-31  Geoffrey Garen  <ggaren@apple.com>
1611
1612        Reviewed by Darin Adler.
1613
1614        - Fixed <rdar://problem/4430836> JavaScript patch crashing Quartz
1615        Composer
1616
1617        JSValueWrappers used to hold on to the ExecState that pertained at
1618        the time of their creation. Since ExecStates are transient, that
1619        design was totally bogus, and it would crash once the ExecState had
1620        been deallocated.
1621
1622        Unfortunately, there's no clean solution to this problem, since
1623        the JSGlue API has no notion of state. The solution here is to use
1624        a shared, global ExecState for the purpose of JSGlue calls. Given
1625        the pre-existing limitations in the JSGlue API, this design
1626        shouldn't actually introduce any new limitations (see comments in
1627        JSValueWrapper.cpp).
1628
1629        I tested with Quartz Composer and PAC files, neither of which are
1630        layout-testable.
1631
1632        * JSUtils.cpp:
1633        (KJSValueToJSObject):
1634        * JSValueWrapper.cpp:
1635        (JSValueWrapper::JSValueWrapper):
1636        (JSValueWrapper::GetValue):
1637        (getProcessGlobalExecState):
1638        (JSValueWrapper::JSObjectCopyPropertyNames):
1639        (JSValueWrapper::JSObjectCopyProperty):
1640        (JSValueWrapper::JSObjectSetProperty):
1641        (JSValueWrapper::JSObjectCallFunction):
1642        (JSValueWrapper::JSObjectCopyCFValue):
1643        * JSValueWrapper.h:
1644
1645        Also added a test harness file. It was helpful while I was testing,
1646        and may come in handy in the future:
1647
1648        * JavaScriptGlue.xcodeproj/project.pbxproj:
1649        testjsglue.cpp: Added.
1650
16512006-03-28  Darin Adler  <darin@apple.com>
1652
1653        Reviewed by Geoff.
1654
1655        - added a build step that checks for init routines
1656
1657        * JavaScriptGlue.xcodeproj/project.pbxproj: Added a custom build phase that invokes the
1658        check-for-global-initializers script.
1659
16602006-03-02  Maciej Stachowiak  <mjs@apple.com>
1661
1662        Not reviewed, but I noticed these trivial extra changes were needed to avoid
1663        breaking the build with my reviewed patch for:
1664
1665        http://bugs.webkit.org/show_bug.cgi?id=7387
1666
1667        Add config.h, includes of it, and Platform.h forwarding header.
1668
1669        * JSBase.cpp:
1670        * JSObject.cpp:
1671        * JSRun.cpp:
1672        * JSUtils.cpp:
1673        * JSValueWrapper.cpp:
1674        * JavaScriptGlue.cpp:
1675        * UserObjectImp.cpp:
1676        * config.h: Added.
1677        * kxmlcore/Platform.h: Added.
1678
1679=== JavaScriptGlue-521.7 ===
1680
16812006-02-10  Geoffrey Garen  <ggaren@apple.com>
1682
1683        Reviewed by eric.
1684
1685        - Fixed build.
1686
1687        * UserObjectImp.cpp:
1688        (UserObjectImp::toPrimitive):
1689        * UserObjectImp.h:
1690
16912006-02-03  Timothy Hatcher  <timothy@apple.com>
1692
1693        Reviewed by Justin.
1694
1695        Renamed configuration names to Debug, Release and Production.
1696
1697        * JavaScriptGlue.xcodeproj/project.pbxproj:
1698
16992006-02-01  Darin Adler  <darin@apple.com>
1700
1701        - added some forwarding headers to make new JavaScriptCore changes work
1702
1703        * kxmlcore/Assertions.h: Added.
1704        * kxmlcore/Noncopyable.h: Added.
1705        * kxmlcore/OwnPtr.h: Added.
1706        * kxmlcore/OwnArrayPtr.h: Added.
1707
17082006-01-16  Timothy Hatcher  <timothy@apple.com>
1709
1710        Adding the license header to all files so we can
1711        move JavaScriptGlue into the open source repository.
1712
1713        * LICENSE: Added.
1714        * JSBase.cpp: license header added.
1715        * JSBase.h: ditto.
1716        * JSObject.cpp: ditto.
1717        * JSObject.h: ditto.
1718        * JSRun.cpp: ditto.
1719        * JSRun.h: ditto.
1720        * JSUtils.cpp: ditto.
1721        * JSUtils.h: ditto.
1722        * JSValueWrapper.cpp: ditto.
1723        * JSValueWrapper.h: ditto.
1724        * JavaScriptGlue.cpp: ditto.
1725        * JavaScriptGlue.h: ditto.
1726        * UserObjectImp.cpp: ditto.
1727        * UserObjectImp.h: ditto.
1728
17292005-12-21  Timothy Hatcher  <timothy@apple.com>
1730
1731        * JavaScriptGlue.xcodeproj/project.pbxproj:
1732          Set tab width to 8, indent width to 4 and uses tabs to false per file.
1733
17342005-12-19  Darin Adler  <darin@apple.com>
1735
1736        Reviewed by Geoff Garen and Eric Seidel.
1737
1738        - fix http://bugs.webkit.org/show_bug.cgi?id=4923
1739          stop using <ostream> in WebCore, eliminating the <cmath> troubles it causes
1740
1741        * kxmlcore/AlwaysInline.h: Added.
1742
17432005-12-15  Darin Adler  <darin@apple.com>
1744
1745        Reviewed by Maciej.
1746
1747        * JSRun.cpp: (JSRun::Evaluate): Updated for change to Interpreter::evaluate.
1748
17492005-12-15  Darin Adler  <darin@apple.com>
1750
1751        Reviewed by Tim Hatcher.
1752
1753        * JavaScriptGlue.xcodeproj/project.pbxproj: Removed some redundant build
1754        settings, turned off prebinding explicitly for our Development and
1755        Deployment builds, remove .exp file from sources. All "clean-up".
1756
1757=== Safari-521~5 ===
1758
17592005-12-13  Geoffrey Garen  <ggaren@apple.com>
1760
1761    - Fixed build after Anders's last checkin to JavaScriptCore.
1762
1763        Reviewed by darin.
1764
1765        * UserObjectImp.cpp:
1766        (UserObjectImp::userObjectGetter): Updated to reflect new argument that
1767    getters take (unused here).
1768        * UserObjectImp.h:
1769
17702005-12-13  Maciej Stachowiak  <mjs@apple.com>
1771
1772        Reviewed by Eric.
1773
1774    - added forwarding header for HashCountedSet
1775
1776        * kxmlcore/HashCountedSet.h: Added.
1777
17782005-12-10  Darin Adler  <darin@apple.com>
1779
1780        Rubber stamped by Maciej.
1781
1782        - updated for KJS class renaming
1783
1784        * many files and functions
1785
17862005-12-10  Darin Adler  <darin@apple.com>
1787
1788        Reviewed by Maciej.
1789
1790        - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
1791
1792        Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
1793
1794        * JSUtils.cpp:
1795        (JSObjectKJSValue):
1796        * UserObjectImp.cpp:
1797        (UserObjectImp::callAsFunction):
1798        (UserObjectImp::toPrimitive):
1799
18002005-12-05  Maciej Stachowiak  <mjs@apple.com>
1801
1802        - added new forwarding headers
1803
1804        * kxmlcore/PassRefPtr.h: Added.
1805        * kxmlcore/RefPtr.h: Added.
1806
18072005-12-05  Maciej Stachowiak  <mjs@apple.com>
1808
1809        * kxmlcore/PassRefPtr.h: Added.
1810
18112005-11-26  Maciej Stachowiak  <mjs@apple.com>
1812
1813        Rubber stamped by Eric.
1814
1815    - renamed InterpreterLock to JSLock
1816
1817        * JSUtils.cpp:
1818        (CFStringToUString):
1819        (JSObjectKJSValue):
1820        (KJSValueToCFTypeInternal):
1821        * JSValueWrapper.cpp:
1822        (JSValueWrapper::JSObjectCopyPropertyNames):
1823        (JSValueWrapper::JSObjectCopyProperty):
1824        (JSValueWrapper::JSObjectSetProperty):
1825        (JSValueWrapper::JSObjectCallFunction):
1826        (JSValueWrapper::JSObjectCopyCFValue):
1827        * JavaScriptGlue.cpp:
1828        (JSRunCreate):
1829        (JSCollect):
1830        (JSLockInterpreter):
1831        (JSUnlockInterpreter):
1832        * UserObjectImp.cpp:
1833        (UserObjectImp::callAsFunction):
1834
18352005-11-16  Maciej Stachowiak  <mjs@apple.com>
1836
1837        Reviewed by Geoff.
1838
1839    Updated to use new API to drop all locks.
1840
1841        * JavaScriptGlue.cpp:
1842        (JSLockInterpreter):
1843        (JSUnlockInterpreter):
1844        * UserObjectImp.cpp:
1845        (UserObjectImp::callAsFunction):
1846
18472005-11-14  Geoffrey Garen  <ggaren@apple.com>
1848
1849        Reviewed by mjs.
1850
1851        - Part of the fix for <rdar://problem/4342216> Installer crash in
1852          KJS::ValueImp::marked() when garbage collector runs inside call to
1853          ConstantValues::init()
1854
1855        Added locking in JSRunCreate, since JSRun::JSRun constructs an object.
1856
1857        * JavaScriptGlue.cpp:
1858        (JSRunCreate):
1859
18602005-11-10  Geoffrey Garen  <ggaren@apple.com>
1861
1862        Reviewed by Maciej.
1863
1864        - Fixed <rdar://problem/4334445> installer crashed on my
1865          dual g4 450Mhz after clicking language
1866
1867        - Reversed backwards NULL check.
1868        - Inserted guards against NULL fJSUserObject data member.
1869        - Cleaned up some style.
1870
1871        * JSUtils.cpp:
1872        (KJSValueToCFTypeInternal):
1873        * UserObjectImp.cpp:
1874        (UserObjectImp::~UserObjectImp):
1875        (UserObjectImp::callAsFunction):
1876        (UserObjectImp::userObjectGetter):
1877        (UserObjectImp::getOwnPropertySlot):
1878        (UserObjectImp::put):
1879        (UserObjectImp::mark):
1880
18812005-11-04  Timothy Hatcher  <timothy@apple.com>
1882
1883        Reviewed by Darin Adler.
1884
1885        * JavaScriptGlue.xcodeproj/project.pbxproj:
1886          Fixed the FRAMEWORK_SEARCH_PATHS to look in the WebKit
1887          Frameworks for the Default config.
1888
18892005-11-03  Timothy Hatcher  <timothy@apple.com>
1890
1891        Reviewed by Darin and Vicki.
1892
1893        * JavaScriptGlue.xcodeproj/project.pbxproj:
1894          Change to use $(SYSTEM_LIBRARY_DIR) consistently and place
1895          $(NEXT_ROOT) in a few spots to make build-root work.
1896
18972005-11-01  Maciej Stachowiak  <mjs@apple.com>
1898
1899    Reviewed by: Eric.
1900
1901        <rdar://problem/4324107> get JavaScriptGlue working with TOT JavaScriptCore again
1902
1903    - reverted all this stuff to use ReferenceList instead of IdentifierSequencedSet
1904
1905        * JSUtils.cpp:
1906        (KJSValueToCFTypeInternal):
1907        * JSValueWrapper.cpp:
1908        (JSValueWrapper::JSObjectCopyPropertyNames):
1909        * UserObjectImp.cpp:
1910        (UserObjectImp::propList):
1911        * UserObjectImp.h:
1912
19132005-10-11  Timothy Hatcher  <timothy@apple.com>
1914
1915        Setup the proper Framework search path for the Default config.
1916        Prepping for a TOT submission and build by B&I.
1917
1918        * JavaScriptGlue.xcodeproj/project.pbxproj:
1919
19202005-10-10  Darin Adler  <darin@apple.com>
1921
1922        Reviewed by Eric.
1923
1924        - converted tabs to spaces, NULL to 0, added some (void), got rid of __ prefixes
1925          in headers (reserved for compiler/library)
1926
1927        * Info.plist:
1928        * JSBase.cpp:
1929        * JSBase.h:
1930        * JSObject.cpp:
1931        * JSObject.h:
1932        * JSRun.cpp:
1933        * JSRun.h:
1934        * JSUtils.cpp:
1935        * JSUtils.h:
1936        * JSValueWrapper.cpp:
1937        * JSValueWrapper.h:
1938        * JavaScriptGlue.cpp:
1939        * JavaScriptGlue.h:
1940        * UserObjectImp.cpp:
1941        * UserObjectImp.h:
1942
19432005-10-10  Darin Adler  <darin@apple.com>
1944
1945        * .cvsignore: Added. Ignore Makefile.in and Makefile.
1946
19472005-10-07  Timothy Hatcher  <timothy@apple.com>
1948
1949        Reviewed by Maciej.
1950
1951        Build fix, needed to disable RTTI. Upgraded to a native target.
1952
1953        * JavaScriptGlue.xcodeproj/project.pbxproj:
1954        * Info.plist
1955
19562005-10-05  Maciej Stachowiak  <mjs@apple.com>
1957
1958        Reviewed by Eric and Darin.
1959
1960    <rdar://problem/4260506> Port JavaScriptGlue to TOT JavaScriptCore
1961
1962        * JSRun.cpp:
1963        (JSRun::JSRun):
1964        (JSRun::GlobalObject):
1965        * JSRun.h:
1966        (JSInterpreter::JSInterpreter):
1967        * JSUtils.cpp:
1968        (KJSValueToJSObject):
1969        (JSObjectKJSValue):
1970        (KJSValueToCFTypeInternal):
1971        (KJSValueToCFType):
1972        * JSUtils.h:
1973        * JSValueWrapper.cpp:
1974        (JSValueWrapper::JSValueWrapper):
1975        (JSValueWrapper::GetValue):
1976        (JSValueWrapper::JSObjectCopyPropertyNames):
1977        (JSValueWrapper::JSObjectCopyProperty):
1978        (JSValueWrapper::JSObjectSetProperty):
1979        (JSValueWrapper::JSObjectCallFunction):
1980        (JSValueWrapper::JSObjectMark):
1981        * JSValueWrapper.h:
1982        * JavaScriptGlue.cpp:
1983        (JSRunCopyGlobalObject):
1984        * JavaScriptGlue.xcodeproj/project.pbxproj:
1985        * Makefile.am: Added.
1986        * UserObjectImp.cpp:
1987        (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
1988        (UserObjectImp::UserObjectImp):
1989        (UserObjectImp::callAsFunction):
1990        (UserObjectImp::getPropertyNames):
1991        (UserObjectImp::userObjectGetter):
1992        (UserObjectImp::getOwnPropertySlot):
1993        (UserObjectImp::put):
1994        (UserObjectImp::toPrimitive):
1995        (UserObjectImp::mark):
1996        * UserObjectImp.h:
1997        * kxmlcore/FastMalloc.h: Added.
1998        * kxmlcore/HashSet.h: Added.
1999
20002005-09-14  Maciej Stachowiak  <mjs@apple.com>
2001
2002        Reviewed by Geoff.
2003
2004    - fixed <rdar://problem/4214783> REGRESSION: kjs_fast_malloc crash due to lack of locking on multiple threads (seen selecting volumes in the installer)
2005
2006    Make sure to lock using the InterpreterLock class in all places that need it
2007    (including anything that uses the collector, the parser, the protect count hash table,
2008    and anything that allocates via fast_malloc).
2009
2010        * JSUtils.cpp:
2011        (CFStringToUString):
2012        (JSObjectKJSValue):
2013        (KJSValueToCFTypeInternal):
2014        * JSUtils.h:
2015        * JSValueWrapper.cpp:
2016        (JSValueWrapper::JSObjectCopyPropertyNames):
2017        (JSValueWrapper::JSObjectCopyProperty):
2018        (JSValueWrapper::JSObjectSetProperty):
2019        (JSValueWrapper::JSObjectCallFunction):
2020        (JSValueWrapper::JSObjectCopyCFValue):
2021        * JavaScriptGlue.cpp:
2022        (JSCollect):
2023
20242005-09-27  Adele Peterson  <adele@apple.com>
2025
2026        Reviewed by Maciej.
2027
2028        <rdar://problem/4223297> JavaScriptGlue: Submit 64-bit compatible versions of your API and SPIs by September 15
2029
2030        * JavaScriptGlue.h: Changed UInt32 to CFTypeID for JSTypeID
2031
20322005-09-06  Geoffrey Garen  <ggaren@apple.com>
2033
2034        -upgraded project files to XCode 2.1
2035
2036        * JavaScriptGlue.pbproj/project.pbxproj: Removed.
2037        * JavaScriptGlue.xcodeproj/.cvsignore: Added.
2038        * JavaScriptGlue.xcodeproj/project.pbxproj: Added.
2039
20402005-09-01  Maciej Stachowiak  <mjs@apple.com>
2041
2042        Rubber stamped by hyatt.
2043
2044    - initial import of JavaScriptGlue into our repository
2045
2046        * English.lproj/InfoPlist.strings: Added.
2047        * JSBase.cpp: Added.
2048        (JSBase::JSBase):
2049        (JSBase::~JSBase):
2050        (JSBase::Retain):
2051        (JSBase::Release):
2052        (JSBase::RetainCount):
2053        (JSBase::GetTypeID):
2054        (JSBase::CopyDescription):
2055        (JSBase::Equal):
2056        * JSBase.h: Added.
2057        * JSObject.cpp: Added.
2058        (JSUserObject::JSUserObject):
2059        (JSUserObject::~JSUserObject):
2060        (JSUserObject::CopyPropertyNames):
2061        (JSUserObject::CopyProperty):
2062        (JSUserObject::SetProperty):
2063        (JSUserObject::ImplementsCall):
2064        (JSUserObject::CallFunction):
2065        (JSUserObject::CopyCFValue):
2066        (JSUserObject::Equal):
2067        (JSUserObject::Mark):
2068        (JSUserObject::GetData):
2069        * JSObject.h: Added.
2070        (JSUserObject::DataType):
2071        * JSRun.cpp: Added.
2072        (JSRun::JSRun):
2073        (JSRun::~JSRun):
2074        (JSRun::Flags):
2075        (JSRun::GetSource):
2076        (JSRun::GlobalObject):
2077        (JSRun::GetInterpreter):
2078        (JSRun::Evaluate):
2079        (JSRun::CheckSyntax):
2080        * JSRun.h: Added.
2081        (JSInterpreter::JSInterpreter):
2082        (JSInterpreter::JSInterpreter::~JSInterpreter):
2083        (JSInterpreter::Flags):
2084        * JSUtils.cpp: Added.
2085        (CFStringToUString):
2086        (UStringToCFString):
2087        (CFStringToIdentifier):
2088        (IdentifierToCFString):
2089        (KJSValueToJSObject):
2090        (JSObjectKJSValue):
2091        (KJSValueToCFTypeInternal):
2092        (KJSValueToCFType):
2093        (GetCFNull):
2094        * JSUtils.h: Added.
2095        (RetainCFType):
2096        (ReleaseCFType):
2097        * JSValueWrapper.cpp: Added.
2098        (JSValueWrapper::JSValueWrapper):
2099        (JSValueWrapper::~JSValueWrapper):
2100        (JSValueWrapper::GetValue):
2101        (JSValueWrapper::GetExecState):
2102        (JSValueWrapper::GetJSObectCallBacks):
2103        (JSValueWrapper::JSObjectDispose):
2104        (JSValueWrapper::JSObjectCopyPropertyNames):
2105        (JSValueWrapper::JSObjectCopyProperty):
2106        (JSValueWrapper::JSObjectSetProperty):
2107        (JSValueWrapper::JSObjectCallFunction):
2108        (JSValueWrapper::JSObjectCopyCFValue):
2109        (JSValueWrapper::JSObjectMark):
2110        * JSValueWrapper.h: Added.
2111        * JavaScriptGlue.cpp: Added.
2112        (JSSetCFNull):
2113        (JSGetCFNull):
2114        (JSRetain):
2115        (JSRelease):
2116        (JSCopyDescription):
2117        (JSEqual):
2118        (JSGetTypeID):
2119        (JSGetRetainCount):
2120        (JSObjectCreate):
2121        (JSObjectCreateInternal):
2122        (JSObjectCopyCFValue):
2123        (JSObjectGetData):
2124        (JSObjectCopyProperty):
2125        (JSObjectSetProperty):
2126        (JSObjectCallFunction):
2127        (JSRunCreate):
2128        (JSRunCopySource):
2129        (JSRunCopyGlobalObject):
2130        (JSRunEvaluate):
2131        (JSRunCheckSyntax):
2132        (JSCollect):
2133        (JSTypeGetCFArrayCallBacks):
2134        (JSCFRetain):
2135        (JSCFRelease):
2136        (JSObjectCreateWithCFType):
2137        (CFJSObjectDispose):
2138        (JSObjectCopyPropertyNames):
2139        (CFJSObjectCopyProperty):
2140        (CFJSObjectSetProperty):
2141        (CFJSObjectCopyCFValue):
2142        (CFJSObjectEqual):
2143        (CFJSObjectCopyPropertyNames):
2144        (JSCreateCFArrayFromJSArray):
2145        (JSCreateJSArrayFromCFArray):
2146        (JSLockInterpreter):
2147        (JSUnlockInterpreter):
2148        * JavaScriptGlue.exp: Added.
2149        * JavaScriptGlue.h: Added.
2150        * JavaScriptGlue.pbproj/project.pbxproj: Added.
2151        * UserObjectImp.cpp: Added.
2152        (UserObjectPrototypeImp::UserObjectPrototypeImp):
2153        (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
2154        (UserObjectImp::UserObjectImp):
2155        (UserObjectImp::~UserObjectImp):
2156        (UserObjectImp::classInfo):
2157        (UserObjectImp::implementsCall):
2158        (UserObjectImp::call):
2159        (UserObjectImp::propList):
2160        (UserObjectImp::hasProperty):
2161        (UserObjectImp::get):
2162        (UserObjectImp::put):
2163        (UserObjectImp::GetJSUserObject):
2164        (UserObjectImp::toPrimitive):
2165        (UserObjectImp::toBoolean):
2166        (UserObjectImp::toNumber):
2167        (UserObjectImp::toString):
2168        (UserObjectImp::mark):
2169        * UserObjectImp.h: Added.
2170
2171