Fixed baseline regression. Obvious of sites that have tables w/ backgrounds,
[WebKit-https.git] / JavaScriptCore / ChangeLog-2003-10-25
1 2002-05-15  Darin Adler  <darin@apple.com>
2
3         * Makefile.am:
4         Use all-am and clean-am instead of all and clean because it's better and
5         to make "make check" at the top level work right.
6
7 2002-05-13  Darin Adler  <darin@apple.com>
8
9         * kjs/value.h: Fix comment typos.
10
11 === JavaScriptCore-4 ===
12
13 2002-05-10  Maciej Stachowiak  <mjs@apple.com>
14
15         Reviewed by: Ken Kocienda and Darin Adler
16
17         Fixed the following bug:
18
19         Radar 2890573 - JavaScriptCore needs to be thread-safe
20
21         Actually this is only a weak form of thread-safety - you can safely
22         use different interpreters from different threads at the same
23         time. If you try to use a single interpreter object from multiple
24         threads, you need to provide your own locking.
25
26         * kjs/collector.h, kjs/collector.cpp:
27         (Collector::lock, Collector::unlock): Trivial implementation of a
28         recursive mutex.
29         (Collector::allocate): Lock around the body of this function.
30         (Collector::collect): Likewise.
31         (Collector::finalCheck): Likewise.
32         (Collector::numInterpreters): Likewise.
33         (Collector::numGCNotAllowedObjects): Likewise.
34         (Collector::numReferencedObjects): Likewise.
35         * kjs/internal.cpp:
36         (Parser::parse): use a mutex to lock around the whole parse, since
37         it uses a bunch of global state.
38         (InterpreterImp::InterpreterImp): Grab the Collector lock here,
39         both the mutually exclude calls to the body of this function, and
40         to protect the s_hook static member which the collector pokes at.
41         (InterpreterImp::clear): Likewise.
42         * kjs/ustring.cpp:
43         (statBufferKeyCleanup, statBufferKeyInit, UString::ascii): Convert
44         use of static variable
45         * kjs/value.cpp:
46         (ValueImp::ValueImp, ValueImp::mark, ValueImp::marked,
47         ValueImp::setGcAllowed): Grab the GC lock around any flag changes.
48
49 === Alexander-3 ===
50
51 2002-05-08  Darin Adler  <darin@apple.com>
52
53         * kjs/collector.h:
54         * kjs/collector.cpp:
55         (Collector::numInterpreters):
56         (Collector::numGCNotAllowedObjects):
57         (Collector::numReferencedObjects):
58         Add three new functions so we can see a bit more about leaking JavaScriptCore.
59
60 2002-05-06  Darin Adler  <darin@apple.com>
61
62         * JavaScriptCorePrefix.h: Added.
63         * JavaScriptCore.pbproj/project.pbxproj: Use PFE precompiling.
64         Also switch from xNDEBUG to NDEBUG.
65
66 === Alexander 0.3c2 (v1) ===
67
68 2002-04-18  Darin Adler  <darin@apple.com>
69
70         * JavaScriptCore.pbproj/project.pbxproj: Oops. Take out -Wstrict-prototypes, put back
71         -Wmissing-prototypes.
72
73 2002-04-18  Darin Adler  <darin@apple.com>
74
75         * JavaScriptCore.pbproj/project.pbxproj: Take out -Wmissing-prototypes
76         because system headers are triggering it when we don't have
77         precompiled headers on.
78
79 2002-04-18  Darin Adler  <darin@apple.com>
80
81         Reviewed by Maciej
82
83         * JavaScriptCore.pbproj/project.pbxproj: Turn on gcc3 and the same set of warnings
84         as in the rest of Labyrinth (see top level ChangeLog for details).
85
86 2002-04-17  Maciej Stachowiak  <mjs@apple.com>
87
88         Reviewed by: Darin Adler  <darin@apple.com>
89
90         * kjs/testkjs.cpp: Don't include <iostream.h> to avoid gcc3
91         warning.
92
93 2002-04-15  Darin Adler  <darin@apple.com>
94
95         Reviwed by: Maciej Stachowiak  <mjs@apple.com>
96
97         * kjs/internal.cpp:
98         * kjs/property_map.cpp:
99         * kjs/ustring.h:
100         Removed some unneeded <config.h> includes so we are more similar
101         to the real KDE sources.
102
103 2002-04-15  Darin Adler  <darin@apple.com>
104
105         Reviwed by: Maciej Stachowiak  <mjs@apple.com>
106
107         Merged changes from KDE 3.0 final and did some build fixes.
108
109         * JavaScriptCore.pbproj/project.pbxproj: Added nodes2string.cpp.
110
111         * kjs/grammar.*: Regenerated.
112         * kjs/*.lut.h: Regenerated.
113
114 2002-04-08  Darin Adler  <darin@apple.com>
115
116         Reviwed by: Maciej Stachowiak  <mjs@apple.com>
117
118         * JavaScriptCore.pbproj/project.pbxproj: Re-added -Wno-format-y2k.
119
120 2002-04-04  Darin Adler  <darin@apple.com>
121
122         * JavaScriptCore.pbproj/project.pbxproj: Add an Unoptimized build
123         style: exactly like Development except without the -O.
124
125 2002-04-03  Darin Adler  <darin@apple.com>
126
127         * kjs/Makefile.am: Gratuitous cleanup.
128
129 2002-04-02  Darin Adler  <darin@apple.com>
130
131         * JavaScriptCore.pbproj/project.pbxproj: Update flags as I did for
132         WebFoundation.
133
134 2002-04-02  Maciej Stachowiak  <mjs@apple.com>
135
136         * JavaScriptCore.pbproj/project.pbxproj: Pass -Wno-format-y2k so
137         the project builds with gcc3.
138         
139         * kjs/nodes.cpp: Avoid including an obsolete header to avoid
140         warning with gcc3.
141
142 2002-04-02  Darin Adler  <darin@apple.com>
143
144         * kjs/property_map.cpp: (PropertyMap::~PropertyMap): Deallocate the
145         map by calling clear so we don't leak the entire map.
146
147 2002-04-02  Darin Adler  <darin@apple.com>
148
149         * kjs/internal.cpp: (InterpreterImp::globalClear): Add code to
150         deallocate and null out emptyList, because once the last interpreter
151         is destroyed there's nothing to keep it from being garbage collected.
152
153 2002-04-01  Darin Adler  <darin@apple.com>
154
155         Got rid of KWQDef.h because it's dangerous to have two files with
156         the same name and different contents.
157
158         * JavaScriptCore.pbproj/project.pbxproj:
159         * kjs/KWQDef.h: Removed.
160         * kjs/ustring.h: Defines unsigned int types inline now.
161
162 2002-03-30  Maciej Stachowiak  <mjs@apple.com>
163
164         Fixed Radar 2891272 (JavaScript crashes loading quicktime.com and
165         apple.com)
166
167         * kjs/object.cpp: (ObjectImp::~ObjectImp): Don't call setGCAlloc
168         on object internals pointed to, because they may have already been
169         collected by the time this object is collected, and in that case
170         we would corrupt the malloc arena.
171
172         * Makefile.am: Make the stamp file depend on all the sources and
173         headers so the framework gets rebuilt properly.
174
175         * JavaScriptCore.pbproj/project.pbxproj: Some random numbers moved
176         around. No idea what I really changed.
177
178 2002-03-30  Darin Adler  <darin@apple.com>
179
180         * kjs/grammar.y: Took out Id tag so we won't constantly need to
181         update grammar.cpp.
182         * kjs/grammar.cpp: Regenerated without Id tag.
183
184         * .cvsignore: Ignore some additional autogenerated files.
185         * kjs/.cvsignore: Ignore some additional autogenerated files.
186
187 2002-03-30  Maciej Stachowiak  <mjs@apple.com>
188
189         * JavaScriptCore.pbproj/project.pbxproj: Install some of the
190         headers.
191
192 2002-03-30  Maciej Stachowiak  <mjs@apple.com>
193
194         Converted JavaScriptCore to build with Project Builder, in
195         preparation for B&I submission.
196
197         * English.lproj/InfoPlist.strings: Added.
198         * JavaScriptCore.pbproj/.cvsignore: Added.
199         * JavaScriptCore.pbproj/project.pbxproj: Added.
200         
201         * .cvsignore: Update the set of ignored things.
202
203         * Makefile.am: Hand off to PB for the main build, but still handle
204         the generated files and the test program.
205
206         * kjs/Makefile.am: Don't build anything except the generated
207         source files.
208
209         * kjs/KWQDef.h, kjs/config.h: Added minimal versions of these
210         files to get kjs to build.
211
212         Check in all the genrated files, since Project Builder isn't up to
213         the task of handling built sources:
214         
215         * kjs/array_object.lut.h: Added.
216         * kjs/date_object.lut.h: Added.
217         * kjs/grammar.cpp: Added.
218         * kjs/grammar.cpp.h: Added.
219         * kjs/grammar.h: Added.
220         * kjs/lexer.lut.h: Added.
221         * kjs/math_object.lut.h: Added.
222         * kjs/number_object.lut.h: Added.
223         * kjs/string_object.lut.h: Added.
224
225         * kjs/.cvsignore: Update set of ignored things.
226
227 2002-03-28  Maciej Stachowiak  <mjs@apple.com>
228
229         * kjs/kjs-test.chk: Update output for new test results.
230
231 2002-03-26  Maciej Stachowiak  <mjs@apple.com>
232
233         Set up kjs to build by itself into libJavaScriptCore.dylib.
234         
235         * .cvsignore: Added.
236         * Makefile.am: Added.
237         * dummy.cpp: Added.
238         * kjs/.cvsignore: Added.