Follow-up to r76477.
[WebKit-https.git] / Source / JavaScriptGlue / ChangeLog
1 2011-01-23  Mark Rowe  <mrowe@apple.com>
2
3         Follow-up to r76477.
4
5         Fix the scripts that detect problematic code such as static initializers
6         and destructors, weak vtables, inappropriate files in the framework wrappers,
7         and public headers including private headers. These had all been broken
8         since the projects were moved in to the Source directory as the paths to the
9         scripts were not updated at that time.
10
11         * JavaScriptGlue.xcodeproj/project.pbxproj:
12
13 2011-01-17  Dan Bernstein  <mitz@apple.com>
14
15         Rubber-stamped by Mark Rowe.
16
17         Update xcodeproj svn:ignore to include xcuserdata.
18
19         * JavaScriptGlue.xcodeproj: Modified property svn:ignore.
20
21 2011-01-10  Geoffrey Garen  <ggaren@apple.com>
22
23         Reviewed by Oliver Hunt.
24
25         Moved Collector.* => Heap.*, since the file contains a class named "Heap".
26
27         * JSUtils.h:
28
29 2011-01-02  Dan Bernstein  <mitz@apple.com>
30
31         Rubber-stamped by Simon Fraser.
32
33         <rdar://problem/8812159> Update copyright strings
34
35         * Info.plist:
36
37 2010-12-22  Dan Bernstein  <mitz@apple.com>
38
39         Rubber-stamped by Mark Rowe.
40
41         Changed WebKitTools to Tools in script build phases.
42
43         * JavaScriptGlue.xcodeproj/project.pbxproj:
44
45 2010-12-21  Geoffrey Garen  <ggaren@apple.com>
46
47         Reviewed by Gavin Barraclough & Oliver Hunt.
48
49         Added PageAllocationAligned, a cross-platform abstraction for memory allocations with arbitrary alignment requirements
50         https://bugs.webkit.org/show_bug.cgi?id=51359
51
52         * ForwardingHeaders/wtf/PageAllocationAligned.h: Added.
53
54 2010-12-21  Daniel Bates  <dbates@rim.com>
55
56         Reviewed by Eric Seidel and Darin Adler.
57
58         Deallocate GregorianDateTime.timeZone (if allocated) when copying so that we don't leak memory.
59         https://bugs.webkit.org/show_bug.cgi?id=51367
60
61         Add forwarding header for PassOwnArrayPtr.h.
62
63         * ForwardingHeaders/wtf/PassOwnArrayPtr.h: Added.
64
65 2010-12-18  Gavin Barraclough  <barraclough@apple.com>
66
67         Reviewed by Oliver Hunt.
68
69         Bug 26276 - Need a mechanism to determine stack extent
70
71         Add forwarding header for StackBounds.h.
72
73         * ForwardingHeaders/wtf/StackBounds.h: Added.
74
75 2010-12-20  Geoffrey Garen  <ggaren@apple.com>
76
77         Reviewed by Sam Weinig.
78
79         Factored common page set management into a new PageBlock base class
80         https://bugs.webkit.org/show_bug.cgi?id=51285
81
82         * ForwardingHeaders/wtf/PageBlock.h: Added.
83
84 2010-12-01  Geoffrey Garen  <ggaren@apple.com>
85
86         Build fix: Added a forwarding header.
87
88         * ForwardingHeaders/wtf/OSAllocator.h: Added.
89
90 2010-10-25  Oliver Hunt  <oliver@apple.com>
91
92         Reviewed by Gavin Barraclough.
93
94         Remove exec and globalData arguments from jsNumber
95         https://bugs.webkit.org/show_bug.cgi?id=48270
96
97         Don't pass exec to jsNumber
98
99         * JSUtils.cpp:
100         (JSObjectKJSValue):
101         * UserObjectImp.cpp:
102         (UserObjectImp::toPrimitive):
103
104 2010-10-25  Sheriff Bot  <webkit.review.bot@gmail.com>
105
106         Unreviewed, rolling out r70451.
107         http://trac.webkit.org/changeset/70451
108         https://bugs.webkit.org/show_bug.cgi?id=48249
109
110         Broke set-unloaded-frame-location.html under Qt (Requested by
111         caseq on #webkit).
112
113         * ForwardingHeaders/wtf/text/TextPosition.h: Removed.
114
115 2010-10-16  Patrick Gansterer  <paroga@webkit.org>
116
117         Reviewed by Adam Barth.
118
119         Rename StringHasherFunctions.h to StringHasher.h
120         https://bugs.webkit.org/show_bug.cgi?id=47200
121
122         * ForwardingHeaders/wtf/StringHashFunctions.h: Removed.
123         * ForwardingHeaders/wtf/StringHasher.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/StringHashFunctions.h.
124
125 2010-09-09  Michael Saboff  <msaboff@apple.com>
126
127         Reviewed by Gavin Barraclough.
128
129         Added ListHashSet.h as an exported header in support of RegExp tracing.
130         https://bugs.webkit.org/show_bug.cgi?id=45401
131
132         * ForwardingHeaders/wtf/ListHashSet.h: Added.
133
134 2010-09-07  Anders Carlsson  <andersca@apple.com>
135
136         Reviewed by Darin Adler.
137
138         <rdar://problem/8381749> -Wcast-align warning emitted when building with clang
139
140         Remove the -Wcast-align-warning since it isn't really useful, and clang is more aggressive about warning than gcc.
141
142         * Configurations/Base.xcconfig:
143
144 2010-08-26  Sam Weinig  <sam@webkit.org>
145
146         Reviewed by Darin Adler.
147
148         Add PassOwnArrayPtr
149         https://bugs.webkit.org/show_bug.cgi?id=44627
150
151         Add new forwarding header.
152
153         * ForwardingHeaders/wtf/OwnArrayPtrCommon.h: Added.
154
155 2010-08-23  Gavin Barraclough  <barraclough@apple.com>
156
157         Reviewed by Oliver Hunt.
158
159         https://bugs.webkit.org/show_bug.cgi?id=44487
160
161         * ForwardingHeaders/wtf/text/WTFString.h: Added.
162
163 2010-08-24  Oliver Hunt  <oliver@apple.com>
164
165         Reviewed by Geoff Garen.
166
167         Don't seed the JS random number generator from time()
168         https://bugs.webkit.org/show_bug.cgi?id=41868
169         <rdar://problem/8171025>
170
171         Add forwarding header for RandomNumber in JavaScriptGlue
172
173         * ForwardingHeaders/wtf/RandomNumber.h: Added.
174
175 2010-08-11  Gavin Barraclough  <barraclough@apple.com>
176
177         Rubber stamps by Darin Adler & Sam Weinig.
178
179         Bug 43867 - Some UString cleanup
180
181         Change JSC::UString data(), size(), and from(), to characters(), length(), and number() to match WTF::String.
182         Move string concatenation methods to a new header to simplify down UString.h.  Remove is8Bit().
183
184         * JSUtils.cpp:
185         (UStringToCFString):
186         (KJSValueToCFTypeInternal):
187         * JavaScriptGlue.xcodeproj/project.pbxproj:
188
189 2010-08-04  Gavin Barraclough  <barraclough@apple.com>
190
191         Reviewed by Sam Weinig.
192
193         Bug 43515 - Fix small design issues with PageAllocation, split out PageReservation.
194         (add forwarding headers)
195
196         * ForwardingHeaders/wtf/Bitmap.h: Added.
197         * ForwardingHeaders/wtf/PageReservation.h: Added.
198
199 2010-08-04  Sheriff Bot  <webkit.review.bot@gmail.com>
200
201         Unreviewed, rolling out r64655.
202         http://trac.webkit.org/changeset/64655
203         https://bugs.webkit.org/show_bug.cgi?id=43496
204
205         JavaScriptCore references patch seems to have caused
206         regressions in QT and GTK builds (Requested by nlawrence on
207         #webkit).
208
209         * JSValueWrapper.cpp:
210         (JSValueWrapper::JSObjectMark):
211
212 2010-08-04  Nathan Lawrence  <nlawrence@apple.com>
213
214         Reviewed by Darin Adler.
215
216         Removed unneeded marking.  We need to remove this marking in order to have
217         MarkStack::append take references for updating movable objects.
218
219         https://bugs.webkit.org/show_bug.cgi?id=41177
220
221         * JSValueWrapper.cpp:
222         (JSValueWrapper::JSObjectMark):
223
224 2010-08-03  Gavin Barraclough  <barraclough@apple.com>
225
226         Build fix following r64624.
227
228         * ForwardingHeaders/wtf/BitMap.h: Added.
229
230 2010-07-27  Gavin Barraclough  <barraclough@apple.com>
231
232         Reviewed by Oliver Hunt.
233
234         Bug 42621 - Add a bump allocator for the YARR interpreter
235
236         The regex engine requires lifo allocation, however currently uses the general purpose
237         malloc/free memory allocation.  A simple bump pointer allocator should provide a lower
238         overhead allocation solution.
239
240         * ForwardingHeaders/wtf/BumpPointerAllocator.h: Added.
241
242 2010-07-26  Gavin Barraclough  <barraclough@apple.com>
243
244         Reviewed by Oliver Hunt.
245
246         Bug 43009 - Abstract out page allocation from executable allocators
247
248         * ForwardingHeaders/wtf/PageAllocation.h: Added.
249
250 2010-07-01  Oliver Hunt  <oliver@apple.com>
251
252         Reviewed by Maciej Stachowiak.
253
254         Add a FixedArray template to encapsulate fixed length arrays
255         https://bugs.webkit.org/show_bug.cgi?id=41506
256
257         Add forwarding header.
258
259         * ForwardingHeaders/wtf/FixedArray.h: Added.
260
261 2010-06-02  Gavin Barraclough  <barraclough@apple.com>
262
263         Reviewed by Oliver Hunt.
264
265         Bug 40094 - The return type of NativeFunction should be EncodedJSValue
266         On Windows & Linux, using JSVALUE32_64, EncodedJSValue is returned in registers, but JSValue is not.
267
268         * JSObject.cpp:
269         (nativeCallFunction):
270
271 2010-05-28  Geoffrey Garen  <ggaren@apple.com>
272
273         Reviewed by Sam Weinig, Gavin Barraclough, Oliver Hunt.
274
275         Simplified the host calling convention.
276
277         PART ONE: Functional code changes.
278         
279         [ None in JavaScriptGlue ]
280         
281         PART TWO: Global search and replace.
282         
283         In the areas below, I used global search-and-replace to change
284             (ExecState*, JSObject*, JSValue, const ArgList&) => (ExecState*)
285             args.size() => exec->argumentCount()
286             args.at(i) => exec->argument(i)
287
288         * JSObject.cpp:
289         (nativeCallFunction):
290         * UserObjectImp.cpp:
291         (UserObjectImp::callAsFunction):
292         * UserObjectImp.h:
293
294 2010-04-23  Sam Weinig  <sam@webkit.org>
295
296         Reviewed by David Levin.
297
298         Fix for https://bugs.webkit.org/show_bug.cgi?id=38060
299         Split up Threading.h
300
301         Add necessary forwarding headers.
302
303         * ForwardingHeaders/wtf/Atomics.h: Added.
304         * ForwardingHeaders/wtf/ThreadSafeShared.h: Added.
305         * ForwardingHeaders/wtf/ThreadingPrimitives.h: Added.
306
307 2010-04-22  Sam Weinig  <sam@webkit.org>
308
309         Reviewed by Anders Carlsson.
310
311         Fix for https://bugs.webkit.org/show_bug.cgi?id=38022
312         Move isMainThread predicate function to MainThread.h
313
314         Added forwarding header for MainThread.h
315
316         * ForwardingHeaders/wtf/MainThread.h: Added.
317
318 2010-04-22  Gavin Barraclough  <barraclough@apple.com>
319
320         Rubber stamped by Sam Weinig
321
322         Do not get the globaldata for the APIShim via the
323         global object; global object construction creates identifiers
324         which results in the ASSERTs checking the thread data's
325         identifierTable has been set failing.
326
327         * JSUtils.cpp:
328         (unprotectGlobalObject):
329         (getThreadGlobalData):
330         (getThreadGlobalObject):
331         (JSGlueAPIEntry::JSGlueAPIEntry):
332         (JSGlueAPICallback::~JSGlueAPICallback):
333
334 2010-04-21  Geoffrey Garen  <ggaren@apple.com>
335
336         Reviewed by Sam Weinig.
337
338         <rdar://problem/7879485> Leopard: Crash after opening Software Update dialog
339
340         * JSUtils.cpp:
341         (unprotectGlobalObject): Use the version of JSGlueAPIEntry that doesn't
342         call pthread_getspecific, since it's not safe to call pthread_getspecific
343         from a thread-specific data destructor. (<rdar://problem/7889842>
344         pthread_getspecific returns 0 when called from thread-specific data
345         destructor function)
346
347         (getThreadGlobalObject): Make sure to set the currentIdentifierTable
348         when first constructing our JSGlobalObject, since JSGlueAPIEntry has not
349         yet had an opportunity to do so.
350
351         (JSGlueAPIEntry::JSGlueAPIEntry):
352         * JSUtils.h: New version of JSGlueAPIEntry that doesn't call
353         pthread_getspecific.
354
355 2010-04-21  Gavin Barraclough  <barraclough@apple.com>
356
357         Reviewed by NOBODY (build fix).
358         Errk! tree on fire, add fwd!
359
360         * ForwardingHeaders/wtf/text/StringHash.h: Added.
361
362 2010-04-20  Gavin Barraclough  <barraclough@apple.com>
363
364         Reviewed by Oliver Hunt, Darin Adler.
365
366         Bug 37906 - Remove JSC::UStringImpl; unify with StringImpl.
367         Add forwarding header.
368
369         * ForwardingHeaders/wtf/ASCIICType.h: Added.
370         * ForwardingHeaders/wtf/text/StringImpl.h: Added.
371
372 2010-04-20  Gavin Barraclough  <barraclough@apple.com>
373
374         Reviewed by Oliver Hunt.
375
376         Bug 37895 - Share common code from UStringImplBase with StringImpl
377         Add forwarding header.
378
379         * ForwardingHeaders/wtf/text/StringImplBase.h: Added.
380
381 2010-04-20  Gavin Barraclough  <barraclough@apple.com>
382
383         Rubber stamped by Maciej Stachowiak (relanding r57829).
384         Added missing JS_EXPORTDATA
385
386         * ForwardingHeaders/wtf/WTFThreadData.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/WTFThreadData.h.
387         * JSUtils.cpp:
388         (JSGlueAPIEntry::JSGlueAPIEntry):
389         (JSGlueAPIEntry::~JSGlueAPIEntry):
390         (JSGlueAPICallback::JSGlueAPICallback):
391         (JSGlueAPICallback::~JSGlueAPICallback):
392
393 2010-04-19  Gavin Barraclough  <barraclough@apple.com>
394
395         Reviewed by NOBODY (rolling out r57829).
396         This broke windows.
397
398         * ForwardingHeaders/wtf/WTFThreadData.h: Removed.
399         * JSUtils.cpp:
400         (JSGlueAPIEntry::JSGlueAPIEntry):
401         (JSGlueAPIEntry::~JSGlueAPIEntry):
402         (JSGlueAPICallback::JSGlueAPICallback):
403         (JSGlueAPICallback::~JSGlueAPICallback):
404
405 2010-04-16  Gavin Barraclough  <barraclough@apple.com>
406
407         Reviewed by Sam Weinig.
408
409         https://bugs.webkit.org/show_bug.cgi?id=37745
410         Move string uniquing tables to (new) WTFThreadData class.
411
412         Remove AtomicString's dependency on ThreadGlobalData so that we can move
413         WebCore's string classes up to WTF.
414
415         * ForwardingHeaders/wtf/WTFThreadData.h: Added.
416         * JSUtils.cpp: Update 
417         (JSGlueAPIEntry::JSGlueAPIEntry):
418         (JSGlueAPIEntry::~JSGlueAPIEntry):
419         (JSGlueAPICallback::JSGlueAPICallback):
420         (JSGlueAPICallback::~JSGlueAPICallback):
421
422 2010-03-31  Gavin Barraclough  <barraclough@apple.com>
423
424         Reviewed by Geoff Garen.
425
426         Bug 36871 - Remove JSC::CString
427         Use WTF::CString instead (which until recently was WebCore::CString).
428
429         * ForwardingHeaders/wtf/text: Added.
430         * ForwardingHeaders/wtf/text/CString.h: Added.
431
432 2010-03-11  Mark Rowe  <mrowe@apple.com>
433
434         Reviewed by David Kilzer.
435
436         <rdar://problem/7745082> Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version
437
438         Default to using the appropriate SDK if the target Mac OS X version is not the current Mac OS X version.
439
440         * Configurations/Base.xcconfig:
441
442 2010-03-11  Mark Rowe  <mrowe@apple.com>
443
444         Reviewed by Tim Hatcher.
445
446         <rdar://problem/7745082> Make it possible to build WebKit for older Mac OS X versions from the current Mac OS X version
447
448         Introduce TARGET_MAC_OS_X_VERSION_MAJOR to represent the Mac OS X version that is being targeted.  It defaults to the
449         current Mac OS X version unless otherwise specified.
450
451         Key off TARGET_MAC_OS_X_VERSION_MAJOR where we'd previously been keying off MAC_OS_X_VERSION_MAJOR.
452
453         Explicitly map from the target Mac OS X version to the preferred compiler since Xcode's default compiler choice
454         may not be usable when targetting a different Mac OS X version.
455
456         Key off TARGET_GCC_VERSION rather than MAC_OS_X_VERSION_MAJOR in locations where we'd previously been keying off
457         MAC_OS_X_VERSION_MAJOR but the decision is really related to the compiler version being used.
458
459         * Configurations/Base.xcconfig:
460         * Configurations/DebugRelease.xcconfig:
461         * Configurations/Version.xcconfig:
462         * JavaScriptGlue.xcodeproj/project.pbxproj:
463
464 2010-03-01  Oliver Hunt  <oliver@apple.com>
465
466         Reviewed by Maciej Stachowiak.
467
468         Refactor named getter function signature to be in line with indexing getter signature
469         https://bugs.webkit.org/show_bug.cgi?id=35563
470
471         Fix method signature and update code as appropriate
472
473         * UserObjectImp.cpp:
474         (UserObjectImp::userObjectGetter):
475         * UserObjectImp.h:
476
477 2010-02-09  Alexey Proskuryakov  <ap@apple.com>
478
479         Reviewed by Geoffrey Garen.
480
481         https://bugs.webkit.org/show_bug.cgi?id=34490
482         WebCore::ImageEventSender::dispatchPendingEvents() crashes in certain conditions
483
484         * ForwardingHeaders/wtf/ValueCheck.h: Added.
485
486 2010-02-04  Mark Rowe  <mrowe@apple.com>
487
488         Reviewed by Timothy Hatcher.
489
490         Build fix.  Remove a symbol corresponding to an inline function from the linker export
491         file to prevent a weak external failure.
492
493         * JavaScriptGlue.xcodeproj/project.pbxproj: Accommodate rename of script.
494
495 2010-01-28  Oliver Hunt  <oliver@apple.com>
496
497         Reviewed by Gavin Barraclough.
498
499         Simplify anonymous slot implementation
500         https://bugs.webkit.org/show_bug.cgi?id=34282
501
502         Update JSGlue Structure usage to pass the anonymous slot count.
503
504         * UserObjectImp.h:
505         (UserObjectImp::createStructure):
506
507 2010-01-12  Kent Hansen  <kent.hansen@nokia.com>
508
509         Reviewed by Geoffrey Garen.
510
511         [ES5] Implement Object.getOwnPropertyNames
512         https://bugs.webkit.org/show_bug.cgi?id=32242
513
514         Add new argument to the reimplementation of getOwnPropertyNames().
515
516         * UserObjectImp.cpp:
517         (UserObjectImp::getOwnPropertyNames):
518         * UserObjectImp.h:
519
520 2010-01-07  Alexey Proskuryakov  <ap@apple.com>
521
522         Mac build fix.
523
524         * config.h: Define JS_EXPORTCLASS for JavaScriptGlue.
525
526 2010-01-05  Gavin Barraclough  <barraclough@apple.com>
527
528         Reviewed by Sam Weinig.
529
530         https://bugs.webkit.org/show_bug.cgi?id=33236
531         Remove m_identifierTable pointer from UString
532
533         Add API shims similar to those used in the JSC API to track the current identifierTable.
534
535         * JSBase.cpp:
536         (JSBase::Release):
537         * JSUtils.cpp:
538         (JSObjectKJSValue):
539         (KJSValueToCFTypeInternal):
540         (unprotectGlobalObject):
541         (JSGlueAPIEntry::JSGlueAPIEntry):
542         (JSGlueAPIEntry::~JSGlueAPIEntry):
543         (JSGlueAPICallback::JSGlueAPICallback):
544         (JSGlueAPICallback::~JSGlueAPICallback):
545         * JSUtils.h:
546         * JSValueWrapper.cpp:
547         (JSValueWrapper::JSObjectCopyPropertyNames):
548         (JSValueWrapper::JSObjectCopyProperty):
549         (JSValueWrapper::JSObjectSetProperty):
550         (JSValueWrapper::JSObjectCallFunction):
551         (JSValueWrapper::JSObjectCopyCFValue):
552         * JavaScriptGlue.cpp:
553         (JSRunCreate):
554         (JSRunEvaluate):
555         (JSRunCheckSyntax):
556         (JSCollect):
557         * JavaScriptGlue.xcodeproj/project.pbxproj:
558         * UserObjectImp.cpp:
559         (UserObjectImp::callAsFunction):
560
561 2010-01-04  Gavin Barraclough <barraclough@apple.com>
562
563         Reviewed by Sam Weinig.
564
565         Add a forwarding header so that StringHashFunctions.h can be found.
566
567         * ForwardingHeaders/wtf/StringHashFunctions.h: Added.
568
569 2010-01-04  Dan Bernstein  <mitz@apple.com>
570
571         Reviewed by Ada Chan and Mark Rowe.
572
573         Updated copyright string
574
575         * Info.plist:
576
577 2009-12-21  Gavin Barraclough  <barraclough@apple.com>
578
579         Reviewed by Darin Adler.
580
581         https://bugs.webkit.org/show_bug.cgi?id=32831
582         Replace UString::Rep implementation, following introduction of ropes to JSC.
583
584         * ForwardingHeaders/wtf/PossiblyNull.h: Added.
585             - add forwarding header.
586
587 2009-12-16  Mark Rowe  <mrowe@apple.com>
588
589         Build fix.  Disable debug variants of WebKit frameworks.
590
591         * JavaScriptGlue.xcodeproj/project.pbxproj:
592
593 2009-12-13  Geoffrey Garen  <ggaren@apple.com>
594
595         Reviewed by Sam Weinig.
596         
597         Changed GC from mark-sweep to mark-allocate.
598         
599         * JavaScriptGlue.cpp:
600         (JSCollect): Updated for rename. Fixed a bug where JSGlue would not check
601         to avoid nested GC calls.
602
603 2009-12-08  Dmitry Titov  <dimich@chromium.org>
604
605         Rubber-stamped by David Levin.
606
607         Revert and reopen "Add asserts to RefCounted to make sure ref/deref happens on the right thread."
608         It may have caused massive increase of reported leaks on the bots.
609         https://bugs.webkit.org/show_bug.cgi?id=31639
610
611         * ForwardingHeaders/wtf/ThreadVerifier.h: Removed.
612
613 2009-12-08  Dmitry Titov  <dimich@chromium.org>
614
615         Reviewed by Darin Adler.
616
617         Add asserts to RefCounted to make sure ref/deref happens on the right thread.
618         https://bugs.webkit.org/show_bug.cgi?id=31639
619
620         * ForwardingHeaders/wtf/ThreadVerifier.h: Added.
621
622 2009-11-24  Mark Rowe  <mrowe@apple.com>
623
624         Fix production builds where the source tree may be read-only.
625
626         * JavaScriptGlue.xcodeproj/project.pbxproj:
627
628 2009-11-08  David Levin  <levin@chromium.org>
629
630         Reviewed by NOBODY (chromium build fix).
631
632         Added the use jsc define for files that use
633         this config file and DateMath.h. This should
634         be able to go away when DateMath is properly
635         split into wtf and jsc portions which is this bug:
636         https://bugs.webkit.org/show_bug.cgi?id=31246
637
638         * config.h:
639
640 2009-11-06  Geoffrey Garen  <ggaren@apple.com>
641
642         Reviewed by Oliver Hunt.
643
644         https://bugs.webkit.org/show_bug.cgi?id=31197
645         Implemented a timezone cache not based on Mac OS X's notify_check API.
646         
647         * ForwardingHeaders/wtf/CurrentTime.h: Added.
648
649 2009-10-27  Geoffrey Garen  <ggaren@apple.com>
650
651         Build fix: Updated for JavaScriptCore export changes.
652
653         * ForwardingHeaders/wtf/DateInstanceCache.h: Added.
654
655 2009-10-27  Geoffrey Garen  <ggaren@apple.com>
656
657         Reviewed by Oliver Hunt.
658
659         Updated for JavaScriptCore export changes.
660
661         * ForwardingHeaders/wtf/DateMath.h: Added.
662
663 2009-10-27  Dan Bernstein  <mitz@apple.com>
664
665         Reviewed by Darin Adler.
666
667         Updated license
668
669         * LICENSE:
670
671 2009-10-16  Oliver Hunt  <oliver@apple.com>
672
673         Reviewed by Gavin Barraclough.
674
675         Make typeinfo flags default to false
676         https://bugs.webkit.org/show_bug.cgi?id=30372
677
678         Last part -- replace HasDefaultGetPropertyNames with OverridesGetPropertyNames
679         flag.
680
681         * UserObjectImp.h:
682         (UserObjectImp::createStructure):
683
684 2009-10-15  Oliver Hunt  <oliver@apple.com>
685
686         Reviewed by Darin Adler.
687
688         Make typeinfo flags default to false
689         https://bugs.webkit.org/show_bug.cgi?id=30372
690
691         Part 2 -- Reverse the TypeInfo HasDefaultMark flag to OverridesMarkChildren, etc
692
693         * UserObjectImp.h:
694         (UserObjectImp::createStructure):
695
696 2009-10-14  Oliver Hunt  <oliver@apple.com>
697
698         Reviewed by Geoff Garen.
699
700         Make typeinfo flags default to false
701         https://bugs.webkit.org/show_bug.cgi?id=30372
702         
703         Part 1. Reverse the HasStandardGetOwnPropertySlot flag.
704
705         * UserObjectImp.h:
706         (UserObjectImp::createStructure):
707
708 2009-09-28  Geoffrey Garen  <ggaren@apple.com>
709
710         Reviewed by Sam Weinig.
711
712         Removed virtual destructor from JSGlobalObjectData to eliminate pointer
713         fix-ups when accessing JSGlobalObject::d.
714         
715         Replaced with an explicit destructor function pointer.
716
717         * JSRun.cpp:
718         (JSGlueGlobalObject::destroyData):
719         * JSRun.h:
720         (JSGlueGlobalObject::Data::Data):
721
722 2009-09-12  Oliver Hunt  <oliver@apple.com>
723
724         Reviewed by Maciej Stachowiak.
725
726         [ES5] Implement Object.keys
727         https://bugs.webkit.org/show_bug.cgi?id=29170
728
729         Switch over to getOwnPropertyNames instead of getPropertyNames.
730
731         * UserObjectImp.cpp:
732         (UserObjectImp::getOwnPropertyNames):
733         * UserObjectImp.h:
734
735 2009-09-02  Darin Adler  <darin@apple.com>
736
737         Reviewed by Geoff Garen.
738
739         * JSValueWrapper.cpp:
740         (JSValueWrapper::JSObjectMark): Removed a check of the mark
741         bit. It's OK to do more work in this case, and there is no
742         longer a public function to access the mark bit.
743
744 2009-08-14  Darin Adler  <darin@apple.com>
745
746         Reviewed by Sam Weinig.
747
748         Rename the confusing isObject(<class>) to inherits(<class>).
749         It still works on non-objects, returning false.
750
751         * JSUtils.cpp:
752         (KJSValueToJSObject):
753         (KJSValueToCFTypeInternal):
754         Changed from isObject to inherits.
755
756 2009-08-13  Oliver Hunt  <oliver@apple.com>
757
758         Reviewed by Maciej Stachowiak.
759
760         Devirtualise marking
761         https://bugs.webkit.org/show_bug.cgi?id=28294
762
763         Continue to jump through hoops to deal with the exposed marking routines
764         in JavaScriptGlue.
765
766         * JSValueWrapper.cpp:
767         (JSValueWrapper::JSObjectMark):
768
769 2009-08-07  Oliver Hunt  <oliver@apple.com>
770
771         Reviewed by Sam Weinig.
772
773         Stack overflow crash in JavaScript garbage collector mark pass
774         https://bugs.webkit.org/show_bug.cgi?id=12216
775
776         Make JSGlue interact with the new iterative mark logic.
777
778         * JSValueWrapper.cpp:
779         (JSValueWrapper::JSObjectMark):
780           Unfortunately JSGlue exposes recursive marking so we can only flatten
781           the recursion.  We just create a local mark stack if necessary and mark
782           the given object iteratively from this point.
783         * UserObjectImp.cpp:
784         (UserObjectImp::markChildren):
785         * UserObjectImp.h:
786
787 2009-08-06  Mark Rowe  <mrowe@apple.com>
788
789         Rubber-stamped by Sam Weinig.
790
791         Add explicit dependencies for our build verification scripts to ensure that they always run after linking has completed.
792
793         * JavaScriptGlue.xcodeproj/project.pbxproj:
794
795 2009-07-27  Alexey Proskuryakov  <ap@webkit.org>
796
797         Reviewed by Darin Adler.
798
799         https://bugs.webkit.org/show_bug.cgi?id=27735
800         Give a helpful name to JSLock constructor argument
801
802         * JSBase.cpp:
803         (JSBase::Release):
804         * JSUtils.cpp:
805         (JSObjectKJSValue):
806         (KJSValueToCFTypeInternal):
807         (unprotectGlobalObject):
808         * JSValueWrapper.cpp:
809         (JSValueWrapper::JSObjectCopyPropertyNames):
810         (JSValueWrapper::JSObjectCopyProperty):
811         (JSValueWrapper::JSObjectSetProperty):
812         (JSValueWrapper::JSObjectCallFunction):
813         (JSValueWrapper::JSObjectCopyCFValue):
814         * JavaScriptGlue.cpp:
815         (JSRunCreate):
816         (JSRunEvaluate):
817         (JSRunCheckSyntax):
818         (JSCollect):
819         (JSLockInterpreter):
820         (JSUnlockInterpreter):
821
822 2009-07-10  Adam Roben  <aroben@apple.com>
823
824         Sort all our Xcode projects
825
826         Accomplished using sort-Xcode-project-file.
827
828         Requested by Dave Kilzer.
829
830         * JavaScriptGlue.xcodeproj/project.pbxproj:
831
832 2009-07-08  Darin Adler  <darin@apple.com>
833
834         Reviewed by Dan Bernstein
835
836         - fix <rdar://problem/6971484> REGRESSION (r30534): "Scrolling Credits"
837           effect does not scroll on iMovie 7.1.4 on Tiger
838
839         In <http://trac.webkit.org/changeset/30534>, the prototype of
840         JSObject::put() which UserObjectImp had been overriding changed, but
841         UserObjectImp wasn't updated, so its override was no longer getting
842         called after that.
843
844         * UserObjectImp.cpp:
845         (UserObjectImp::put): Match the current prototype of JSObject::put().
846         The PutPropertySlot argument is unused.
847         * UserObjectImp.h: Ditto.
848
849 2009-06-19  Zoltan Horvath  <hzoltan@inf.u-szeged.hu>
850
851         Reviewed by Darin Adler.
852
853         Add FastAllocBase.h to JavaScriptGlue's ForwardingHeaders/wtf, because it's needed by HashCountedSet.h on MAC.
854
855         * ForwardingHeaders/wtf/FastAllocBase.h: Added.
856
857 2009-06-02  Mark Rowe  <mrowe@apple.com>
858
859         Reviewed by Anders Carlsson.
860
861         Remove workaround that was added to address <rdar://problem/5488678> as it no longer affects our Tiger builds.
862
863         * Configurations/Base.xcconfig:
864
865 2009-05-25  David Levin  <levin@chromium.org>
866
867         Reviewed by Maciej Stachowiak and Oliver Hunt.
868
869         https://bugs.webkit.org/show_bug.cgi?id=25126
870
871         Added forwarding headers.
872
873         * ForwardingHeaders/wtf/CrossThreadRefCounted.h: Added.
874         * ForwardingHeaders/wtf/OwnFastMallocPtr.h: Added.
875
876 2009-05-23  David Kilzer  <ddkilzer@apple.com>
877
878         Part 1 of 2: Bug 25495: Implement PassOwnPtr and replace uses of std::auto_ptr
879
880         <https://bugs.webkit.org/show_bug.cgi?id=25495>
881
882         Reviewed by Oliver Hunt.
883
884         * ForwardingHeaders/wtf/OwnPtrCommon.h: Added.
885         * ForwardingHeaders/wtf/PassOwnPtr.h: Added.
886
887 2009-05-14  Mark Rowe  <mrowe@apple.com>
888
889         Rubber-stamped by Darin Adler.
890
891         <rdar://problem/6681868> When building with Xcode 3.1.3 should be using gcc 4.2
892
893         The meaning of XCODE_VERSION_ACTUAL is more sensible in newer versions of Xcode.
894         Update our logic to select the compiler version to use the more appropriate XCODE_VERSION_MINOR
895         if the version of Xcode supports it, and fall back to XCODE_VERSION_ACTUAL if not.
896
897         * Configurations/Base.xcconfig:
898
899 2009-05-07  Oliver Hunt  <oliver@apple.com>
900
901         Reviewed by Gavin Barraclough.
902
903         Add calling convention annotation
904
905         * JSObject.cpp:
906
907 2009-05-01  Geoffrey Garen  <ggaren@apple.com>
908
909         Rubber Stamped by Sam Weinig.
910         
911         Renamed JSValuePtr => JSValue.
912
913         * JSObject.cpp:
914         (nativeCallFunction):
915         * JSUtils.cpp:
916         (KJSValueToJSObject):
917         (JSObjectKJSValue):
918         (KJSValueToCFTypeInternal):
919         (KJSValueToCFType):
920         * JSUtils.h:
921         * JSValueWrapper.cpp:
922         (JSValueWrapper::JSValueWrapper):
923         (JSValueWrapper::GetValue):
924         (JSValueWrapper::JSObjectCopyProperty):
925         (JSValueWrapper::JSObjectSetProperty):
926         (JSValueWrapper::JSObjectCallFunction):
927         * JSValueWrapper.h:
928         * UserObjectImp.cpp:
929         (UserObjectImp::callAsFunction):
930         (UserObjectImp::userObjectGetter):
931         (UserObjectImp::getOwnPropertySlot):
932         (UserObjectImp::put):
933         (UserObjectImp::toPrimitive):
934         * UserObjectImp.h:
935         (UserObjectImp::createStructure):
936
937 2009-04-29  Oliver Hunt  <oliver@apple.com>
938
939         Reviewed by Gavin Barraclough.
940
941         Clean up ArgList to be a trivial type
942
943         Start using MarkedArgumentBuffer to create argument lists for function calls
944
945         * JSValueWrapper.cpp:
946         (JSValueWrapper::JSObjectCallFunction):
947
948 2009-04-28  Geoffrey Garen  <ggaren@apple.com>
949
950         Rubber stamped by Beth Dakin.
951         
952         Missed one.
953
954         * UserObjectImp.cpp:
955         (UserObjectImp::callAsFunction):
956
957 2009-04-21  Geoffrey Garen  <ggaren@apple.com>
958
959         Reviewed by Mark Rowe.
960
961         Tiger crash fix: Put VM tags in their own header file, and fixed up the
962         #ifdefs so they're not used on Tiger.
963
964         * ForwardingHeaders/wtf/VMTags.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/HashTraits.h.
965
966 2009-04-20  Sam Weinig  <sam@webkit.org>
967
968         Rubber-stamped by Tim Hatcher.
969
970         Add licenses for xcconfig files.
971
972         * Configurations/Base.xcconfig:
973         * Configurations/DebugRelease.xcconfig:
974         * Configurations/JavaScriptGlue.xcconfig:
975         * Configurations/Version.xcconfig:
976
977 2009-03-13  Mark Rowe  <mrowe@apple.com>
978
979         Rubber-stamped by Dan Bernstein.
980
981         Take advantage of the ability of recent versions of Xcode to easily switch the active
982         architecture.
983
984         * Configurations/DebugRelease.xcconfig:
985
986 2009-02-24  Mark Rowe  <mrowe@apple.com>
987
988         Rubber-stamped by Dan Bernstein.
989
990         <rdar://problem/6407844> JavaScriptGlue should use -Os rather than -O2
991
992         * Configurations/Base.xcconfig:
993
994 2009-01-28  Sam Weinig  <sam@webkit.org>
995
996         Reviewed by Gavin Barraclough.
997
998         Fix for <rdar://problem/6525537>
999         Hang occurs when closing Installer window (iTunes, Aperture)
1000
1001         * JSUtils.cpp:
1002         (getThreadGlobalObject): Use the shared JSGlobalData instance.
1003
1004 2009-01-22  Mark Rowe  <mrowe@apple.com>
1005
1006         Rubber-stamped by Anders Carlsson.
1007
1008         Disable GCC_WARN_ABOUT_MISSING_PROTOTYPES temporarily.
1009
1010         Current versions of Xcode only respect it for C and Objective-C files,
1011         and our code doesn't currently compile if it is applied to C++ and
1012         Objective-C++ files.
1013
1014         * Configurations/Base.xcconfig:
1015
1016 2009-01-19  Sam Weinig  <sam@webkit.org>
1017
1018         Rubber-stamped by Gavin Barraclough.
1019
1020         Remove temporary operator-> from JSValuePtr.
1021
1022         * JSUtils.cpp:
1023         (KJSValueToJSObject):
1024         (KJSValueToCFTypeInternal):
1025         * JSValueWrapper.cpp:
1026         (JSValueWrapper::JSObjectCopyPropertyNames):
1027         (JSValueWrapper::JSObjectCopyProperty):
1028         (JSValueWrapper::JSObjectSetProperty):
1029         (JSValueWrapper::JSObjectCallFunction):
1030         (JSValueWrapper::JSObjectMark):
1031         * UserObjectImp.cpp:
1032         (UserObjectImp::getOwnPropertySlot):
1033
1034 2009-01-14  Dan Bernstein  <mitz@apple.com>
1035
1036         Reviewed by John Sullivan.
1037
1038         - update copyright
1039
1040         * Info.plist:
1041
1042 2009-01-09  David Levin  <levin@chromium.org>
1043
1044         Reviewed by Oliver Hunt.
1045
1046         https://bugs.webkit.org/show_bug.cgi?id=23175
1047
1048         Added forwarding header.
1049
1050         * ForwardingHeaders/wtf/PtrAndFlags.h: Added.
1051
1052 2009-01-05  Gavin Barraclough  <baraclough@apple.com>
1053
1054         Rubber Stamped by Oliver Hunt.
1055
1056         Replace all uses of JSValue* with new wrapper class, JSValuePtr.
1057         See JavaScriptCore/ChangeLog for more detailed description.
1058
1059         * JSObject.cpp:
1060         (nativeCallFunction):
1061         * JSUtils.cpp:
1062         (KJSValueToJSObject):
1063         (JSObjectKJSValue):
1064         (KJSValueToCFTypeInternal):
1065         (KJSValueToCFType):
1066         * JSUtils.h:
1067         * JSValueWrapper.cpp:
1068         (JSValueWrapper::JSValueWrapper):
1069         (JSValueWrapper::GetValue):
1070         (JSValueWrapper::JSObjectCopyProperty):
1071         (JSValueWrapper::JSObjectSetProperty):
1072         (JSValueWrapper::JSObjectCallFunction):
1073         * JSValueWrapper.h:
1074         * UserObjectImp.cpp:
1075         (UserObjectImp::callAsFunction):
1076         (UserObjectImp::userObjectGetter):
1077         (UserObjectImp::getOwnPropertySlot):
1078         (UserObjectImp::put):
1079         (UserObjectImp::toPrimitive):
1080         * UserObjectImp.h:
1081         (UserObjectImp::createStructure):
1082
1083 2008-12-15  Mark Rowe  <mrowe@apple.com>
1084
1085         Rubber-stamped by Cameron Zwarich.
1086
1087         <rdar://problem/6289933> Change WebKit-related projects to build with GCC 4.2 on Leopard.
1088
1089         * Configurations/Base.xcconfig:
1090         * Configurations/DebugRelease.xcconfig:
1091
1092 2008-12-08  David Kilzer  <ddkilzer@apple.com>
1093
1094         Bug 22555: Sort "children" sections in Xcode project files
1095
1096         <https://bugs.webkit.org/show_bug.cgi?id=22555>
1097
1098         Reviewed by Eric Seidel.
1099
1100         * JavaScriptGlue.xcodeproj/project.pbxproj: Sorted.
1101
1102 2008-11-17  Geoffrey Garen  <ggaren@apple.com>
1103
1104         Reviewed by Sam Weinig.
1105         
1106         Updated for JavaScriptCore rename.
1107
1108         * ForwardingHeaders/runtime/CallFrame.h: Copied from JavaScriptGlue/ForwardingHeaders/runtime/ExecState.h.
1109         * ForwardingHeaders/runtime/ExecState.h: Removed.
1110         * config.h:
1111
1112 2008-11-17  Geoffrey Garen  <ggaren@apple.com>
1113
1114         Reviewed by Sam Weinig.
1115         
1116         Updated for JavaScriptCore rename.
1117
1118         * ForwardingHeaders/interpreter: Added.
1119         * ForwardingHeaders/interpreter/CallFrame.h: Copied from ForwardingHeaders/runtime/ExecState.h.
1120         * ForwardingHeaders/runtime/ExecState.h: Removed.
1121
1122 2008-11-15  Darin Adler  <darin@apple.com>
1123
1124         Rubber stamped by Geoff Garen.
1125
1126         - do the long-planned StructureID -> Structure rename
1127
1128         * JSRun.cpp:
1129         (JSGlueGlobalObject::JSGlueGlobalObject):
1130         (JSRun::JSRun):
1131         * JSRun.h:
1132         (JSGlueGlobalObject::userObjectStructure):
1133         * JSUtils.cpp:
1134         (getThreadGlobalObject):
1135         * UserObjectImp.cpp:
1136         (UserObjectImp::UserObjectImp):
1137         * UserObjectImp.h:
1138         (UserObjectImp::createStructure):
1139
1140 2008-11-15  Geoffrey Garen  <ggaren@apple.com>
1141
1142         Reviewed by Sam Weinig.
1143         
1144         Updated for JavaScriptCore renames.
1145
1146         * JSRun.cpp:
1147         (JSRun::Evaluate):
1148         (JSRun::CheckSyntax):
1149
1150 2008-11-05  Cameron Zwarich  <zwarich@apple.com>
1151
1152         Not reviewed.
1153
1154         Fix the JavaScriptGlue build. This wouldn't show up unless one was
1155         doing a clean build, because changes in JavaScriptCore don't cause
1156         anything in JavaScriptGlue to get rebuilt.
1157
1158         * JSRun.cpp:
1159         * JSUtils.h:
1160         * JavaScriptGlue.cpp:
1161
1162 2008-11-04  Cameron Zwarich  <zwarich@apple.com>
1163
1164         Reviewed by Mark Rowe.
1165
1166         Remove JavaScriptGlue forwarding headers that are no longer necessary,
1167         and correct the path of the ExecState.h forwarding header.
1168
1169         * ForwardingHeaders/kjs: Removed.
1170         * ForwardingHeaders/kjs/CTI.h: Removed.
1171         * ForwardingHeaders/kjs/ExecState.h: Removed.
1172         * ForwardingHeaders/kjs/JSValue.h: Removed.
1173         * ForwardingHeaders/kjs/PutPropertySlot.h: Removed.
1174         * ForwardingHeaders/kjs/ustring.h: Removed.
1175         * ForwardingHeaders/runtime: Added.
1176         * ForwardingHeaders/runtime/ExecState.h: Copied from ForwardingHeaders/kjs/ExecState.h.
1177         * config.h:
1178
1179 2008-10-31  Stephanie Lewis  <slewis@apple.com>
1180
1181         Fix build by including right files.
1182
1183         * JSRun.cpp:
1184
1185 2008-10-30  Mark Rowe  <mrowe@apple.com>
1186
1187         Reviewed by Jon Homeycutt.
1188
1189         Explicitly default to building for only the native architecture in debug and release builds.
1190
1191         * Configurations/DebugRelease.xcconfig:
1192
1193 2008-10-24  Darin Adler  <darin@apple.com>
1194
1195         - finish rolling out https://bugs.webkit.org/show_bug.cgi?id=21732
1196
1197         * JSObject.cpp:
1198         (nativeCallFunction):
1199         * JSUtils.cpp:
1200         (KJSValueToJSObject):
1201         (JSObjectKJSValue):
1202         (KJSValueToCFTypeInternal):
1203         (KJSValueToCFType):
1204         * JSUtils.h:
1205         * JSValueWrapper.cpp:
1206         (JSValueWrapper::JSValueWrapper):
1207         (JSValueWrapper::GetValue):
1208         (JSValueWrapper::JSObjectCopyProperty):
1209         (JSValueWrapper::JSObjectSetProperty):
1210         (JSValueWrapper::JSObjectCallFunction):
1211         * JSValueWrapper.h:
1212         * UserObjectImp.cpp:
1213         (UserObjectImp::callAsFunction):
1214         (UserObjectImp::userObjectGetter):
1215         (UserObjectImp::getOwnPropertySlot):
1216         (UserObjectImp::put):
1217         (UserObjectImp::toPrimitive):
1218         * UserObjectImp.h:
1219         (UserObjectImp::createStructureID):
1220         Use JSValue* instead of JSValuePtr.
1221
1222 2008-10-23  Darin Adler  <darin@apple.com>
1223
1224         - roll out https://bugs.webkit.org/show_bug.cgi?id=21732
1225
1226         * JSValueWrapper.cpp:
1227         (JSValueWrapper::GetValue): Added missing call to .get().
1228         * JSValueWrapper.h: ProtectedPtr<JSValue> instead of ProtectedPtr<JSValuePtr>.
1229
1230 2008-10-22  Darin Adler  <darin@apple.com>
1231
1232         Reviewed by Sam Weinig.
1233
1234         - fix https://bugs.webkit.org/show_bug.cgi?id=21294
1235           Bug 21294: Devirtualize getOwnPropertySlot()
1236
1237         * JSRun.cpp:
1238         (JSGlueGlobalObject::JSGlueGlobalObject): Moved constructor here.
1239         Set up flags in its new location in global object data, and set up
1240         a structure for UserObjectImp too.
1241         (JSRun::JSRun): Added code to give the JSGlueGlobalObject its own unique
1242         structure, rather than using the default one from JSGlobalObject.
1243
1244         * JSRun.h: Made JSGlueGlobalObject take a structure ID. Also moved
1245         the data into a separate data object. And added userObjectStructure,
1246         a Structure to be used by UserObjectImp.
1247
1248         * JSUtils.cpp: Removed unused sharedGlobalData global.
1249         (JSObjectKJSValue): Pass Structure in when creating UserObjectImp.
1250         (unprotectGlobalObject): Use JSGlueGLobalObject type specifically.
1251         (initializeGlobalObjectKey): Removed code to set up unused sharedGlobalData.
1252         (getThreadGlobalObject): Added. Shared by JSObjectKJSValue and
1253         getThreadGlobalExecState. Also now passes in a structure ID when creating
1254         the global object.
1255         (getThreadGlobalExecState): Changed to call getThreadGlobalObject.
1256
1257         * UserObjectImp.cpp:
1258         (UserObjectImp::UserObjectImp): Changed to take a structure.
1259         * UserObjectImp.h:
1260         (UserObjectImp::createStructureID): Added. Returns a structure without
1261         HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
1262
1263 2008-10-20  Sam Weinig  <sam@webkit.org>
1264
1265         Reviewed by Cameron Zwarich.
1266
1267         Fix for https://bugs.webkit.org/show_bug.cgi?id=21766
1268         REGRESSION: 12 JSC tests fail
1269
1270         The JSGlobalObject constructor no longer takes a JSGlobalData
1271         as an argument.
1272
1273         * JSRun.cpp:
1274         (JSRun::JSRun):
1275         * JSRun.h:
1276         (JSGlueGlobalObject::JSGlueGlobalObject):
1277         * JSUtils.cpp:
1278         (getThreadGlobalExecState):
1279
1280 2008-10-19  Darin Adler  <darin@apple.com>
1281
1282         Reviewed by Oliver Hunt.
1283
1284         - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
1285           improve performance by eliminating JSValue as a base class for JSCell
1286
1287         Remove most uses of JSValue, which will be removed in a future patch.
1288
1289         * JSValueWrapper.h: Use JSValuePtr instead of JSValue*.
1290
1291 2008-10-18  Darin Adler  <darin@apple.com>
1292
1293         Reviewed by Oliver Hunt.
1294
1295         - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
1296           improve performance by eliminating JSValue as a base class for JSCell
1297
1298         Tweak a little more to get closer to where we can make JSValuePtr a class.
1299
1300         * JSObject.cpp:
1301         (nativeCallFunction): Call asObject.
1302
1303         * JSUtils.cpp:
1304         (KJSValueToJSObject): Use JSValuePtr and asObject.
1305         (JSObjectKJSValue): Ditto.
1306         (KJSValueToCFTypeInternal): Ditto.
1307         (KJSValueToCFType): Ditto.
1308         * JSUtils.h: Ditto.
1309
1310         * UserObjectImp.cpp:
1311         (UserObjectImp::callAsFunction): Use JSValuePtr and asObject.
1312         (UserObjectImp::userObjectGetter): Ditto.
1313         (UserObjectImp::getOwnPropertySlot): Ditto.
1314         (UserObjectImp::put): Ditto.
1315         (UserObjectImp::toPrimitive): Ditto.
1316         * UserObjectImp.h: Ditto.
1317
1318 2008-10-18  Darin Adler  <darin@apple.com>
1319
1320         Reviewed by Cameron Zwarich.
1321
1322         - next step on https://bugs.webkit.org/show_bug.cgi?id=21732
1323           improve performance by eliminating JSValue as a base class for JSCell
1324
1325         Use JSValuePtr everywhere instead of JSValue*. In the future, we'll be
1326         changing JSValuePtr to be a class, and then eventually renaming it
1327         to JSValue once that's done.
1328
1329         * JSObject.cpp:
1330         * JSValueWrapper.cpp:
1331         * UserObjectImp.cpp:
1332         * UserObjectImp.h:
1333         Replace JSValue* with JSValuePtr.
1334
1335 2008-10-13  Maciej Stachowiak  <mjs@apple.com>
1336
1337         Rubber stamped by Mark Rowe.
1338         
1339         - use gcc 4.2 when building with Xcode 3.1 or newer on Leopard, even though this is not the default
1340
1341         * Configurations/DebugRelease.xcconfig:
1342
1343 2008-10-06  Maciej Stachowiak  <mjs@apple.com>
1344
1345         Not reviewed. Build fix.
1346
1347         - revert toBoolean changes (r37333 and r37335); need to make WebCore work with these
1348
1349         * JSUtils.cpp:
1350         (KJSValueToCFTypeInternal):
1351
1352 2008-10-06  Maciej Stachowiak  <mjs@apple.com>
1353
1354         Not reviewed.
1355         
1356         - fix build; toBoolean no longer takes an ExecState
1357
1358         * JSUtils.cpp:
1359         (KJSValueToCFTypeInternal):
1360
1361 2008-10-04  Mark Rowe  <mrowe@apple.com>
1362
1363         Reviewed by Tim Hatcher.
1364
1365         Add a 'Check For Weak VTables' build phase to catch weak vtables as early as possible.
1366
1367         * JavaScriptGlue.xcodeproj/project.pbxproj:
1368
1369 2008-10-01  Geoffrey Garen  <ggaren@apple.com>
1370
1371         Reviewed by Darin Adler and Cameron Zwarich.
1372
1373         * JSRun.cpp:
1374         (JSRun::Evaluate):
1375         (JSRun::CheckSyntax): Provide a SourceCode to the Interpreter, since
1376         other APIs are no longer supported.
1377
1378 2008-09-29  Geoffrey Garen  <ggaren@apple.com>
1379
1380         Not reviewed.
1381         
1382         Forwarding headers to fix the build.
1383
1384         * ForwardingHeaders/kjs/CTI.h: Copied from ForwardingHeaders/kjs/ExecState.h.
1385         * ForwardingHeaders/kjs/ustring.h: Copied from ForwardingHeaders/kjs/ExecState.h.
1386         * ForwardingHeaders/masm: Added.
1387         * ForwardingHeaders/masm/X86Assembler.h: Added.
1388         * ForwardingHeaders/profiler: Added.
1389         * ForwardingHeaders/profiler/Profiler.h: Added.
1390
1391 2008-09-08  Sam Weinig  <sam@webkit.org>
1392
1393         Reviewed by Maciej Stachowiak and Oliver Hunt.
1394
1395         Add forwarding headers.
1396
1397         * ForwardingHeaders/wtf/HashFunctions.h: Added.
1398         * ForwardingHeaders/wtf/HashTraits.h: Added.
1399
1400 2008-09-02  Geoffrey Garen  <ggaren@apple.com>
1401
1402         Reviewed by Sam Weinig.
1403         
1404         Implemented the rest of Darin's review comments for the 09-01 inline
1405         caching patch.
1406         
1407         * ForwardingHeaders/kjs/PutPropertySlot.h: Added.
1408
1409 2008-09-01  Geoffrey Garen  <ggaren@apple.com>
1410
1411         Reviewed by Darin Adler.
1412
1413         First cut at inline caching for access to vanilla JavaScript properties.
1414         
1415         Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
1416         to JavaScriptGlue classes, and PutPropertySlot& arguments to put functions.
1417
1418 2008-08-22  Anders Carlsson  <andersca@apple.com>
1419
1420         Fix build for real this time.
1421         
1422         * UserObjectImp.h:
1423
1424 2008-08-22  Anders Carlsson  <andersca@apple.com>
1425
1426         Fix build.
1427         
1428         * UserObjectImp.cpp:
1429         (UserObjectImp::toPrimitive):
1430         * UserObjectImp.h:
1431
1432 2008-08-19  Alexey Proskuryakov  <ap@webkit.org>
1433
1434         Reviewed by Geoff Garen.
1435
1436         Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
1437
1438         * JSBase.cpp:
1439         (JSBase::Release):
1440         * JSUtils.cpp:
1441         (JSObjectKJSValue):
1442         (KJSValueToCFTypeInternal):
1443         (unprotectGlobalObject):
1444         * JSUtils.h:
1445         * JSValueWrapper.cpp:
1446         (JSValueWrapper::JSObjectCopyPropertyNames):
1447         (JSValueWrapper::JSObjectCopyProperty):
1448         (JSValueWrapper::JSObjectSetProperty):
1449         (JSValueWrapper::JSObjectCallFunction):
1450         (JSValueWrapper::JSObjectCopyCFValue):
1451         * JavaScriptGlue.cpp:
1452         (JSRunCreate):
1453         (JSRunEvaluate):
1454         (JSRunCheckSyntax):
1455         (JSCollect):
1456         (JSLockInterpreter):
1457         (JSUnlockInterpreter):
1458         * UserObjectImp.cpp:
1459         (UserObjectImp::callAsFunction):
1460
1461 2008-08-12  Darin Adler  <darin@apple.com>
1462
1463         Reviewed by Geoff.
1464
1465         - eliminate JSValue::type()
1466
1467         * JSUtils.cpp:
1468         (KJSValueToCFTypeInternal): Replaced uses of JSValue::type() with
1469         JSValue::is functions.
1470         * UserObjectImp.cpp:
1471         (UserObjectImp::getOwnPropertySlot): Ditto.
1472         (UserObjectImp::toPrimitive): Take PreferredPrimitiveType argument
1473         instead of JSType argument.
1474         * UserObjectImp.h: Ditto.
1475
1476 2008-08-17  Geoffrey Garen  <ggaren@apple.com>
1477
1478         Reviewed by Cameron Zwarich.
1479         
1480         Updated project files to XCode 3.1.
1481
1482         * JavaScriptGlue.xcodeproj/project.pbxproj:
1483
1484 2008-08-15  Mark Rowe  <mrowe@apple.com>
1485
1486         Rubber-stamped by Geoff Garen.
1487
1488         <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
1489
1490         * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
1491         between the Debug configuration and debug Production variant.
1492         * JavaScriptGlue.xcodeproj/project.pbxproj: Enable the debug variant.
1493
1494 2008-07-31  Alexey Proskuryakov  <ap@webkit.org>
1495
1496         Rubber-stamped by Maciej.
1497
1498         Eliminate JSLock (it was already disabled, removing the stub implementaion and all
1499         call sites now).
1500
1501         * JSBase.cpp:
1502         (JSBase::Release):
1503         * JSUtils.cpp:
1504         (JSObjectKJSValue):
1505         (KJSValueToCFTypeInternal):
1506         (unprotectGlobalObject):
1507         * JSUtils.h:
1508         * JSValueWrapper.cpp:
1509         (JSValueWrapper::JSObjectCopyPropertyNames):
1510         (JSValueWrapper::JSObjectCopyProperty):
1511         (JSValueWrapper::JSObjectSetProperty):
1512         (JSValueWrapper::JSObjectCallFunction):
1513         (JSValueWrapper::JSObjectCopyCFValue):
1514         * JavaScriptGlue.cpp:
1515         (JSRunCreate):
1516         (JSRunEvaluate):
1517         (JSRunCheckSyntax):
1518         (JSCollect):
1519         (JSLockInterpreter):
1520         (JSUnlockInterpreter):
1521         * UserObjectImp.cpp:
1522         (UserObjectImp::callAsFunction):
1523
1524 2008-07-29  Alexey Proskuryakov  <ap@webkit.org>
1525
1526         Reviewed by Geoff Garen.
1527
1528         Implement JSContextGroup APIs to make concurrent execution possible for
1529         JavaScriptCore clients.
1530
1531         * JSRun.cpp:
1532         (JSRun::JSRun):
1533         * JSUtils.cpp:
1534         (getThreadGlobalExecState):
1535         Changed JavaScriptGlue to use a JSGlobalData of its own, now that there is no shared
1536         instance.
1537
1538 2008-07-23  Alexey Proskuryakov  <ap@webkit.org>
1539
1540         Reviewed by Geoff Garen.
1541
1542         Make JSClassRef work with any context, not just the first one it was used in.
1543
1544         * ForwardingHeaders/wtf/HashMap.h: Added.
1545
1546 2008-07-22  Geoffrey Garen  <ggaren@apple.com>
1547
1548         Reviewed by Oliver Hunt and Sam Weinig.
1549
1550         Next step toward putting doubles in registers: Prepare the Register class
1551         and its clients for registers that don't contain JSValue*s.
1552         
1553 2008-07-21  Mark Rowe  <mrowe@apple.com>
1554
1555         Reviewed by Sam Weinig.
1556
1557         <rdar://problem/6091287> Revamp the handling of CFBundleShortVersionString to be fixed at the major component of the version number.
1558
1559         * Configurations/Version.xcconfig:
1560         * Info.plist:
1561
1562 2008-07-18  Geoffrey Garen  <ggaren@apple.com>
1563
1564         Reviewed by Cameron Zwarich.
1565         
1566         Three renames:
1567         
1568         "CallTypeNative" => "CallTypeHost"
1569         "code" => "byteCode"
1570         "generatedCode" => "generatedByteCode"
1571
1572         * ChangeLog:
1573         * JSObject.cpp:
1574         (JSUserObject::getCallData):
1575
1576 2008-07-14  Alexey Proskuryakov  <ap@webkit.org>
1577
1578         Reviewed by Geoff Garen.
1579
1580         Eliminate per-thread JavaScript global data instance support and make arbitrary
1581         global data/global object combinations possible.
1582
1583         * ForwardingHeaders/wtf/ThreadSpecific.h: Added.
1584         * JSRun.cpp:
1585         (JSRun::JSRun):
1586         * JSUtils.cpp:
1587         (getThreadGlobalExecState):
1588         Adapt to the new way of asking for shared JSGlobalData.
1589
1590 2008-07-10  Mark Rowe  <mrowe@apple.com>
1591
1592         Reviewed by Sam Weinig.
1593
1594         Define WEBKIT_VERSION_MIN_REQUIRED=WEBKIT_VERSION_LATEST when building WebKit to ensure that no symbols end up with the weak_import attribute.
1595
1596         * Configurations/JavaScriptGlue.xcconfig:
1597
1598 2008-07-09  Mark Rowe  <mrowe@apple.com>
1599
1600         Reviewed by Geoff Garen.
1601
1602         Don't warn about deprecated functions in production builds.
1603
1604         * Configurations/Base.xcconfig:
1605         * Configurations/DebugRelease.xcconfig:
1606
1607 2008-07-08  Alexey Proskuryakov  <ap@webkit.org>
1608
1609         Reviewed by Darin Adler.
1610
1611         <rdar://problem/6058368> REGRESSION: Crash occurs in KJS::Machine after launching
1612         Apple Installer
1613
1614         The problem was that JSUserObject::getCallData() was setting call type to native, but
1615         left callData.native.function uninitialized.
1616
1617         * JSObject.cpp:
1618         (JSUserObject::getCallData): Initialize callData.native.function.
1619         (nativeCallFunction): Call UserObjectImp::callAsFunction().
1620
1621 2008-07-04  Sam Weinig  <sam@webkit.org>
1622
1623         Rubber-stamped by Dan Bernstein.
1624
1625         * JSObject.h: Rename the header guard as it now conflicts with the
1626         JSObject in JavaScriptCore.
1627
1628 2008-07-01  Alexey Proskuryakov  <ap@webkit.org>
1629
1630         Reviewed by Darin Adler.
1631
1632         Disable JSLock for per-thread contexts.
1633
1634         * ForwardingHeaders/wtf/Locker.h: Added.
1635         * ForwardingHeaders/wtf/Threading.h: Added.
1636         * JSBase.cpp:
1637         (JSBase::Release):
1638         * JSUtils.cpp:
1639         (JSObjectKJSValue):
1640         (KJSValueToCFTypeInternal):
1641         (unprotectGlobalObject):
1642         * JSUtils.h:
1643         * JSValueWrapper.cpp:
1644         (JSValueWrapper::JSObjectCopyPropertyNames):
1645         (JSValueWrapper::JSObjectCopyProperty):
1646         (JSValueWrapper::JSObjectSetProperty):
1647         (JSValueWrapper::JSObjectCallFunction):
1648         (JSValueWrapper::JSObjectCopyCFValue):
1649         * JavaScriptGlue.cpp:
1650         (JSRunCreate):
1651         (JSRunEvaluate):
1652         (JSRunCheckSyntax):
1653         (JSCollect):
1654         (JSLockInterpreter):
1655         (JSUnlockInterpreter):
1656         * UserObjectImp.cpp:
1657         (UserObjectImp::callAsFunction):
1658         Pass a parameter (always true) to JSLock and JSLock::DropAllLocks to indicate that JSG
1659         clients always need implicit mutex protection.
1660         Added includes that are now needed.
1661
1662 2008-06-26  Darin Adler  <darin@apple.com>
1663
1664         Reviewed by Geoff.
1665
1666         * JSUtils.cpp: Added include of <JavaScriptCore/JSString.h> since jsString
1667         will soon be changed to return a JSString*.
1668         * UserObjectImp.cpp: Ditto.
1669
1670 2008-06-23  Darin Adler  <darin@apple.com>
1671
1672         Reviewed by Geoff.
1673
1674         * JSValueWrapper.cpp:
1675         (JSValueWrapper::JSObjectCallFunction): Updated to use getCallData and call instead
1676         of the old callAsFunction.
1677
1678 2008-06-17  Alexey Proskuryakov  <ap@webkit.org>
1679
1680         Reviewed by Darin Adler.
1681
1682         Prepare JavaScript heap for being per-thread.
1683
1684         * JSRun.cpp: (JSRun::JSRun): Create JSGlueGlobalObject in a shared JS heap.
1685
1686         * JSUtils.h: Made getThreadGlobalExecState available throughout JSGlue.
1687
1688         * JSUtils.cpp:
1689         (JSObjectKJSValue): Pass an ExecState where now required.
1690         (unprotectGlobalObject):
1691         (initializeGlobalObjectKey):
1692         (getThreadGlobalExecState):
1693         Moved these functions from JSValueWrapper.cpp, as the global exec state is now needed
1694         elsewhere. I'm not quite sure how this relates to the global object from JSRun, but
1695         since the new uses are all for Heap access, there doesn't seem to be any behavior change.
1696
1697         * JavaScriptGlue.cpp:
1698         (JSLockInterpreter): Don't call registerThread explicitly, as JSLock will do that.
1699
1700         * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState* where now required.
1701
1702 2008-06-17  Mark Rowe  <mrowe@apple.com>
1703
1704         Reviewed by Darin Adler.
1705
1706         <rdar://problem/5775802> JavaScriptGlue should not force use of GCC 4.0.
1707
1708         * JavaScriptGlue.xcodeproj/project.pbxproj:
1709
1710 2008-06-16  Maciej Stachowiak  <mjs@apple.com>
1711
1712         Reviewed by Alexey.
1713
1714         - removed nearly unused types.h and LocalStorageEntry.h headers
1715
1716         * JSUtils.h:
1717
1718 2008-06-16  Alexey Proskuryakov  <ap@webkit.org>
1719
1720         Reviewed by Geoff Garen.
1721
1722         Make Identifier construction use an explicitly passed IdentifierTable.
1723
1724         * JSUtils.cpp:
1725         (CFStringToIdentifier):
1726         (KJSValueToCFTypeInternal):
1727         * JSUtils.h:
1728         * JSValueWrapper.cpp:
1729         (JSValueWrapper::JSObjectCopyPropertyNames):
1730         (JSValueWrapper::JSObjectCopyProperty):
1731         (JSValueWrapper::JSObjectSetProperty):
1732         * UserObjectImp.cpp:
1733         (UserObjectImp::getPropertyNames):
1734         Pass ExecState or JSGlobalData everywhere.
1735
1736 2008-06-15  Darin Adler  <darin@apple.com>
1737
1738         - rename KJS::List to KJS::ArgList
1739
1740         * JSValueWrapper.cpp:
1741         (JSValueWrapper::JSObjectCallFunction):
1742         * UserObjectImp.cpp:
1743         (UserObjectImp::callAsFunction):
1744         * UserObjectImp.h:
1745
1746 2008-06-15  Darin Adler  <darin@apple.com>
1747
1748         - new names for a few key JavaScriptCore files
1749
1750         * ForwardingHeaders/kjs/JSValue.h: Copied from JavaScriptGlue/ForwardingHeaders/kjs/value.h.
1751         * ForwardingHeaders/kjs/value.h: Removed.
1752         * JSUtils.h:
1753
1754 2008-06-03  Darin Adler  <darin@apple.com>
1755
1756         - update for JavaScriptCore changes for https://bugs.webkit.org/show_bug.cgi?id=19269
1757           speed up SunSpider by eliminating the toObject call for most get/put/delete
1758
1759         * UserObjectImp.cpp:
1760         (UserObjectImp::userObjectGetter): Removed originalObject argument.
1761         * UserObjectImp.h: Ditto.
1762
1763 2008-06-02  Geoffrey Garen  <ggaren@apple.com>
1764
1765         Reviewed by Alexey Proskuryakov.
1766
1767         Removed JSObject::call, since it just called JSObject::callAsFunction.
1768
1769         SunSpider reports no change.
1770
1771 2008-05-28  Geoffrey Garen  <ggaren@apple.com>
1772
1773         Reviewed by Oliver Hunt.
1774         
1775         Fixed total destruction in Software Update.app.
1776         
1777         Updated JavaScriptGlue to honor squirrelfish's new getCallData mechanism for
1778         indicating that an object can be called as a function.
1779
1780 2008-05-10  Maciej Stachowiak  <mjs@apple.com>
1781
1782         Reviewed by Oliver.
1783
1784         - JavaScriptGlue part of fix for: "SQUIRRELFISH: function toString broken after calling"
1785         https://bugs.webkit.org/show_bug.cgi?id=18869
1786         
1787         * JSRun.cpp:
1788         (JSRun::Evaluate): Use UString version of eveluate() instead of
1789         the now departed UChar*/length variant; use of the lower-level
1790         version was gratuitous in any case.
1791         (JSRun::CheckSyntax): Ditto for checkSyntax().
1792
1793 2008-04-30  Geoffrey Garen  <ggaren@apple.com>
1794
1795         Build fix: supply missing parameter that used to be implicit.
1796
1797         * JSRun.cpp:
1798         (JSRun::Evaluate):
1799
1800 2008-03-30  Geoffrey Garen  <ggaren@apple.com>
1801
1802         Reviewed by Oliver Hunt.
1803         
1804         Build fix.
1805
1806         * ForwardingHeaders/wtf/UnusedParam.h: Copied from ForwardingHeaders/wtf/OwnPtr.h.
1807
1808 2008-05-12  Alexey Proskuryakov  <ap@webkit.org>
1809
1810         Roll out recent  threading changes (r32807, r32810, r32819, r32822) to simplify
1811         SquirrelFish merging.
1812
1813         * JSUtils.cpp:
1814         (JSObjectKJSValue):
1815         * JSUtils.h:
1816         * JSValueWrapper.cpp:
1817         (unprotectGlobalObject):
1818         (initializeGlobalObjectKey):
1819         (getThreadGlobalExecState):
1820         * JavaScriptGlue.cpp:
1821         (JSCollect):
1822         (JSLockInterpreter):
1823         * UserObjectImp.cpp:
1824         (UserObjectImp::toPrimitive):
1825
1826 2008-05-02  Alexey Proskuryakov  <ap@webkit.org>
1827
1828         Reviewed by Darin Adler.
1829
1830         Make JavaScriptGlue and JavaScriptCore API functions implicitly call initializeThreading
1831         for the sake of non-WebKit clients.
1832
1833         * JavaScriptGlue.cpp:
1834         (JSRunCreate):
1835         (JSCollect):
1836         (JSCreateJSArrayFromCFArray):
1837         (JSLockInterpreter):
1838         These are all possible JavaScriptGlue entry points.
1839
1840 2008-05-02  Alexey Proskuryakov  <ap@webkit.org>
1841
1842         Reviewed by Geoffrey Garen.
1843
1844         https://bugs.webkit.org/show_bug.cgi?id=18826
1845         Make JavaScript heap per-thread
1846
1847         * JSValueWrapper.cpp:
1848         * JSUtils.h:
1849         Moved getThreadGlobalExecState() to JSUtils and made it extern, as ExecState is now needed
1850         for all JS allocations.
1851
1852         * JSUtils.cpp:
1853         (JSObjectKJSValue): Pass ExecState to functions that now need it.
1854         (unprotectGlobalObject): Moved from JSValueWrapper.cpp.
1855         (initializeGlobalObjectKey): Ditto.
1856         (getThreadGlobalExecState): Ditto.
1857
1858         * UserObjectImp.cpp: (UserObjectImp::toPrimitive): Pass ExecState to jsString and jsNumber.
1859
1860         * JavaScriptGlue.cpp:
1861         (JSCollect): Use current thread's heap.
1862         (JSLockInterpreter): Removed JSLock::registerThread(), because a JS heap doesn't need to
1863         know about other threads.
1864
1865 2008-04-25  Alexey Proskuryakov  <ap@webkit.org>
1866
1867         Reviewed by Darin Adler.
1868
1869         Fix run-webkit-tests --threading
1870         and provisionally fix <https://bugs.webkit.org/show_bug.cgi?id=18661>
1871         Proxy server issue in Sunday's Nightly
1872
1873         * UserObjectImp.cpp: Adjusted for the new member added to ClassInfo.
1874
1875 2008-04-25  Mark Rowe  <mrowe@apple.com>
1876
1877         Reviewed by Adele Peterson.
1878
1879         <rdar://problem/5891264> Don't install the JavaScriptGlue headers
1880
1881         * JavaScriptGlue.xcodeproj/project.pbxproj:
1882
1883 2008-04-25  Mark Rowe  <mrowe@apple.com>
1884
1885         Rubber-stamped by Sam Weinig.
1886
1887         Add some content to an empty ICU header file to prevent verification errors.
1888
1889         * icu/unicode/utf_old.h:
1890
1891 2008-04-02  Mark Rowe  <mrowe@apple.com>
1892
1893         Reviewed by Oliver Hunt.
1894
1895         Ensure that debug symbols are generated for x86_64 and ppc64 builds.
1896
1897         * Configurations/Base.xcconfig:
1898
1899 2008-03-20  Maciej Stachowiak  <mjs@apple.com>
1900
1901         - fix build
1902
1903         * ForwardingHeaders/wtf/ListRefPtr.h: Added.
1904
1905 2008-03-01  Mark Rowe  <mrowe@apple.com>
1906
1907         Reviewed by Tim Hatcher.
1908
1909         Update Xcode configuration to support building debug and release from the mysterious future.
1910
1911         * Configurations/Base.xcconfig:
1912         * Configurations/DebugRelease.xcconfig:
1913
1914 2008-02-29  Geoffrey Garen  <ggaren@apple.com>
1915
1916         Reviewed by David Harrison.
1917         
1918         Fixed <rdar://problem/5765063> TOT REGRESSION: Software Update crash in
1919         KJS::Collector::collect() (missing JSLock)
1920
1921         * JSValueWrapper.cpp:
1922         (unprotectGlobalObject): Added missing JSLock.
1923
1924 2008-02-05  Mark Rowe  <mrowe@apple.com>
1925
1926         Reviewed by Oliver Hunt.
1927
1928         Update versioning to support the mysterious future.
1929
1930         * Configurations/Version.xcconfig: Add SYSTEM_VERSION_PREFIX_1060.
1931
1932 2008-01-28  Eric Seidel  <eric@webkit.org>
1933
1934         Reviewed by darin.
1935         
1936         Add icu headers to JSG in preparation for depending on ::UChar.
1937
1938         * Configurations/Base.xcconfig:
1939         * ForwardingHeaders/wtf/unicode: Added.
1940         * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
1941         * ForwardingHeaders/wtf/unicode/icu: Added.
1942         * ForwardingHeaders/wtf/unicode/icu/UnicodeIcu.h: Added.
1943         * icu: Copied from ../JavaScriptCore/icu.
1944
1945 2007-12-19  Geoffrey Garen  <ggaren@apple.com>
1946
1947         Build fix.
1948
1949         * ForwardingHeaders/wtf/VectorTraits.h: Added.
1950
1951 2007-12-10  Timothy Hatcher  <timothy@apple.com>
1952
1953         Reviewed by Mark Rowe.
1954
1955         <rdar://problem/5639463> Bundle versions on Tiger should be 4523.x not 523.x
1956
1957         * Configurations/Version.xcconfig: Some Tiger versions of Xcode don't set MAC_OS_X_VERSION_MAJOR,
1958           so assume Tiger and use a 4 for the SYSTEM_VERSION_PREFIX.
1959
1960 2007-12-04  Geoffrey Garen  <ggaren@apple.com>
1961
1962         Reviewed by Darin Adler.
1963
1964         Third step in refactoring JSGlobalObject: Moved data members and data
1965         member access from Interpreter to JSGlobalObject. Replaced JSInterpreter
1966         subclass with JSGlobalObject subclass.
1967         
1968         * JSRun.cpp:
1969         (JSRun::JSRun):
1970         (JSRun::Evaluate):
1971         (JSRun::CheckSyntax):
1972         * JSRun.h:
1973         (JSGlueGlobalObject::JSGlueGlobalObject):
1974         * JSUtils.cpp:
1975         (KJSValueToCFTypeInternal):
1976         * JSValueWrapper.cpp:
1977         (getThreadGlobalExecState):
1978
1979 2007-12-02  Geoffrey Garen  <ggaren@apple.com>
1980
1981         Reviewed by Eric Seidel.
1982
1983         Updated to match the JavaScriptCore change to move virtual methods from
1984         Interpreter to JSGlobalObject.
1985         
1986         * JSRun.cpp:
1987         * JSRun.h:
1988         * JSValueWrapper.cpp:
1989         (getThreadGlobalExecState):
1990         * JavaScriptGlue.cpp:
1991         (JSRunCopyGlobalObject):
1992         (JSRunEvaluate):
1993
1994 2007-11-30  Geoffrey Garen  <ggaren@apple.com>
1995
1996         Reviewed by Beth Dakin.
1997         
1998         Modified to follow new JSGlobalObject/Interpreter ownership rules 
1999         in JavaScriptCore.
2000
2001         * JSRun.cpp:
2002         (JSRun::JSRun):
2003         (JSRun::GetInterpreter):
2004         (JSRun::Evaluate):
2005         (JSRun::CheckSyntax):
2006         * JSRun.h:
2007         * JSValueWrapper.cpp:
2008         (unprotectGlobalObject):
2009         (initializeGlobalObjectKey):
2010         (getThreadGlobalExecState):
2011
2012 2007-11-29  Mark Rowe  <mrowe@apple.com>
2013
2014         Reviewed by Maciej.
2015
2016         Fix REGRESSION(r27885): Installer hits assertion failure in JavaScriptGlue.
2017
2018         * JSValueWrapper.cpp:
2019         (getThreadGlobalExecState): Set the global object on the Interpreter before using it.
2020
2021 2007-11-27  Anders Carlsson  <andersca@apple.com>
2022         
2023         Build fix.
2024         
2025         * JSUtils.cpp:
2026         (KJSValueToCFTypeInternal):
2027         * JSValueWrapper.cpp:
2028         (JSValueWrapper::JSObjectCopyPropertyNames):
2029
2030 2007-11-21  Mark Rowe  <mrowe@apple.com>
2031
2032         Reviewed by Eric.
2033
2034         Fix JavaScriptGlue to build without warnings using GCC 4.2.
2035
2036         * Configurations/Base.xcconfig:
2037         * JSRun.h:
2038
2039 2007-11-17  Mark Rowe  <mrowe@apple.com>
2040
2041         Reviewed by Darin Adler.
2042
2043         Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
2044              <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
2045              http://bugs.webkit.org/show_bug.cgi?id=16033
2046
2047         Update for changes in Interpreter method signatures.
2048
2049         * JSRun.h:
2050
2051 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
2052
2053         Reviewed by Anders Carlsson.
2054
2055         Renamed Shared to RefCounted.
2056
2057         * ForwardingHeaders/wtf/RefCounted.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/Shared.h.
2058         * ForwardingHeaders/wtf/Shared.h: Removed.
2059
2060 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
2061
2062         Reviewed by Sam Weinig.
2063
2064         Moved Shared.h into wtf so it could be used in more places.
2065
2066         * ForwardingHeaders/wtf/Shared.h: Added.
2067
2068 2007-11-08  Mark Rowe  <mrowe@apple.com>
2069
2070         Build fix.
2071
2072         * ForwardingHeaders/wtf/MathExtras.h: Copied from WebCore/ForwardingHeaders/wtf/MathExtras.h.
2073
2074 2007-11-05  Geoffrey Garen  <ggaren@apple.com>
2075
2076         Build fix.
2077
2078         * ForwardingHeaders/kjs/value.h: Added.
2079
2080 2007-11-03  Sam Weinig  <sam@webkit.org>
2081
2082         Build-fix.
2083
2084         * UserObjectImp.cpp:
2085
2086 2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
2087
2088         Sort files(...); sections of Xcode project files.
2089
2090         Rubber-stamped by Darin Adler.
2091
2092         * JavaScriptGlue.xcodeproj/project.pbxproj:
2093
2094 2007-10-25  Eric Seidel  <eric@webkit.org>
2095
2096         Reviewed by Geoff.
2097         
2098         Make JSG build again after JSGlobalObject change.
2099
2100         * JSRun.cpp:
2101         (JSRun::JSRun):
2102         (JSRun::GlobalObject):
2103         * JSRun.h:
2104         (JSInterpreter::JSInterpreter):
2105         * JSUtils.h:
2106
2107 2007-10-11  Mark Rowe  <mrowe@apple.com>
2108
2109         Reviewed by Tim Hatcher.
2110
2111         Fix for <rdar://problem/5488678>.  Disable debugging symbols in production builds for 10.4
2112         PowerPC to prevent a huge STABS section from being generated.
2113
2114         * Configurations/Base.xcconfig:
2115
2116 2007-10-04  Mark Rowe  <mrowe@apple.com>
2117
2118         Reviewed by Oliver.
2119
2120         Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
2121         The "full" level appears to offer no observable benefits even though the documentation
2122         suggests it be used for dead code stripping.  This should also decrease link times.
2123
2124         * Configurations/Base.xcconfig:
2125
2126 2007-09-03  Mark Rowe  <mrowe@apple.com>
2127
2128         Reviewed by Tim Hatcher.
2129
2130         <rdar://problem/5452164> Production build with in symbols directory has no debug info
2131
2132         Enable debug symbol generation on all build configurations.  Production builds are stripped
2133         of symbols by Xcode during deployment post-processing.
2134
2135         * Configurations/Base.xcconfig:
2136         * JavaScriptGlue.xcodeproj/project.pbxproj:
2137
2138 2007-08-09  Mark Rowe  <mrowe@apple.com>
2139
2140         Reviewed by Antti.
2141
2142         <rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +
2143
2144         * Configurations/Version.xcconfig:
2145         * JavaScriptGlue.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between
2146         Version.xcconfig and Info.plist explicit to Xcode.
2147
2148 2007-07-16  Sam Weinig  <sam@webkit.org>
2149
2150         Reviewed by Oliver.
2151
2152         Turn off -Wshorten-64-to-32 warning for 64-bit builds.
2153
2154         * Configurations/Base.xcconfig:
2155
2156 2007-04-27  Mark Rowe  <mrowe@apple.com>
2157
2158         Reviewed by Oliver.
2159
2160         * JavaScriptGlue.xcodeproj/project.pbxproj: Improve dependencies in Xcode project
2161         by marking JavaScriptGlue as a dependency of testjsglue.
2162
2163 2007-03-24  Mark Rowe  <mrowe@apple.com>
2164
2165         Reviewed by Dave Hyatt.
2166
2167         * JavaScriptGlue.xcodeproj/project.pbxproj: Use GCC 4.0 for testjsglue.
2168
2169 2007-03-24  Mark Rowe  <mrowe@apple.com>
2170
2171         Rubber-stamped by Darin Adler.
2172
2173         * Configurations/JavaScriptGlue.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS.
2174
2175 2007-03-19  Andrew Wellington  <proton@wiretapped.net>
2176
2177         Reviewed by Maciej.
2178
2179         Really set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
2180
2181         * JavaScriptGlue.xcodeproj/project.pbxproj:
2182
2183 2007-03-18  Andrew Wellington  <proton@wiretapped.net>
2184
2185         Reviewed by Mark Rowe
2186         
2187         Set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
2188
2189         * JavaScriptGlue.xcodeproj/project.pbxproj:
2190
2191 2007-03-17  Timothy Hatcher  <timothy@apple.com>
2192
2193         Reviewed by Mark Rowe.
2194
2195         Made Version.xcconfig smarter when building for different configurations.
2196         Now uses the 522+ OpenSource version for Debug and Release, while using the    
2197         full 522.4 version for Production builds. The system prefix is also computed
2198         based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.
2199
2200         * Configurations/JavaScriptGlue.xcconfig:
2201         * Configurations/Version.xcconfig:
2202
2203 2007-03-15  Timothy Hatcher  <timothy@apple.com>
2204
2205         Reviewed by John.
2206
2207         * Factored out most of our common build settings into .xcconfig files. Anything that was common in
2208           each build configuration was factored out into the shared .xcconfig file.
2209         * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
2210         * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
2211         * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
2212
2213         * Configurations/Base.xcconfig: Added.
2214         * Configurations/DebugRelease.xcconfig: Added.
2215         * Configurations/JavaScriptGlue.xcconfig: Added.
2216         * Configurations/Version.xcconfig: Added.
2217         * Info.plist:
2218         * JavaScriptGlue.xcodeproj/project.pbxproj:
2219
2220 === Safari-5522.4 ===
2221
2222 2007-03-12  Geoffrey Garen  <ggaren@apple.com>
2223
2224         Reviewed by Oliver Hunt.
2225         
2226         Updated in light of fix for <rdar://problem/4681051> Installer crashes 
2227         in KJS::Collector::markOtherThreadConservatively(KJS::Collector::Thread*) 
2228         trying to install iLife 06 using Rosetta on an Intel Machine
2229         
2230         * JavaScriptGlue.cpp:
2231         (JSLockInterpreter): Ensure backwards compatibility by calling 
2232         registerThread() when explicitly taking the JSLock. (This doesn't happen 
2233         automatically anymore.) I doubt this actally matters, but in JavaScriptGlue
2234         territory, that kind of thinking will get you killed.
2235
2236 2007-03-06  Geoffrey Garen  <ggaren@apple.com>
2237
2238         Reviewed by Maciej Stachowiak.
2239
2240         Fixed all known crashers exposed by run-webkit-tests --threaded while using
2241         a PAC file (for maximum carnage). See JavaScriptCore ChangeLog for 
2242         more details.
2243
2244         * JSBase.cpp:
2245         (JSBase::Release): Lock when deleting, because we may be deleting an object
2246         (like a JSRun) that holds thread-unsafe data.
2247
2248         * JSUtils.cpp:
2249         (CFStringToUString): Don't lock, because our caller locks. Also, locking
2250         inside a function that returns thread-unsafe data by copy will only mask
2251         threading problems.
2252
2253         * JavaScriptGlue.cpp:
2254         (JSRunEvaluate): Added missing JSLock.
2255         (JSRunCheckSyntax): Converted to JSLock.
2256         * JavaScriptGlue.xcodeproj/project.pbxproj:
2257
2258 2007-02-22  Geoffrey Garen  <ggaren@apple.com>
2259
2260         Reviewed by Darin Adler.
2261         
2262         Fixed <rdar://problem/4942528> Installer.app Stuck "Examining additional 
2263         volumes..."
2264         
2265         The problem was that JavaScriptGlue held a JSObject in a static pointer
2266         without protecting it from garbage collection. 
2267         
2268             sUserObjectPrototypeImp  = new UserObjectPrototypeImp();
2269             static ProtectedPtr<UserObjectPrototypeImp> protectPrototype; // valiant, brave, but useless
2270
2271         Through an interesting comedy of errors, this object would be collected 
2272         and then assigned as the prototype of another object allocated at the 
2273         same address, thus becoming its own prototype. (See http://www.ziplo.com/grandpa.htm
2274         for further explanation of this phenomenon.) Hence the infinte loop in 
2275         property lookup.
2276         
2277         The solution is equally humorous: all of this code was completely useless --
2278         it only served to create an empty object in the prototype chain -- so
2279         I just removed it.
2280
2281         * UserObjectImp.cpp:
2282         (UserObjectImp::UserObjectImp):
2283         * UserObjectImp.h:
2284
2285 2007-02-19  Timothy Hatcher  <timothy@apple.com>
2286
2287         Reviewed by Geoff.
2288
2289         <rdar://problem/4636301> Deprecate JavaScriptGlue
2290
2291         * JavaScriptGlue.h: adds DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER to everything
2292         * JavaScriptGlue.xcodeproj/project.pbxproj: use -Wno-deprecated-declarations to keep the project building
2293         * config.h: define DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER as empty on other systems
2294
2295 2007-02-16  Darin Adler  <darin@apple.com>
2296
2297         Reviewed by Anders.
2298
2299         - fix <rdar://problem/5000216> JavaScriptGlue framework started turning all CFNumbers
2300           into signed 32bit values
2301
2302         Circumstantial evidence seems to indicate that JavaScriptGlue was depending on a bug
2303         in CFNumber where CFNumberIsFloatType was returning true for 64-bit integer values.
2304
2305         * JSUtils.cpp: (JSObjectKJSValue): Removed the call to CFNumberIsFloatType in the
2306         conversion of numeric values, and always use kCFNumberDoubleType, since double is
2307         the internal format of numbers in JavaScriptCore. There's no value to having a
2308         separate code path for integers. There's also no reason to check the return value
2309         from CFNumberGetValue -- if it returns false it still does the best it can to convert
2310         to a double, which is what we want.
2311
2312         * UserObjectImp.cpp: (UserObjectImp::toString): Removed a similar code path that
2313         tried to handle integers separate from double. Instead, always use a double. For
2314         compatibility, use a format without a decimal point when CFNumberIsFloatType returns
2315         false. Also removed a bogus cast to float; the "%f" format string takes a double,
2316         not a float, so all the cast did was cut down on precision.
2317
2318 2007-01-25  Mark Rowe  <mrowe@apple.com>
2319
2320         Reviewed by Maciej.
2321
2322         * Info.plist: Update copyright string.
2323
2324 2006-12-19  Timothy Hatcher  <timothy@apple.com>
2325
2326         Reviewed by Darin Adler.
2327
2328         <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features
2329
2330         * JavaScriptGlue.xcodeproj/project.pbxproj:
2331
2332 === Safari-521.26 ===
2333
2334 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
2335
2336         Reviewed by Tim H.
2337
2338         Build fix:  DWARF and -gfull are incompatible with symbol separation.
2339
2340         * JavaScriptGlue.xcodeproj/project.pbxproj:
2341
2342 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
2343
2344         Reviewed by Tim H.
2345
2346         http://bugs.webkit.org/show_bug.cgi?id=10394
2347         Bug 10394: WebKit Release and Production configurations should enable dead code stripping
2348
2349         * JavaScriptGlue.xcodeproj/project.pbxproj:
2350
2351 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
2352
2353         Reviewed by Tim H.
2354
2355         http://bugs.webkit.org/show_bug.cgi?id=10384
2356         Bug 10384: Switch to DWARF for Release configuration
2357
2358         * JavaScriptGlue.xcodeproj/project.pbxproj:
2359
2360 2006-08-04  Sam Weinig  <sam.weinig@gmail.com>
2361
2362         Reviewed by Darin Adler.
2363
2364         - patch for http://bugs.webkit.org/show_bug.cgi?id=10192
2365           Make WebCore (and friends) compile with -Wshorten-64-to-32
2366
2367           * Adds -Wshorten-64-to-32 flag to Xcode project.
2368
2369         * JavaScriptGlue.xcodeproj/project.pbxproj:
2370
2371 2006-08-03  Sam Weinig  <sam.weinig@gmail.com>
2372
2373         Reviewed by Darin Adler.
2374
2375         - patch for http://bugs.webkit.org/show_bug.cgi?id=10176
2376           Make WebCore compile with -Wundef
2377
2378           * Adds -Wundef flag to Xcode project
2379
2380         * JavaScriptGlue.xcodeproj/project.pbxproj:
2381
2382 2006-07-29  Sam Weinig  <sam.weinig@gmail.com>
2383
2384         Reviewed by Darin Adler.
2385
2386         - patch for http://bugs.webkit.org/show_bug.cgi?id=10080
2387           Adopt pedantic changes from the Unity project to improve 
2388           cross-compiler compatibility
2389
2390           Changes include:
2391           * Turning on gcc warning for missing newline at the end of a source file
2392             (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
2393
2394         * JavaScriptGlue.xcodeproj/project.pbxproj:
2395
2396 === Safari-521.19 ===
2397
2398 2006-07-19  Geoffrey Garen  <ggaren@apple.com>
2399
2400         Fixed by Darin & Maciej, reviewed by me.
2401         
2402         - Fixed <rdar://problem/4638934> Leopard 9A227: Installer crashes right 
2403         after LCA and while preparing Installation
2404
2405         Compile release/production with NDEBUG set, to ensure binary compatibility
2406         between JavaScriptGlue and JavaScriptCore. In debug builds, JavaScriptCore 
2407         includes an extra debug data member in HashSet.
2408         
2409         * JavaScriptGlue.xcodeproj/project.pbxproj:
2410
2411 === Safari-521.18 ===
2412
2413 2006-07-15  Maciej Stachowiak  <mjs@apple.com>
2414
2415         Reviewed by Darin Adler.
2416
2417         - switch property lists to be vector+set of Identifiers instead of list of References
2418         
2419         * JSUtils.cpp:
2420         (KJSValueToCFTypeInternal): updated for JSC SPI changes
2421         * JSValueWrapper.cpp:
2422         (JSValueWrapper::JSObjectCopyPropertyNames): ditto
2423         * UserObjectImp.cpp:
2424         (UserObjectImp::getPropertyNames): ditto
2425         * UserObjectImp.h:
2426
2427 === Safari-521.17 ===
2428
2429 2006-07-14  Geoffrey Garen  <ggaren@apple.com>
2430
2431         Reviewed by Maciej.
2432         
2433         - Updated JSInterpreter to work with Interpreter ref-counting in JavaScriptCore.
2434
2435         (JSInterpreter::JSInterpreter::~JSInterpreter): Now protected to catch
2436         manual delete.
2437
2438 2006-07-12  Anders Carlsson  <acarlsson@apple.com>
2439
2440         Build fix
2441         
2442         * JSUtils.cpp:
2443         (KJSValueToCFTypeInternal):
2444         * JSValueWrapper.cpp:
2445         (JSValueWrapper::JSObjectCopyPropertyNames):
2446         * UserObjectImp.cpp:
2447         (UserObjectImp::getPropertyList):
2448         
2449 === Safari-521.15 ===
2450
2451 2006-07-07  Geoffrey Garen  <ggaren@apple.com>
2452
2453         - build fix
2454
2455         * JSUtils.cpp:
2456         (KJSValueToCFTypeInternal):
2457         * JSValueWrapper.cpp:
2458         (JSValueWrapper::JSObjectCopyPropertyNames):
2459
2460 2006-07-03  Geoffrey Garen  <ggaren@apple.com>
2461
2462         Reviewed by Maciej.
2463         
2464         * JSRun.cpp:
2465         (JSRun::CheckSyntax): Updated to use new checkSyntax syntax in JSC.
2466         * JavaScriptGlue.xcodeproj/project.pbxproj:
2467
2468 === Safari-521.14 ===
2469
2470 2006-06-28  Timothy Hatcher  <timothy@apple.com>
2471
2472         Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
2473
2474         * JavaScriptGlue.xcodeproj/project.pbxproj:
2475
2476 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
2477
2478         Reviewed by Timothy.
2479
2480         * Info.plist: Fixed copyright to include 2003-2006.
2481
2482 === JavaScriptGlue-521.13 ===
2483         
2484 2006-06-20  Geoffrey Garen  <ggaren@apple.com>
2485
2486         Reviewed by Anders.
2487         
2488         - Required for JS API: Rename propList to getPropertyList and have it
2489         take its target property list by reference so that subclasses can
2490         add properties to the list before calling through to their superclasses.
2491
2492         * JSUtils.cpp:
2493         (KJSValueToCFTypeInternal):
2494         * JSValueWrapper.cpp:
2495         (JSValueWrapper::JSObjectCopyPropertyNames):
2496         * UserObjectImp.cpp:
2497         (UserObjectImp::getPropertyList):
2498         * UserObjectImp.h:
2499
2500 2006-06-15  Timothy Hatcher  <timothy@apple.com>
2501
2502         Reviewed by Geoff and Darin.
2503         
2504         Prefer the DWARF debugging symbols format for use in Xcode 2.3.
2505
2506         * JavaScriptGlue.xcodeproj/project.pbxproj:
2507
2508 2006-06-12  Geoffrey Garen  <ggaren@apple.com>
2509
2510         Reviewed by TimO, Maciej.
2511         
2512         - JSGlue part of merging InterpreterImp into Interpreter.
2513         
2514         Since there's now a kjs forwarding header, I moved all forwarding
2515         headers into a "ForwardingHeaders" directory, like in WebCore.
2516
2517         * ForwardingHeaders: Added.
2518         * ForwardingHeaders/kjs: Added.
2519         * ForwardingHeaders/kjs/ExecState.h: Added.
2520         * ForwardingHeaders/wtf: Added.
2521         * JavaScriptGlue.xcodeproj/project.pbxproj:
2522         * config.h:
2523         * wtf: Removed.
2524         * wtf/AlwaysInline.h: Removed.
2525         * wtf/Assertions.h: Removed.
2526         * wtf/FastMalloc.h: Removed.
2527         * wtf/Forward.h: Removed.
2528         * wtf/HashCountedSet.h: Removed.
2529         * wtf/HashSet.h: Removed.
2530         * wtf/Noncopyable.h: Removed.
2531         * wtf/OwnArrayPtr.h: Removed.
2532         * wtf/OwnPtr.h: Removed.
2533         * wtf/PassRefPtr.h: Removed.
2534         * wtf/Platform.h: Removed.
2535         * wtf/RefPtr.h: Removed.
2536         * wtf/Vector.h: Removed.
2537
2538 === JavaScriptGlue-521.10 ===
2539
2540 2006-05-09  Maciej Stachowiak  <mjs@apple.com>
2541
2542         Rubber stamped by Anders.
2543         
2544         - renamed kxmlcore to wtf
2545         
2546         kxmlcore --> wtf
2547         KXMLCore --> WTF
2548         KXC --> WTF
2549
2550         * config.h:
2551         * kxmlcore: Removed.
2552         * kxmlcore/AlwaysInline.h: Removed.
2553         * kxmlcore/Assertions.h: Removed.
2554         * kxmlcore/FastMalloc.h: Removed.
2555         * kxmlcore/Forward.h: Removed.
2556         * kxmlcore/HashCountedSet.h: Removed.
2557         * kxmlcore/HashSet.h: Removed.
2558         * kxmlcore/Noncopyable.h: Removed.
2559         * kxmlcore/OwnArrayPtr.h: Removed.
2560         * kxmlcore/OwnPtr.h: Removed.
2561         * kxmlcore/PassRefPtr.h: Removed.
2562         * kxmlcore/Platform.h: Removed.
2563         * kxmlcore/RefPtr.h: Removed.
2564         * kxmlcore/Vector.h: Removed.
2565         * wtf: Added.
2566
2567 2006-04-11  Darin Adler  <darin@apple.com>
2568
2569         - try to fix Windows build
2570
2571         * kxmlcore/HashForward.h: Removed.
2572
2573 2006-04-10  Darin Adler  <darin@apple.com>
2574
2575         Rubber-stamped by John Sullivan.
2576
2577         - added forwarding headers for the new Forward.h and HashForward.h files
2578
2579         * kxmlcore/Forward.h: Added.
2580         * kxmlcore/HashForward.h: Added.
2581
2582 2006-04-04  Timothy Hatcher  <timothy@apple.com>
2583
2584         Reviewed by Darin Adler.
2585
2586         The Debug and Release frameworks are now built with install paths relative to the build products directory.
2587         This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore. 
2588
2589         * JavaScriptGlue.xcodeproj/project.pbxproj:
2590
2591 2006-04-02  Eric Seidel  <eseidel@apple.com>
2592
2593         Reviewed by andersca.
2594
2595         Add missing forwarding header.
2596
2597         * kxmlcore/Vector.h: Added.
2598
2599 2006-03-31  Geoffrey Garen  <ggaren@apple.com>
2600
2601         Reviewed by Darin Adler.
2602
2603         - Fixed <rdar://problem/4430836> JavaScript patch crashing Quartz
2604         Composer
2605
2606         JSValueWrappers used to hold on to the ExecState that pertained at
2607         the time of their creation. Since ExecStates are transient, that
2608         design was totally bogus, and it would crash once the ExecState had
2609         been deallocated.
2610
2611         Unfortunately, there's no clean solution to this problem, since
2612         the JSGlue API has no notion of state. The solution here is to use
2613         a shared, global ExecState for the purpose of JSGlue calls. Given
2614         the pre-existing limitations in the JSGlue API, this design
2615         shouldn't actually introduce any new limitations (see comments in
2616         JSValueWrapper.cpp).
2617
2618         I tested with Quartz Composer and PAC files, neither of which are
2619         layout-testable.
2620         
2621         * JSUtils.cpp:
2622         (KJSValueToJSObject):
2623         * JSValueWrapper.cpp:
2624         (JSValueWrapper::JSValueWrapper):
2625         (JSValueWrapper::GetValue):
2626         (getProcessGlobalExecState):
2627         (JSValueWrapper::JSObjectCopyPropertyNames):
2628         (JSValueWrapper::JSObjectCopyProperty):
2629         (JSValueWrapper::JSObjectSetProperty):
2630         (JSValueWrapper::JSObjectCallFunction):
2631         (JSValueWrapper::JSObjectCopyCFValue):
2632         * JSValueWrapper.h:
2633
2634         Also added a test harness file. It was helpful while I was testing,
2635         and may come in handy in the future:
2636         
2637         * JavaScriptGlue.xcodeproj/project.pbxproj:
2638         testjsglue.cpp: Added.
2639
2640 2006-03-28  Darin Adler  <darin@apple.com>
2641
2642         Reviewed by Geoff.
2643
2644         - added a build step that checks for init routines
2645
2646         * JavaScriptGlue.xcodeproj/project.pbxproj: Added a custom build phase that invokes the
2647         check-for-global-initializers script.
2648
2649 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
2650
2651         Not reviewed, but I noticed these trivial extra changes were needed to avoid
2652         breaking the build with my reviewed patch for:
2653         
2654         http://bugs.webkit.org/show_bug.cgi?id=7387
2655         
2656         Add config.h, includes of it, and Platform.h forwarding header.
2657
2658         * JSBase.cpp:
2659         * JSObject.cpp:
2660         * JSRun.cpp:
2661         * JSUtils.cpp:
2662         * JSValueWrapper.cpp:
2663         * JavaScriptGlue.cpp:
2664         * UserObjectImp.cpp:
2665         * config.h: Added.
2666         * kxmlcore/Platform.h: Added.
2667
2668 === JavaScriptGlue-521.7 ===
2669
2670 2006-02-10  Geoffrey Garen  <ggaren@apple.com>
2671
2672         Reviewed by eric.
2673
2674         - Fixed build.
2675
2676         * UserObjectImp.cpp:
2677         (UserObjectImp::toPrimitive):
2678         * UserObjectImp.h:
2679
2680 2006-02-03  Timothy Hatcher  <timothy@apple.com>
2681
2682         Reviewed by Justin.
2683
2684         Renamed configuration names to Debug, Release and Production.
2685
2686         * JavaScriptGlue.xcodeproj/project.pbxproj:
2687
2688 2006-02-01  Darin Adler  <darin@apple.com>
2689
2690         - added some forwarding headers to make new JavaScriptCore changes work
2691
2692         * kxmlcore/Assertions.h: Added.
2693         * kxmlcore/Noncopyable.h: Added.
2694         * kxmlcore/OwnPtr.h: Added.
2695         * kxmlcore/OwnArrayPtr.h: Added.
2696
2697 2006-01-16  Timothy Hatcher  <timothy@apple.com>
2698
2699         Adding the license header to all files so we can
2700         move JavaScriptGlue into the open source repository.
2701
2702         * LICENSE: Added.
2703         * JSBase.cpp: license header added.
2704         * JSBase.h: ditto.
2705         * JSObject.cpp: ditto.
2706         * JSObject.h: ditto.
2707         * JSRun.cpp: ditto.
2708         * JSRun.h: ditto.
2709         * JSUtils.cpp: ditto.
2710         * JSUtils.h: ditto.
2711         * JSValueWrapper.cpp: ditto.
2712         * JSValueWrapper.h: ditto.
2713         * JavaScriptGlue.cpp: ditto.
2714         * JavaScriptGlue.h: ditto.
2715         * UserObjectImp.cpp: ditto.
2716         * UserObjectImp.h: ditto.
2717
2718 2005-12-21  Timothy Hatcher  <timothy@apple.com>
2719
2720         * JavaScriptGlue.xcodeproj/project.pbxproj:
2721           Set tab width to 8, indent width to 4 and uses tabs to false per file.
2722
2723 2005-12-19  Darin Adler  <darin@apple.com>
2724
2725         Reviewed by Geoff Garen and Eric Seidel.
2726
2727         - fix http://bugs.webkit.org/show_bug.cgi?id=4923
2728           stop using <ostream> in WebCore, eliminating the <cmath> troubles it causes
2729
2730         * kxmlcore/AlwaysInline.h: Added.
2731
2732 2005-12-15  Darin Adler  <darin@apple.com>
2733
2734         Reviewed by Maciej.
2735
2736         * JSRun.cpp: (JSRun::Evaluate): Updated for change to Interpreter::evaluate.
2737
2738 2005-12-15  Darin Adler  <darin@apple.com>
2739
2740         Reviewed by Tim Hatcher.
2741
2742         * JavaScriptGlue.xcodeproj/project.pbxproj: Removed some redundant build
2743         settings, turned off prebinding explicitly for our Development and
2744         Deployment builds, remove .exp file from sources. All "clean-up".
2745
2746 === Safari-521~5 ===
2747
2748 2005-12-13  Geoffrey Garen  <ggaren@apple.com>
2749
2750     - Fixed build after Anders's last checkin to JavaScriptCore.
2751     
2752         Reviewed by darin.
2753
2754         * UserObjectImp.cpp:
2755         (UserObjectImp::userObjectGetter): Updated to reflect new argument that 
2756     getters take (unused here).
2757         * UserObjectImp.h:
2758
2759 2005-12-13  Maciej Stachowiak  <mjs@apple.com>
2760
2761         Reviewed by Eric.
2762
2763     - added forwarding header for HashCountedSet
2764
2765         * kxmlcore/HashCountedSet.h: Added.
2766
2767 2005-12-10  Darin Adler  <darin@apple.com>
2768
2769         Rubber stamped by Maciej.
2770
2771         - updated for KJS class renaming
2772
2773         * many files and functions
2774
2775 2005-12-10  Darin Adler  <darin@apple.com>
2776
2777         Reviewed by Maciej.
2778
2779         - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
2780
2781         Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
2782
2783         * JSUtils.cpp:
2784         (JSObjectKJSValue):
2785         * UserObjectImp.cpp:
2786         (UserObjectImp::callAsFunction):
2787         (UserObjectImp::toPrimitive):
2788
2789 2005-12-05  Maciej Stachowiak  <mjs@apple.com>
2790
2791         - added new forwarding headers
2792
2793         * kxmlcore/PassRefPtr.h: Added.
2794         * kxmlcore/RefPtr.h: Added.
2795
2796 2005-12-05  Maciej Stachowiak  <mjs@apple.com>
2797
2798         * kxmlcore/PassRefPtr.h: Added.
2799
2800 2005-11-26  Maciej Stachowiak  <mjs@apple.com>
2801
2802         Rubber stamped by Eric.
2803
2804     - renamed InterpreterLock to JSLock
2805
2806         * JSUtils.cpp:
2807         (CFStringToUString):
2808         (JSObjectKJSValue):
2809         (KJSValueToCFTypeInternal):
2810         * JSValueWrapper.cpp:
2811         (JSValueWrapper::JSObjectCopyPropertyNames):
2812         (JSValueWrapper::JSObjectCopyProperty):
2813         (JSValueWrapper::JSObjectSetProperty):
2814         (JSValueWrapper::JSObjectCallFunction):
2815         (JSValueWrapper::JSObjectCopyCFValue):
2816         * JavaScriptGlue.cpp:
2817         (JSRunCreate):
2818         (JSCollect):
2819         (JSLockInterpreter):
2820         (JSUnlockInterpreter):
2821         * UserObjectImp.cpp:
2822         (UserObjectImp::callAsFunction):
2823
2824 2005-11-16  Maciej Stachowiak  <mjs@apple.com>
2825
2826         Reviewed by Geoff.
2827
2828     Updated to use new API to drop all locks.
2829
2830         * JavaScriptGlue.cpp:
2831         (JSLockInterpreter):
2832         (JSUnlockInterpreter):
2833         * UserObjectImp.cpp:
2834         (UserObjectImp::callAsFunction):
2835
2836 2005-11-14  Geoffrey Garen  <ggaren@apple.com>
2837
2838         Reviewed by mjs.
2839
2840         - Part of the fix for <rdar://problem/4342216> Installer crash in 
2841           KJS::ValueImp::marked() when garbage collector runs inside call to 
2842           ConstantValues::init()
2843           
2844         Added locking in JSRunCreate, since JSRun::JSRun constructs an object.
2845         
2846         * JavaScriptGlue.cpp:
2847         (JSRunCreate):
2848
2849 2005-11-10  Geoffrey Garen  <ggaren@apple.com>
2850
2851         Reviewed by Maciej.
2852
2853         - Fixed <rdar://problem/4334445> installer crashed on my 
2854           dual g4 450Mhz after clicking language
2855
2856         - Reversed backwards NULL check.
2857         - Inserted guards against NULL fJSUserObject data member.
2858         - Cleaned up some style.
2859
2860         * JSUtils.cpp:
2861         (KJSValueToCFTypeInternal):
2862         * UserObjectImp.cpp:
2863         (UserObjectImp::~UserObjectImp):
2864         (UserObjectImp::callAsFunction):
2865         (UserObjectImp::userObjectGetter):
2866         (UserObjectImp::getOwnPropertySlot):
2867         (UserObjectImp::put):
2868         (UserObjectImp::mark):
2869
2870 2005-11-04  Timothy Hatcher  <timothy@apple.com>
2871
2872         Reviewed by Darin Adler.
2873
2874         * JavaScriptGlue.xcodeproj/project.pbxproj:
2875           Fixed the FRAMEWORK_SEARCH_PATHS to look in the WebKit
2876           Frameworks for the Default config.
2877
2878 2005-11-03  Timothy Hatcher  <timothy@apple.com>
2879
2880         Reviewed by Darin and Vicki.
2881
2882         * JavaScriptGlue.xcodeproj/project.pbxproj:
2883           Change to use $(SYSTEM_LIBRARY_DIR) consistently and place
2884           $(NEXT_ROOT) in a few spots to make build-root work.
2885
2886 2005-11-01  Maciej Stachowiak  <mjs@apple.com>
2887
2888     Reviewed by: Eric.
2889     
2890         <rdar://problem/4324107> get JavaScriptGlue working with TOT JavaScriptCore again
2891
2892     - reverted all this stuff to use ReferenceList instead of IdentifierSequencedSet
2893
2894         * JSUtils.cpp:
2895         (KJSValueToCFTypeInternal):
2896         * JSValueWrapper.cpp:
2897         (JSValueWrapper::JSObjectCopyPropertyNames):
2898         * UserObjectImp.cpp:
2899         (UserObjectImp::propList):
2900         * UserObjectImp.h:
2901
2902 2005-10-11  Timothy Hatcher  <timothy@apple.com>
2903
2904         Setup the proper Framework search path for the Default config.
2905         Prepping for a TOT submission and build by B&I.
2906
2907         * JavaScriptGlue.xcodeproj/project.pbxproj:
2908
2909 2005-10-10  Darin Adler  <darin@apple.com>
2910
2911         Reviewed by Eric.
2912
2913         - converted tabs to spaces, NULL to 0, added some (void), got rid of __ prefixes
2914           in headers (reserved for compiler/library)
2915
2916         * Info.plist:
2917         * JSBase.cpp:
2918         * JSBase.h:
2919         * JSObject.cpp:
2920         * JSObject.h:
2921         * JSRun.cpp:
2922         * JSRun.h:
2923         * JSUtils.cpp:
2924         * JSUtils.h:
2925         * JSValueWrapper.cpp:
2926         * JSValueWrapper.h:
2927         * JavaScriptGlue.cpp:
2928         * JavaScriptGlue.h:
2929         * UserObjectImp.cpp:
2930         * UserObjectImp.h:
2931
2932 2005-10-10  Darin Adler  <darin@apple.com>
2933
2934         * .cvsignore: Added. Ignore Makefile.in and Makefile.
2935
2936 2005-10-07  Timothy Hatcher  <timothy@apple.com>
2937
2938         Reviewed by Maciej.
2939         
2940         Build fix, needed to disable RTTI. Upgraded to a native target.
2941
2942         * JavaScriptGlue.xcodeproj/project.pbxproj:
2943         * Info.plist
2944
2945 2005-10-05  Maciej Stachowiak  <mjs@apple.com>
2946
2947         Reviewed by Eric and Darin.
2948
2949     <rdar://problem/4260506> Port JavaScriptGlue to TOT JavaScriptCore
2950
2951         * JSRun.cpp:
2952         (JSRun::JSRun):
2953         (JSRun::GlobalObject):
2954         * JSRun.h:
2955         (JSInterpreter::JSInterpreter):
2956         * JSUtils.cpp:
2957         (KJSValueToJSObject):
2958         (JSObjectKJSValue):
2959         (KJSValueToCFTypeInternal):
2960         (KJSValueToCFType):
2961         * JSUtils.h:
2962         * JSValueWrapper.cpp:
2963         (JSValueWrapper::JSValueWrapper):
2964         (JSValueWrapper::GetValue):
2965         (JSValueWrapper::JSObjectCopyPropertyNames):
2966         (JSValueWrapper::JSObjectCopyProperty):
2967         (JSValueWrapper::JSObjectSetProperty):
2968         (JSValueWrapper::JSObjectCallFunction):
2969         (JSValueWrapper::JSObjectMark):
2970         * JSValueWrapper.h:
2971         * JavaScriptGlue.cpp:
2972         (JSRunCopyGlobalObject):
2973         * JavaScriptGlue.xcodeproj/project.pbxproj:
2974         * Makefile.am: Added.
2975         * UserObjectImp.cpp:
2976         (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
2977         (UserObjectImp::UserObjectImp):
2978         (UserObjectImp::callAsFunction):
2979         (UserObjectImp::getPropertyNames):
2980         (UserObjectImp::userObjectGetter):
2981         (UserObjectImp::getOwnPropertySlot):
2982         (UserObjectImp::put):
2983         (UserObjectImp::toPrimitive):
2984         (UserObjectImp::mark):
2985         * UserObjectImp.h:
2986         * kxmlcore/FastMalloc.h: Added.
2987         * kxmlcore/HashSet.h: Added.
2988
2989 2005-09-14  Maciej Stachowiak  <mjs@apple.com>
2990
2991         Reviewed by Geoff.
2992
2993     - fixed <rdar://problem/4214783> REGRESSION: kjs_fast_malloc crash due to lack of locking on multiple threads (seen selecting volumes in the installer)
2994
2995     Make sure to lock using the InterpreterLock class in all places that need it
2996     (including anything that uses the collector, the parser, the protect count hash table,
2997     and anything that allocates via fast_malloc).
2998
2999         * JSUtils.cpp:
3000         (CFStringToUString):
3001         (JSObjectKJSValue):
3002         (KJSValueToCFTypeInternal):
3003         * JSUtils.h:
3004         * JSValueWrapper.cpp:
3005         (JSValueWrapper::JSObjectCopyPropertyNames):
3006         (JSValueWrapper::JSObjectCopyProperty):
3007         (JSValueWrapper::JSObjectSetProperty):
3008         (JSValueWrapper::JSObjectCallFunction):
3009         (JSValueWrapper::JSObjectCopyCFValue):
3010         * JavaScriptGlue.cpp:
3011         (JSCollect):
3012
3013 2005-09-27  Adele Peterson  <adele@apple.com>
3014
3015         Reviewed by Maciej.
3016
3017         <rdar://problem/4223297> JavaScriptGlue: Submit 64-bit compatible versions of your API and SPIs by September 15
3018
3019         * JavaScriptGlue.h: Changed UInt32 to CFTypeID for JSTypeID
3020
3021 2005-09-06  Geoffrey Garen  <ggaren@apple.com>
3022
3023         -upgraded project files to XCode 2.1
3024
3025         * JavaScriptGlue.pbproj/project.pbxproj: Removed.
3026         * JavaScriptGlue.xcodeproj/.cvsignore: Added.
3027         * JavaScriptGlue.xcodeproj/project.pbxproj: Added.
3028
3029 2005-09-01  Maciej Stachowiak  <mjs@apple.com>
3030
3031         Rubber stamped by hyatt.
3032
3033     - initial import of JavaScriptGlue into our repository
3034
3035         * English.lproj/InfoPlist.strings: Added.
3036         * JSBase.cpp: Added.
3037         (JSBase::JSBase):
3038         (JSBase::~JSBase):
3039         (JSBase::Retain):
3040         (JSBase::Release):
3041         (JSBase::RetainCount):
3042         (JSBase::GetTypeID):
3043         (JSBase::CopyDescription):
3044         (JSBase::Equal):
3045         * JSBase.h: Added.
3046         * JSObject.cpp: Added.
3047         (JSUserObject::JSUserObject):
3048         (JSUserObject::~JSUserObject):
3049         (JSUserObject::CopyPropertyNames):
3050         (JSUserObject::CopyProperty):
3051         (JSUserObject::SetProperty):
3052         (JSUserObject::ImplementsCall):
3053         (JSUserObject::CallFunction):
3054         (JSUserObject::CopyCFValue):
3055         (JSUserObject::Equal):
3056         (JSUserObject::Mark):
3057         (JSUserObject::GetData):
3058         * JSObject.h: Added.
3059         (JSUserObject::DataType):
3060         * JSRun.cpp: Added.
3061         (JSRun::JSRun):
3062         (JSRun::~JSRun):
3063         (JSRun::Flags):
3064         (JSRun::GetSource):
3065         (JSRun::GlobalObject):
3066         (JSRun::GetInterpreter):
3067         (JSRun::Evaluate):
3068         (JSRun::CheckSyntax):
3069         * JSRun.h: Added.
3070         (JSInterpreter::JSInterpreter):
3071         (JSInterpreter::JSInterpreter::~JSInterpreter):
3072         (JSInterpreter::Flags):
3073         * JSUtils.cpp: Added.
3074         (CFStringToUString):
3075         (UStringToCFString):
3076         (CFStringToIdentifier):
3077         (IdentifierToCFString):
3078         (KJSValueToJSObject):
3079         (JSObjectKJSValue):
3080         (KJSValueToCFTypeInternal):
3081         (KJSValueToCFType):
3082         (GetCFNull):
3083         * JSUtils.h: Added.
3084         (RetainCFType):
3085         (ReleaseCFType):
3086         * JSValueWrapper.cpp: Added.
3087         (JSValueWrapper::JSValueWrapper):
3088         (JSValueWrapper::~JSValueWrapper):
3089         (JSValueWrapper::GetValue):
3090         (JSValueWrapper::GetExecState):
3091         (JSValueWrapper::GetJSObectCallBacks):
3092         (JSValueWrapper::JSObjectDispose):
3093         (JSValueWrapper::JSObjectCopyPropertyNames):
3094         (JSValueWrapper::JSObjectCopyProperty):
3095         (JSValueWrapper::JSObjectSetProperty):
3096         (JSValueWrapper::JSObjectCallFunction):
3097         (JSValueWrapper::JSObjectCopyCFValue):
3098         (JSValueWrapper::JSObjectMark):
3099         * JSValueWrapper.h: Added.
3100         * JavaScriptGlue.cpp: Added.
3101         (JSSetCFNull):
3102         (JSGetCFNull):
3103         (JSRetain):
3104         (JSRelease):
3105         (JSCopyDescription):
3106         (JSEqual):
3107         (JSGetTypeID):
3108         (JSGetRetainCount):
3109         (JSObjectCreate):
3110         (JSObjectCreateInternal):
3111         (JSObjectCopyCFValue):
3112         (JSObjectGetData):
3113         (JSObjectCopyProperty):
3114         (JSObjectSetProperty):
3115         (JSObjectCallFunction):
3116         (JSRunCreate):
3117         (JSRunCopySource):
3118         (JSRunCopyGlobalObject):
3119         (JSRunEvaluate):
3120         (JSRunCheckSyntax):
3121         (JSCollect):
3122         (JSTypeGetCFArrayCallBacks):
3123         (JSCFRetain):
3124         (JSCFRelease):
3125         (JSObjectCreateWithCFType):
3126         (CFJSObjectDispose):
3127         (JSObjectCopyPropertyNames):
3128         (CFJSObjectCopyProperty):
3129         (CFJSObjectSetProperty):
3130         (CFJSObjectCopyCFValue):
3131         (CFJSObjectEqual):
3132         (CFJSObjectCopyPropertyNames):
3133         (JSCreateCFArrayFromJSArray):
3134         (JSCreateJSArrayFromCFArray):
3135         (JSLockInterpreter):
3136         (JSUnlockInterpreter):
3137         * JavaScriptGlue.exp: Added.
3138         * JavaScriptGlue.h: Added.
3139         * JavaScriptGlue.pbproj/project.pbxproj: Added.
3140         * UserObjectImp.cpp: Added.
3141         (UserObjectPrototypeImp::UserObjectPrototypeImp):
3142         (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
3143         (UserObjectImp::UserObjectImp):
3144         (UserObjectImp::~UserObjectImp):
3145         (UserObjectImp::classInfo):
3146         (UserObjectImp::implementsCall):
3147         (UserObjectImp::call):
3148         (UserObjectImp::propList):
3149         (UserObjectImp::hasProperty):
3150         (UserObjectImp::get):
3151         (UserObjectImp::put):
3152         (UserObjectImp::GetJSUserObject):
3153         (UserObjectImp::toPrimitive):
3154         (UserObjectImp::toBoolean):
3155         (UserObjectImp::toNumber):
3156         (UserObjectImp::toString):
3157         (UserObjectImp::mark):
3158         * UserObjectImp.h: Added.
3159