65e4a690d8fbb04b28337e527afba2a2cee47e27
[WebKit-https.git] / JavaScriptGlue / ChangeLog
1 2007-11-27  Anders Carlsson  <andersca@apple.com>
2         
3         Build fix.
4         
5         * JSUtils.cpp:
6         (KJSValueToCFTypeInternal):
7         * JSValueWrapper.cpp:
8         (JSValueWrapper::JSObjectCopyPropertyNames):
9
10 2007-11-21  Mark Rowe  <mrowe@apple.com>
11
12         Reviewed by Eric.
13
14         Fix JavaScriptGlue to build without warnings using GCC 4.2.
15
16         * Configurations/Base.xcconfig:
17         * JSRun.h:
18
19 2007-11-17  Mark Rowe  <mrowe@apple.com>
20
21         Reviewed by Darin Adler.
22
23         Fix: <rdar://problem/5607032> REGRESSION: testapi exits with assertion failure in debug build
24              <rdar://problem/5440659> JSGlobalContextCreate throws away globalObjectClass's prototype
25              http://bugs.webkit.org/show_bug.cgi?id=16033
26
27         Update for changes in Interpreter method signatures.
28
29         * JSRun.h:
30
31 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
32
33         Reviewed by Anders Carlsson.
34
35         Renamed Shared to RefCounted.
36
37         * ForwardingHeaders/wtf/RefCounted.h: Copied from JavaScriptGlue/ForwardingHeaders/wtf/Shared.h.
38         * ForwardingHeaders/wtf/Shared.h: Removed.
39
40 2007-11-13  Geoffrey Garen  <ggaren@apple.com>
41
42         Reviewed by Sam Weinig.
43
44         Moved Shared.h into wtf so it could be used in more places.
45
46         * ForwardingHeaders/wtf/Shared.h: Added.
47
48 2007-11-08  Mark Rowe  <mrowe@apple.com>
49
50         Build fix.
51
52         * ForwardingHeaders/wtf/MathExtras.h: Copied from WebCore/ForwardingHeaders/wtf/MathExtras.h.
53
54 2007-11-05  Geoffrey Garen  <ggaren@apple.com>
55
56         Build fix.
57
58         * ForwardingHeaders/kjs/value.h: Added.
59
60 2007-11-03  Sam Weinig  <sam@webkit.org>
61
62         Build-fix.
63
64         * UserObjectImp.cpp:
65
66 2007-11-03  David D. Kilzer  <ddkilzer@webkit.org>
67
68         Sort files(...); sections of Xcode project files.
69
70         Rubber-stamped by Darin.
71
72         * JavaScriptGlue.xcodeproj/project.pbxproj:
73
74 2007-10-25  Eric Seidel  <eric@webkit.org>
75
76         Reviewed by Geoff.
77         
78         Make JSG build again after JSGlobalObject change.
79
80         * JSRun.cpp:
81         (JSRun::JSRun):
82         (JSRun::GlobalObject):
83         * JSRun.h:
84         (JSInterpreter::JSInterpreter):
85         * JSUtils.h:
86
87 2007-10-11  Mark Rowe  <mrowe@apple.com>
88
89         Reviewed by Tim Hatcher.
90
91         Fix for <rdar://problem/5488678>.  Disable debugging symbols in production builds for 10.4
92         PowerPC to prevent a huge STABS section from being generated.
93
94         * Configurations/Base.xcconfig:
95
96 2007-10-04  Mark Rowe  <mrowe@apple.com>
97
98         Reviewed by Oliver.
99
100         Switch to default level of debugging symbols to resolve <rdar://problem/5488678>.
101         The "full" level appears to offer no observable benefits even though the documentation
102         suggests it be used for dead code stripping.  This should also decrease link times.
103
104         * Configurations/Base.xcconfig:
105
106 2007-09-03  Mark Rowe  <mrowe@apple.com>
107
108         Reviewed by Tim Hatcher.
109
110         <rdar://problem/5452164> Production build with in symbols directory has no debug info
111
112         Enable debug symbol generation on all build configurations.  Production builds are stripped
113         of symbols by Xcode during deployment post-processing.
114
115         * Configurations/Base.xcconfig:
116         * JavaScriptGlue.xcodeproj/project.pbxproj:
117
118 2007-08-09  Mark Rowe  <mrowe@apple.com>
119
120         Reviewed by Antti.
121
122         <rdar://problem/5400709> Versioning in debug and release builds should include minor and tiny version before +
123
124         * Configurations/Version.xcconfig:
125         * JavaScriptGlue.xcodeproj/project.pbxproj: Add a shell script phase to make to dependency between
126         Version.xcconfig and Info.plist explicit to Xcode.
127
128 2007-07-16  Sam Weinig  <sam@webkit.org>
129
130         Reviewed by Oliver.
131
132         Turn off -Wshorten-64-to-32 warning for 64-bit builds.
133
134         * Configurations/Base.xcconfig:
135
136 2007-04-27  Mark Rowe  <mrowe@apple.com>
137
138         Reviewed by Oliver.
139
140         * JavaScriptGlue.xcodeproj/project.pbxproj: Improve dependencies in Xcode project
141         by marking JavaScriptGlue as a dependency of testjsglue.
142
143 2007-03-24  Mark Rowe  <mrowe@apple.com>
144
145         Reviewed by Dave Hyatt.
146
147         * JavaScriptGlue.xcodeproj/project.pbxproj: Use GCC 4.0 for testjsglue.
148
149 2007-03-24  Mark Rowe  <mrowe@apple.com>
150
151         Rubber-stamped by Darin.
152
153         * Configurations/JavaScriptGlue.xcconfig: Remove unnecessary INFOPLIST_PREPROCESS.
154
155 2007-03-19  Andrew Wellington  <proton@wiretapped.net>
156
157         Reviewed by Maciej.
158
159         Really set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
160
161         * JavaScriptGlue.xcodeproj/project.pbxproj:
162
163 2007-03-18  Andrew Wellington  <proton@wiretapped.net>
164
165         Reviewed by Mark Rowe
166         
167         Set Xcode editor to use 4 space indentation (http://webkit.org/coding/coding-style.html)
168
169         * JavaScriptGlue.xcodeproj/project.pbxproj:
170
171 2007-03-17  Timothy Hatcher  <timothy@apple.com>
172
173         Reviewed by Mark Rowe.
174
175         Made Version.xcconfig smarter when building for different configurations.
176         Now uses the 522+ OpenSource version for Debug and Release, while using the    
177         full 522.4 version for Production builds. The system prefix is also computed
178         based on the current system, so 4522.4 on Tiger and 5522.4 on Leopard.
179
180         * Configurations/JavaScriptGlue.xcconfig:
181         * Configurations/Version.xcconfig:
182
183 2007-03-15  Timothy Hatcher  <timothy@apple.com>
184
185         Reviewed by John.
186
187         * Factored out most of our common build settings into .xcconfig files. Anything that was common in
188           each build configuration was factored out into the shared .xcconfig file.
189         * Adds a Version.xcconfig file to define the current framework version, to be used in other places.
190         * Use the new $(BUNDLE_VERSION) (defined in Version.xcconfig) in the preprocessed Info.plist.
191         * Use the versions defined in Version.xcconfig to set $(DYLIB_CURRENT_VERSION).
192
193         * Configurations/Base.xcconfig: Added.
194         * Configurations/DebugRelease.xcconfig: Added.
195         * Configurations/JavaScriptGlue.xcconfig: Added.
196         * Configurations/Version.xcconfig: Added.
197         * Info.plist:
198         * JavaScriptGlue.xcodeproj/project.pbxproj:
199
200 === Safari-5522.4 ===
201
202 2007-03-12  Geoffrey Garen  <ggaren@apple.com>
203
204         Reviewed by Oliver Hunt.
205         
206         Updated in light of fix for <rdar://problem/4681051> Installer crashes 
207         in KJS::Collector::markOtherThreadConservatively(KJS::Collector::Thread*) 
208         trying to install iLife 06 using Rosetta on an Intel Machine
209         
210         * JavaScriptGlue.cpp:
211         (JSLockInterpreter): Ensure backwards compatibility by calling 
212         registerThread() when explicitly taking the JSLock. (This doesn't happen 
213         automatically anymore.) I doubt this actally matters, but in JavaScriptGlue
214         territory, that kind of thinking will get you killed.
215
216 2007-03-06  Geoffrey Garen  <ggaren@apple.com>
217
218         Reviewed by Maciej Stachowiak.
219
220         Fixed all known crashers exposed by run-webkit-tests --threaded while using
221         a PAC file (for maximum carnage). See JavaScriptCore ChangeLog for 
222         more details.
223
224         * JSBase.cpp:
225         (JSBase::Release): Lock when deleting, because we may be deleting an object
226         (like a JSRun) that holds thread-unsafe data.
227
228         * JSUtils.cpp:
229         (CFStringToUString): Don't lock, because our caller locks. Also, locking
230         inside a function that returns thread-unsafe data by copy will only mask
231         threading problems.
232
233         * JavaScriptGlue.cpp:
234         (JSRunEvaluate): Added missing JSLock.
235         (JSRunCheckSyntax): Converted to JSLock.
236         * JavaScriptGlue.xcodeproj/project.pbxproj:
237
238 2007-02-22  Geoffrey Garen  <ggaren@apple.com>
239
240         Reviewed by Darin Adler.
241         
242         Fixed <rdar://problem/4942528> Installer.app Stuck "Examining additional 
243         volumes..."
244         
245         The problem was that JavaScriptGlue held a JSObject in a static pointer
246         without protecting it from garbage collection. 
247         
248             sUserObjectPrototypeImp  = new UserObjectPrototypeImp();
249             static ProtectedPtr<UserObjectPrototypeImp> protectPrototype; // valiant, brave, but useless
250
251         Through an interesting comedy of errors, this object would be collected 
252         and then assigned as the prototype of another object allocated at the 
253         same address, thus becoming its own prototype. (See http://www.ziplo.com/grandpa.htm
254         for further explanation of this phenomenon.) Hence the infinte loop in 
255         property lookup.
256         
257         The solution is equally humorous: all of this code was completely useless --
258         it only served to create an empty object in the prototype chain -- so
259         I just removed it.
260
261         * UserObjectImp.cpp:
262         (UserObjectImp::UserObjectImp):
263         * UserObjectImp.h:
264
265 2007-02-19  Timothy Hatcher  <timothy@apple.com>
266
267         Reviewed by Geoff.
268
269         <rdar://problem/4636301> Deprecate JavaScriptGlue
270
271         * JavaScriptGlue.h: adds DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER to everything
272         * JavaScriptGlue.xcodeproj/project.pbxproj: use -Wno-deprecated-declarations to keep the project building
273         * config.h: define DEPRECATED_IN_MAC_OS_X_VERSION_10_5_AND_LATER as empty on other systems
274
275 2007-02-16  Darin Adler  <darin@apple.com>
276
277         Reviewed by Anders.
278
279         - fix <rdar://problem/5000216> JavaScriptGlue framework started turning all CFNumbers
280           into signed 32bit values
281
282         Circumstantial evidence seems to indicate that JavaScriptGlue was depending on a bug
283         in CFNumber where CFNumberIsFloatType was returning true for 64-bit integer values.
284
285         * JSUtils.cpp: (JSObjectKJSValue): Removed the call to CFNumberIsFloatType in the
286         conversion of numeric values, and always use kCFNumberDoubleType, since double is
287         the internal format of numbers in JavaScriptCore. There's no value to having a
288         separate code path for integers. There's also no reason to check the return value
289         from CFNumberGetValue -- if it returns false it still does the best it can to convert
290         to a double, which is what we want.
291
292         * UserObjectImp.cpp: (UserObjectImp::toString): Removed a similar code path that
293         tried to handle integers separate from double. Instead, always use a double. For
294         compatibility, use a format without a decimal point when CFNumberIsFloatType returns
295         false. Also removed a bogus cast to float; the "%f" format string takes a double,
296         not a float, so all the cast did was cut down on precision.
297
298 2007-01-25  Mark Rowe  <mrowe@apple.com>
299
300         Reviewed by Maciej.
301
302         * Info.plist: Update copyright string.
303
304 2006-12-19  Timothy Hatcher  <timothy@apple.com>
305
306         Reviewed by Darin.
307
308         <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features
309
310         * JavaScriptGlue.xcodeproj/project.pbxproj:
311
312 === Safari-521.26 ===
313
314 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
315
316         Reviewed by Tim H.
317
318         Build fix:  DWARF and -gfull are incompatible with symbol separation.
319
320         * JavaScriptGlue.xcodeproj/project.pbxproj:
321
322 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
323
324         Reviewed by Tim H.
325
326         http://bugs.webkit.org/show_bug.cgi?id=10394
327         Bug 10394: WebKit Release and Production configurations should enable dead code stripping
328
329         * JavaScriptGlue.xcodeproj/project.pbxproj:
330
331 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
332
333         Reviewed by Tim H.
334
335         http://bugs.webkit.org/show_bug.cgi?id=10384
336         Bug 10384: Switch to DWARF for Release configuration
337
338         * JavaScriptGlue.xcodeproj/project.pbxproj:
339
340 2006-08-04  Sam Weinig  <sam.weinig@gmail.com>
341
342         Reviewed by Darin.
343
344         - patch for http://bugs.webkit.org/show_bug.cgi?id=10192
345           Make WebCore (and friends) compile with -Wshorten-64-to-32
346
347           * Adds -Wshorten-64-to-32 flag to Xcode project.
348
349         * JavaScriptGlue.xcodeproj/project.pbxproj:
350
351 2006-08-03  Sam Weinig  <sam.weinig@gmail.com>
352
353         Reviewed by Darin.
354
355         - patch for http://bugs.webkit.org/show_bug.cgi?id=10176
356           Make WebCore compile with -Wundef
357
358           * Adds -Wundef flag to Xcode project
359
360         * JavaScriptGlue.xcodeproj/project.pbxproj:
361
362 2006-07-29  Sam Weinig  <sam.weinig@gmail.com>
363
364         Reviewed by Darin.
365
366         - patch for http://bugs.webkit.org/show_bug.cgi?id=10080
367           Adopt pedantic changes from the Unity project to improve 
368           cross-compiler compatibility
369
370           Changes include:
371           * Turning on gcc warning for missing newline at the end of a source file
372             (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
373
374         * JavaScriptGlue.xcodeproj/project.pbxproj:
375
376 === Safari-521.19 ===
377
378 2006-07-19  Geoffrey Garen  <ggaren@apple.com>
379
380         Fixed by Darin & Maciej, reviewed by me.
381         
382         - Fixed <rdar://problem/4638934> Leopard 9A227: Installer crashes right 
383         after LCA and while preparing Installation
384
385         Compile release/production with NDEBUG set, to ensure binary compatibility
386         between JavaScriptGlue and JavaScriptCore. In debug builds, JavaScriptCore 
387         includes an extra debug data member in HashSet.
388         
389         * JavaScriptGlue.xcodeproj/project.pbxproj:
390
391 === Safari-521.18 ===
392
393 2006-07-15  Maciej Stachowiak  <mjs@apple.com>
394
395         Reviewed by Darin.
396
397         - switch property lists to be vector+set of Identifiers instead of list of References
398         
399         * JSUtils.cpp:
400         (KJSValueToCFTypeInternal): updated for JSC SPI changes
401         * JSValueWrapper.cpp:
402         (JSValueWrapper::JSObjectCopyPropertyNames): ditto
403         * UserObjectImp.cpp:
404         (UserObjectImp::getPropertyNames): ditto
405         * UserObjectImp.h:
406
407 === Safari-521.17 ===
408
409 2006-07-14  Geoffrey Garen  <ggaren@apple.com>
410
411         Reviewed by Maciej.
412         
413         - Updated JSInterpreter to work with Interpreter ref-counting in JavaScriptCore.
414
415         (JSInterpreter::JSInterpreter::~JSInterpreter): Now protected to catch
416         manual delete.
417
418 2006-07-12  Anders Carlsson  <acarlsson@apple.com>
419
420         Build fix
421         
422         * JSUtils.cpp:
423         (KJSValueToCFTypeInternal):
424         * JSValueWrapper.cpp:
425         (JSValueWrapper::JSObjectCopyPropertyNames):
426         * UserObjectImp.cpp:
427         (UserObjectImp::getPropertyList):
428         
429 === Safari-521.15 ===
430
431 2006-07-07  Geoffrey Garen  <ggaren@apple.com>
432
433         - build fix
434
435         * JSUtils.cpp:
436         (KJSValueToCFTypeInternal):
437         * JSValueWrapper.cpp:
438         (JSValueWrapper::JSObjectCopyPropertyNames):
439
440 2006-07-03  Geoffrey Garen  <ggaren@apple.com>
441
442         Reviewed by Maciej.
443         
444         * JSRun.cpp:
445         (JSRun::CheckSyntax): Updated to use new checkSyntax syntax in JSC.
446         * JavaScriptGlue.xcodeproj/project.pbxproj:
447
448 === Safari-521.14 ===
449
450 2006-06-28  Timothy Hatcher  <timothy@apple.com>
451
452         Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
453
454         * JavaScriptGlue.xcodeproj/project.pbxproj:
455
456 2006-06-24  David Kilzer  <ddkilzer@kilzer.net>
457
458         Reviewed by Timothy.
459
460         * Info.plist: Fixed copyright to include 2003-2006.
461
462 === JavaScriptGlue-521.13 ===
463         
464 2006-06-20  Geoffrey Garen  <ggaren@apple.com>
465
466         Reviewed by Anders.
467         
468         - Required for JS API: Rename propList to getPropertyList and have it
469         take its target property list by reference so that subclasses can
470         add properties to the list before calling through to their superclasses.
471
472         * JSUtils.cpp:
473         (KJSValueToCFTypeInternal):
474         * JSValueWrapper.cpp:
475         (JSValueWrapper::JSObjectCopyPropertyNames):
476         * UserObjectImp.cpp:
477         (UserObjectImp::getPropertyList):
478         * UserObjectImp.h:
479
480 2006-06-15  Timothy Hatcher  <timothy@apple.com>
481
482         Reviewed by Geoff and Darin.
483         
484         Prefer the DWARF debugging symbols format for use in Xcode 2.3.
485
486         * JavaScriptGlue.xcodeproj/project.pbxproj:
487
488 2006-06-12  Geoffrey Garen  <ggaren@apple.com>
489
490         Reviewed by TimO, Maciej.
491         
492         - JSGlue part of merging InterpreterImp into Interpreter.
493         
494         Since there's now a kjs forwarding header, I moved all forwarding
495         headers into a "ForwardingHeaders" directory, like in WebCore.
496
497         * ForwardingHeaders: Added.
498         * ForwardingHeaders/kjs: Added.
499         * ForwardingHeaders/kjs/ExecState.h: Added.
500         * ForwardingHeaders/wtf: Added.
501         * JavaScriptGlue.xcodeproj/project.pbxproj:
502         * config.h:
503         * wtf: Removed.
504         * wtf/AlwaysInline.h: Removed.
505         * wtf/Assertions.h: Removed.
506         * wtf/FastMalloc.h: Removed.
507         * wtf/Forward.h: Removed.
508         * wtf/HashCountedSet.h: Removed.
509         * wtf/HashSet.h: Removed.
510         * wtf/Noncopyable.h: Removed.
511         * wtf/OwnArrayPtr.h: Removed.
512         * wtf/OwnPtr.h: Removed.
513         * wtf/PassRefPtr.h: Removed.
514         * wtf/Platform.h: Removed.
515         * wtf/RefPtr.h: Removed.
516         * wtf/Vector.h: Removed.
517
518 === JavaScriptGlue-521.10 ===
519
520 2006-05-09  Maciej Stachowiak  <mjs@apple.com>
521
522         Rubber stamped by Anders.
523         
524         - renamed kxmlcore to wtf
525         
526         kxmlcore --> wtf
527         KXMLCore --> WTF
528         KXC --> WTF
529
530         * config.h:
531         * kxmlcore: Removed.
532         * kxmlcore/AlwaysInline.h: Removed.
533         * kxmlcore/Assertions.h: Removed.
534         * kxmlcore/FastMalloc.h: Removed.
535         * kxmlcore/Forward.h: Removed.
536         * kxmlcore/HashCountedSet.h: Removed.
537         * kxmlcore/HashSet.h: Removed.
538         * kxmlcore/Noncopyable.h: Removed.
539         * kxmlcore/OwnArrayPtr.h: Removed.
540         * kxmlcore/OwnPtr.h: Removed.
541         * kxmlcore/PassRefPtr.h: Removed.
542         * kxmlcore/Platform.h: Removed.
543         * kxmlcore/RefPtr.h: Removed.
544         * kxmlcore/Vector.h: Removed.
545         * wtf: Added.
546
547 2006-04-11  Darin Adler  <darin@apple.com>
548
549         - try to fix Windows build
550
551         * kxmlcore/HashForward.h: Removed.
552
553 2006-04-10  Darin Adler  <darin@apple.com>
554
555         Rubber-stamped by John Sullivan.
556
557         - added forwarding headers for the new Forward.h and HashForward.h files
558
559         * kxmlcore/Forward.h: Added.
560         * kxmlcore/HashForward.h: Added.
561
562 2006-04-04  Timothy Hatcher  <timothy@apple.com>
563
564         Reviewed by Darin.
565
566         The Debug and Release frameworks are now built with install paths relative to the build products directory.
567         This removes the need for other projects to build with -framework WebCore and -framework JavaScriptCore. 
568
569         * JavaScriptGlue.xcodeproj/project.pbxproj:
570
571 2006-04-02  Eric Seidel  <eseidel@apple.com>
572
573         Reviewed by andersca.
574
575         Add missing forwarding header.
576
577         * kxmlcore/Vector.h: Added.
578
579 2006-03-31  Geoffrey Garen  <ggaren@apple.com>
580
581         Reviewed by Darin.
582
583         - Fixed <rdar://problem/4430836> JavaScript patch crashing Quartz
584         Composer
585
586         JSValueWrappers used to hold on to the ExecState that pertained at
587         the time of their creation. Since ExecStates are transient, that
588         design was totally bogus, and it would crash once the ExecState had
589         been deallocated.
590
591         Unfortunately, there's no clean solution to this problem, since
592         the JSGlue API has no notion of state. The solution here is to use
593         a shared, global ExecState for the purpose of JSGlue calls. Given
594         the pre-existing limitations in the JSGlue API, this design
595         shouldn't actually introduce any new limitations (see comments in
596         JSValueWrapper.cpp).
597
598         I tested with Quartz Composer and PAC files, neither of which are
599         layout-testable.
600         
601         * JSUtils.cpp:
602         (KJSValueToJSObject):
603         * JSValueWrapper.cpp:
604         (JSValueWrapper::JSValueWrapper):
605         (JSValueWrapper::GetValue):
606         (getProcessGlobalExecState):
607         (JSValueWrapper::JSObjectCopyPropertyNames):
608         (JSValueWrapper::JSObjectCopyProperty):
609         (JSValueWrapper::JSObjectSetProperty):
610         (JSValueWrapper::JSObjectCallFunction):
611         (JSValueWrapper::JSObjectCopyCFValue):
612         * JSValueWrapper.h:
613
614         Also added a test harness file. It was helpful while I was testing,
615         and may come in handy in the future:
616         
617         * JavaScriptGlue.xcodeproj/project.pbxproj:
618         testjsglue.cpp: Added.
619
620 2006-03-28  Darin Adler  <darin@apple.com>
621
622         Reviewed by Geoff.
623
624         - added a build step that checks for init routines
625
626         * JavaScriptGlue.xcodeproj/project.pbxproj: Added a custom build phase that invokes the
627         check-for-global-initializers script.
628
629 2006-03-02  Maciej Stachowiak  <mjs@apple.com>
630
631         Not reviewed, but I noticed these trivial extra changes were needed to avoid
632         breaking the build with my reviewed patch for:
633         
634         http://bugs.webkit.org/show_bug.cgi?id=7387
635         
636         Add config.h, includes of it, and Platform.h forwarding header.
637
638         * JSBase.cpp:
639         * JSObject.cpp:
640         * JSRun.cpp:
641         * JSUtils.cpp:
642         * JSValueWrapper.cpp:
643         * JavaScriptGlue.cpp:
644         * UserObjectImp.cpp:
645         * config.h: Added.
646         * kxmlcore/Platform.h: Added.
647
648 === JavaScriptGlue-521.7 ===
649
650 2006-02-10  Geoffrey Garen  <ggaren@apple.com>
651
652         Reviewed by eric.
653
654         - Fixed build.
655
656         * UserObjectImp.cpp:
657         (UserObjectImp::toPrimitive):
658         * UserObjectImp.h:
659
660 2006-02-03  Timothy Hatcher  <timothy@apple.com>
661
662         Reviewed by Justin.
663
664         Renamed configuration names to Debug, Release and Production.
665
666         * JavaScriptGlue.xcodeproj/project.pbxproj:
667
668 2006-02-01  Darin Adler  <darin@apple.com>
669
670         - added some forwarding headers to make new JavaScriptCore changes work
671
672         * kxmlcore/Assertions.h: Added.
673         * kxmlcore/Noncopyable.h: Added.
674         * kxmlcore/OwnPtr.h: Added.
675         * kxmlcore/OwnArrayPtr.h: Added.
676
677 2006-01-16  Timothy Hatcher  <timothy@apple.com>
678
679         Adding the license header to all files so we can
680         move JavaScriptGlue into the open source repository.
681
682         * LICENSE: Added.
683         * JSBase.cpp: license header added.
684         * JSBase.h: ditto.
685         * JSObject.cpp: ditto.
686         * JSObject.h: ditto.
687         * JSRun.cpp: ditto.
688         * JSRun.h: ditto.
689         * JSUtils.cpp: ditto.
690         * JSUtils.h: ditto.
691         * JSValueWrapper.cpp: ditto.
692         * JSValueWrapper.h: ditto.
693         * JavaScriptGlue.cpp: ditto.
694         * JavaScriptGlue.h: ditto.
695         * UserObjectImp.cpp: ditto.
696         * UserObjectImp.h: ditto.
697
698 2005-12-21  Timothy Hatcher  <timothy@apple.com>
699
700         * JavaScriptGlue.xcodeproj/project.pbxproj:
701           Set tab width to 8, indent width to 4 and uses tabs to false per file.
702
703 2005-12-19  Darin Adler  <darin@apple.com>
704
705         Reviewed by Geoff Garen and Eric Seidel.
706
707         - fix http://bugs.webkit.org/show_bug.cgi?id=4923
708           stop using <ostream> in WebCore, eliminating the <cmath> troubles it causes
709
710         * kxmlcore/AlwaysInline.h: Added.
711
712 2005-12-15  Darin Adler  <darin@apple.com>
713
714         Reviewed by Maciej.
715
716         * JSRun.cpp: (JSRun::Evaluate): Updated for change to Interpreter::evaluate.
717
718 2005-12-15  Darin Adler  <darin@apple.com>
719
720         Reviewed by Tim Hatcher.
721
722         * JavaScriptGlue.xcodeproj/project.pbxproj: Removed some redundant build
723         settings, turned off prebinding explicitly for our Development and
724         Deployment builds, remove .exp file from sources. All "clean-up".
725
726 === Safari-521~5 ===
727
728 2005-12-13  Geoffrey Garen  <ggaren@apple.com>
729
730     - Fixed build after Anders's last checkin to JavaScriptCore.
731     
732         Reviewed by darin.
733
734         * UserObjectImp.cpp:
735         (UserObjectImp::userObjectGetter): Updated to reflect new argument that 
736     getters take (unused here).
737         * UserObjectImp.h:
738
739 2005-12-13  Maciej Stachowiak  <mjs@apple.com>
740
741         Reviewed by Eric.
742
743     - added forwarding header for HashCountedSet
744
745         * kxmlcore/HashCountedSet.h: Added.
746
747 2005-12-10  Darin Adler  <darin@apple.com>
748
749         Rubber stamped by Maciej.
750
751         - updated for KJS class renaming
752
753         * many files and functions
754
755 2005-12-10  Darin Adler  <darin@apple.com>
756
757         Reviewed by Maciej.
758
759         - eliminated the old Undefined(), Null(), Boolean(), Number(), and String()
760
761         Code now uses jsUndefined(), jsNull(), jsBoolean(), jsNumber(), and jsString().
762
763         * JSUtils.cpp:
764         (JSObjectKJSValue):
765         * UserObjectImp.cpp:
766         (UserObjectImp::callAsFunction):
767         (UserObjectImp::toPrimitive):
768
769 2005-12-05  Maciej Stachowiak  <mjs@apple.com>
770
771         - added new forwarding headers
772
773         * kxmlcore/PassRefPtr.h: Added.
774         * kxmlcore/RefPtr.h: Added.
775
776 2005-12-05  Maciej Stachowiak  <mjs@apple.com>
777
778         * kxmlcore/PassRefPtr.h: Added.
779
780 2005-11-26  Maciej Stachowiak  <mjs@apple.com>
781
782         Rubber stamped by Eric.
783
784     - renamed InterpreterLock to JSLock
785
786         * JSUtils.cpp:
787         (CFStringToUString):
788         (JSObjectKJSValue):
789         (KJSValueToCFTypeInternal):
790         * JSValueWrapper.cpp:
791         (JSValueWrapper::JSObjectCopyPropertyNames):
792         (JSValueWrapper::JSObjectCopyProperty):
793         (JSValueWrapper::JSObjectSetProperty):
794         (JSValueWrapper::JSObjectCallFunction):
795         (JSValueWrapper::JSObjectCopyCFValue):
796         * JavaScriptGlue.cpp:
797         (JSRunCreate):
798         (JSCollect):
799         (JSLockInterpreter):
800         (JSUnlockInterpreter):
801         * UserObjectImp.cpp:
802         (UserObjectImp::callAsFunction):
803
804 2005-11-16  Maciej Stachowiak  <mjs@apple.com>
805
806         Reviewed by Geoff.
807
808     Updated to use new API to drop all locks.
809
810         * JavaScriptGlue.cpp:
811         (JSLockInterpreter):
812         (JSUnlockInterpreter):
813         * UserObjectImp.cpp:
814         (UserObjectImp::callAsFunction):
815
816 2005-11-14  Geoffrey Garen  <ggaren@apple.com>
817
818         Reviewed by mjs.
819
820         - Part of the fix for <rdar://problem/4342216> Installer crash in 
821           KJS::ValueImp::marked() when garbage collector runs inside call to 
822           ConstantValues::init()
823           
824         Added locking in JSRunCreate, since JSRun::JSRun constructs an object.
825         
826         * JavaScriptGlue.cpp:
827         (JSRunCreate):
828
829 2005-11-10  Geoffrey Garen  <ggaren@apple.com>
830
831         Reviewed by Maciej.
832
833         - Fixed <rdar://problem/4334445> installer crashed on my 
834           dual g4 450Mhz after clicking language
835
836         - Reversed backwards NULL check.
837         - Inserted guards against NULL fJSUserObject data member.
838         - Cleaned up some style.
839
840         * JSUtils.cpp:
841         (KJSValueToCFTypeInternal):
842         * UserObjectImp.cpp:
843         (UserObjectImp::~UserObjectImp):
844         (UserObjectImp::callAsFunction):
845         (UserObjectImp::userObjectGetter):
846         (UserObjectImp::getOwnPropertySlot):
847         (UserObjectImp::put):
848         (UserObjectImp::mark):
849
850 2005-11-04  Timothy Hatcher  <timothy@apple.com>
851
852         Reviewed by Darin.
853
854         * JavaScriptGlue.xcodeproj/project.pbxproj:
855           Fixed the FRAMEWORK_SEARCH_PATHS to look in the WebKit
856           Frameworks for the Default config.
857
858 2005-11-03  Timothy Hatcher  <timothy@apple.com>
859
860         Reviewed by Darin and Vicki.
861
862         * JavaScriptGlue.xcodeproj/project.pbxproj:
863           Change to use $(SYSTEM_LIBRARY_DIR) consistently and place
864           $(NEXT_ROOT) in a few spots to make build-root work.
865
866 2005-11-01  Maciej Stachowiak  <mjs@apple.com>
867
868     Reviewed by: Eric.
869     
870         <rdar://problem/4324107> get JavaScriptGlue working with TOT JavaScriptCore again
871
872     - reverted all this stuff to use ReferenceList instead of IdentifierSequencedSet
873
874         * JSUtils.cpp:
875         (KJSValueToCFTypeInternal):
876         * JSValueWrapper.cpp:
877         (JSValueWrapper::JSObjectCopyPropertyNames):
878         * UserObjectImp.cpp:
879         (UserObjectImp::propList):
880         * UserObjectImp.h:
881
882 2005-10-11  Timothy Hatcher  <timothy@apple.com>
883
884         Setup the proper Framework search path for the Default config.
885         Prepping for a TOT submission and build by B&I.
886
887         * JavaScriptGlue.xcodeproj/project.pbxproj:
888
889 2005-10-10  Darin Adler  <darin@apple.com>
890
891         Reviewed by Eric.
892
893         - converted tabs to spaces, NULL to 0, added some (void), got rid of __ prefixes
894           in headers (reserved for compiler/library)
895
896         * Info.plist:
897         * JSBase.cpp:
898         * JSBase.h:
899         * JSObject.cpp:
900         * JSObject.h:
901         * JSRun.cpp:
902         * JSRun.h:
903         * JSUtils.cpp:
904         * JSUtils.h:
905         * JSValueWrapper.cpp:
906         * JSValueWrapper.h:
907         * JavaScriptGlue.cpp:
908         * JavaScriptGlue.h:
909         * UserObjectImp.cpp:
910         * UserObjectImp.h:
911
912 2005-10-10  Darin Adler  <darin@apple.com>
913
914         * .cvsignore: Added. Ignore Makefile.in and Makefile.
915
916 2005-10-07  Timothy Hatcher  <timothy@apple.com>
917
918         Reviewed by Maciej.
919         
920         Build fix, needed to disable RTTI. Upgraded to a native target.
921
922         * JavaScriptGlue.xcodeproj/project.pbxproj:
923         * Info.plist
924
925 2005-10-05  Maciej Stachowiak  <mjs@apple.com>
926
927         Reviewed by Eric and Darin.
928
929     <rdar://problem/4260506> Port JavaScriptGlue to TOT JavaScriptCore
930
931         * JSRun.cpp:
932         (JSRun::JSRun):
933         (JSRun::GlobalObject):
934         * JSRun.h:
935         (JSInterpreter::JSInterpreter):
936         * JSUtils.cpp:
937         (KJSValueToJSObject):
938         (JSObjectKJSValue):
939         (KJSValueToCFTypeInternal):
940         (KJSValueToCFType):
941         * JSUtils.h:
942         * JSValueWrapper.cpp:
943         (JSValueWrapper::JSValueWrapper):
944         (JSValueWrapper::GetValue):
945         (JSValueWrapper::JSObjectCopyPropertyNames):
946         (JSValueWrapper::JSObjectCopyProperty):
947         (JSValueWrapper::JSObjectSetProperty):
948         (JSValueWrapper::JSObjectCallFunction):
949         (JSValueWrapper::JSObjectMark):
950         * JSValueWrapper.h:
951         * JavaScriptGlue.cpp:
952         (JSRunCopyGlobalObject):
953         * JavaScriptGlue.xcodeproj/project.pbxproj:
954         * Makefile.am: Added.
955         * UserObjectImp.cpp:
956         (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
957         (UserObjectImp::UserObjectImp):
958         (UserObjectImp::callAsFunction):
959         (UserObjectImp::getPropertyNames):
960         (UserObjectImp::userObjectGetter):
961         (UserObjectImp::getOwnPropertySlot):
962         (UserObjectImp::put):
963         (UserObjectImp::toPrimitive):
964         (UserObjectImp::mark):
965         * UserObjectImp.h:
966         * kxmlcore/FastMalloc.h: Added.
967         * kxmlcore/HashSet.h: Added.
968
969 2005-09-14  Maciej Stachowiak  <mjs@apple.com>
970
971         Reviewed by Geoff.
972
973     - fixed <rdar://problem/4214783> REGRESSION: kjs_fast_malloc crash due to lack of locking on multiple threads (seen selecting volumes in the installer)
974
975     Make sure to lock using the InterpreterLock class in all places that need it
976     (including anything that uses the collector, the parser, the protect count hash table,
977     and anything that allocates via fast_malloc).
978
979         * JSUtils.cpp:
980         (CFStringToUString):
981         (JSObjectKJSValue):
982         (KJSValueToCFTypeInternal):
983         * JSUtils.h:
984         * JSValueWrapper.cpp:
985         (JSValueWrapper::JSObjectCopyPropertyNames):
986         (JSValueWrapper::JSObjectCopyProperty):
987         (JSValueWrapper::JSObjectSetProperty):
988         (JSValueWrapper::JSObjectCallFunction):
989         (JSValueWrapper::JSObjectCopyCFValue):
990         * JavaScriptGlue.cpp:
991         (JSCollect):
992
993 2005-09-27  Adele Peterson  <adele@apple.com>
994
995         Reviewed by Maciej.
996
997         <rdar://problem/4223297> JavaScriptGlue: Submit 64-bit compatible versions of your API and SPIs by September 15
998
999         * JavaScriptGlue.h: Changed UInt32 to CFTypeID for JSTypeID
1000
1001 2005-09-06  Geoffrey Garen  <ggaren@apple.com>
1002
1003         -upgraded project files to XCode 2.1
1004
1005         * JavaScriptGlue.pbproj/project.pbxproj: Removed.
1006         * JavaScriptGlue.xcodeproj/.cvsignore: Added.
1007         * JavaScriptGlue.xcodeproj/project.pbxproj: Added.
1008
1009 2005-09-01  Maciej Stachowiak  <mjs@apple.com>
1010
1011         Rubber stamped by hyatt.
1012
1013     - initial import of JavaScriptGlue into our repository
1014
1015         * English.lproj/InfoPlist.strings: Added.
1016         * JSBase.cpp: Added.
1017         (JSBase::JSBase):
1018         (JSBase::~JSBase):
1019         (JSBase::Retain):
1020         (JSBase::Release):
1021         (JSBase::RetainCount):
1022         (JSBase::GetTypeID):
1023         (JSBase::CopyDescription):
1024         (JSBase::Equal):
1025         * JSBase.h: Added.
1026         * JSObject.cpp: Added.
1027         (JSUserObject::JSUserObject):
1028         (JSUserObject::~JSUserObject):
1029         (JSUserObject::CopyPropertyNames):
1030         (JSUserObject::CopyProperty):
1031         (JSUserObject::SetProperty):
1032         (JSUserObject::ImplementsCall):
1033         (JSUserObject::CallFunction):
1034         (JSUserObject::CopyCFValue):
1035         (JSUserObject::Equal):
1036         (JSUserObject::Mark):
1037         (JSUserObject::GetData):
1038         * JSObject.h: Added.
1039         (JSUserObject::DataType):
1040         * JSRun.cpp: Added.
1041         (JSRun::JSRun):
1042         (JSRun::~JSRun):
1043         (JSRun::Flags):
1044         (JSRun::GetSource):
1045         (JSRun::GlobalObject):
1046         (JSRun::GetInterpreter):
1047         (JSRun::Evaluate):
1048         (JSRun::CheckSyntax):
1049         * JSRun.h: Added.
1050         (JSInterpreter::JSInterpreter):
1051         (JSInterpreter::JSInterpreter::~JSInterpreter):
1052         (JSInterpreter::Flags):
1053         * JSUtils.cpp: Added.
1054         (CFStringToUString):
1055         (UStringToCFString):
1056         (CFStringToIdentifier):
1057         (IdentifierToCFString):
1058         (KJSValueToJSObject):
1059         (JSObjectKJSValue):
1060         (KJSValueToCFTypeInternal):
1061         (KJSValueToCFType):
1062         (GetCFNull):
1063         * JSUtils.h: Added.
1064         (RetainCFType):
1065         (ReleaseCFType):
1066         * JSValueWrapper.cpp: Added.
1067         (JSValueWrapper::JSValueWrapper):
1068         (JSValueWrapper::~JSValueWrapper):
1069         (JSValueWrapper::GetValue):
1070         (JSValueWrapper::GetExecState):
1071         (JSValueWrapper::GetJSObectCallBacks):
1072         (JSValueWrapper::JSObjectDispose):
1073         (JSValueWrapper::JSObjectCopyPropertyNames):
1074         (JSValueWrapper::JSObjectCopyProperty):
1075         (JSValueWrapper::JSObjectSetProperty):
1076         (JSValueWrapper::JSObjectCallFunction):
1077         (JSValueWrapper::JSObjectCopyCFValue):
1078         (JSValueWrapper::JSObjectMark):
1079         * JSValueWrapper.h: Added.
1080         * JavaScriptGlue.cpp: Added.
1081         (JSSetCFNull):
1082         (JSGetCFNull):
1083         (JSRetain):
1084         (JSRelease):
1085         (JSCopyDescription):
1086         (JSEqual):
1087         (JSGetTypeID):
1088         (JSGetRetainCount):
1089         (JSObjectCreate):
1090         (JSObjectCreateInternal):
1091         (JSObjectCopyCFValue):
1092         (JSObjectGetData):
1093         (JSObjectCopyProperty):
1094         (JSObjectSetProperty):
1095         (JSObjectCallFunction):
1096         (JSRunCreate):
1097         (JSRunCopySource):
1098         (JSRunCopyGlobalObject):
1099         (JSRunEvaluate):
1100         (JSRunCheckSyntax):
1101         (JSCollect):
1102         (JSTypeGetCFArrayCallBacks):
1103         (JSCFRetain):
1104         (JSCFRelease):
1105         (JSObjectCreateWithCFType):
1106         (CFJSObjectDispose):
1107         (JSObjectCopyPropertyNames):
1108         (CFJSObjectCopyProperty):
1109         (CFJSObjectSetProperty):
1110         (CFJSObjectCopyCFValue):
1111         (CFJSObjectEqual):
1112         (CFJSObjectCopyPropertyNames):
1113         (JSCreateCFArrayFromJSArray):
1114         (JSCreateJSArrayFromCFArray):
1115         (JSLockInterpreter):
1116         (JSUnlockInterpreter):
1117         * JavaScriptGlue.exp: Added.
1118         * JavaScriptGlue.h: Added.
1119         * JavaScriptGlue.pbproj/project.pbxproj: Added.
1120         * UserObjectImp.cpp: Added.
1121         (UserObjectPrototypeImp::UserObjectPrototypeImp):
1122         (UserObjectPrototypeImp::GlobalUserObjectPrototypeImp):
1123         (UserObjectImp::UserObjectImp):
1124         (UserObjectImp::~UserObjectImp):
1125         (UserObjectImp::classInfo):
1126         (UserObjectImp::implementsCall):
1127         (UserObjectImp::call):
1128         (UserObjectImp::propList):
1129         (UserObjectImp::hasProperty):
1130         (UserObjectImp::get):
1131         (UserObjectImp::put):
1132         (UserObjectImp::GetJSUserObject):
1133         (UserObjectImp::toPrimitive):
1134         (UserObjectImp::toBoolean):
1135         (UserObjectImp::toNumber):
1136         (UserObjectImp::toString):
1137         (UserObjectImp::mark):
1138         * UserObjectImp.h: Added.
1139