3 2002-05-24 Maciej Stachowiak <mjs@apple.com>
5 Added license and acknowledgements.
19 === JavaScriptCore-5 ===
21 2002-05-21 Maciej Stachowiak <mjs@apple.com>
23 Reviewed by: Richard Williamson
25 Fixed Radar 2928775 - Sherlock crashes sitting in stocks channel
28 (InterpreterImp::InterpreterImp): Set the interp pointer earlier,
29 in case garbage collection takes place while creating the global
32 2002-05-15 Darin Adler <darin@apple.com>
34 Reviewed by: Maciej Stachowiak
37 Use all-am and clean-am instead of all and clean because it's better and
38 to make "make check" at the top level work right.
40 2002-05-13 Darin Adler <darin@apple.com>
42 Reviewed by: Maciej Stachowiak
44 * kjs/value.h: Fix comment typos.
46 === JavaScriptCore-4 ===
48 2002-05-10 Maciej Stachowiak <mjs@apple.com>
50 Reviewed by: Ken Kocienda and Darin Adler
52 Fixed the following bug:
54 Radar 2890573 - JavaScriptCore needs to be thread-safe
56 Actually this is only a weak form of thread-safety - you can safely
57 use different interpreters from different threads at the same
58 time. If you try to use a single interpreter object from multiple
59 threads, you need to provide your own locking.
61 * kjs/collector.h, kjs/collector.cpp:
62 (Collector::lock, Collector::unlock): Trivial implementation of a
64 (Collector::allocate): Lock around the body of this function.
65 (Collector::collect): Likewise.
66 (Collector::finalCheck): Likewise.
67 (Collector::numInterpreters): Likewise.
68 (Collector::numGCNotAllowedObjects): Likewise.
69 (Collector::numReferencedObjects): Likewise.
71 (Parser::parse): use a mutex to lock around the whole parse, since
72 it uses a bunch of global state.
73 (InterpreterImp::InterpreterImp): Grab the Collector lock here,
74 both the mutually exclude calls to the body of this function, and
75 to protect the s_hook static member which the collector pokes at.
76 (InterpreterImp::clear): Likewise.
78 (statBufferKeyCleanup, statBufferKeyInit, UString::ascii): Convert
79 use of static variable
81 (ValueImp::ValueImp, ValueImp::mark, ValueImp::marked,
82 ValueImp::setGcAllowed): Grab the GC lock around any flag changes.
86 2002-05-08 Darin Adler <darin@apple.com>
90 (Collector::numInterpreters):
91 (Collector::numGCNotAllowedObjects):
92 (Collector::numReferencedObjects):
93 Add three new functions so we can see a bit more about leaking JavaScriptCore.
95 2002-05-06 Darin Adler <darin@apple.com>
97 * JavaScriptCorePrefix.h: Added.
98 * JavaScriptCore.pbproj/project.pbxproj: Use PFE precompiling.
99 Also switch from xNDEBUG to NDEBUG.
101 === Alexander 0.3c2 (v1) ===
103 2002-04-18 Darin Adler <darin@apple.com>
105 * JavaScriptCore.pbproj/project.pbxproj: Oops. Take out -Wstrict-prototypes, put back
106 -Wmissing-prototypes.
108 2002-04-18 Darin Adler <darin@apple.com>
110 * JavaScriptCore.pbproj/project.pbxproj: Take out -Wmissing-prototypes
111 because system headers are triggering it when we don't have
112 precompiled headers on.
114 2002-04-18 Darin Adler <darin@apple.com>
118 * JavaScriptCore.pbproj/project.pbxproj: Turn on gcc3 and the same set of warnings
119 as in the rest of Labyrinth (see top level ChangeLog for details).
121 2002-04-17 Maciej Stachowiak <mjs@apple.com>
123 Reviewed by: Darin Adler <darin@apple.com>
125 * kjs/testkjs.cpp: Don't include <iostream.h> to avoid gcc3
128 2002-04-15 Darin Adler <darin@apple.com>
130 Reviwed by: Maciej Stachowiak <mjs@apple.com>
133 * kjs/property_map.cpp:
135 Removed some unneeded <config.h> includes so we are more similar
136 to the real KDE sources.
138 2002-04-15 Darin Adler <darin@apple.com>
140 Reviwed by: Maciej Stachowiak <mjs@apple.com>
142 Merged changes from KDE 3.0 final and did some build fixes.
144 * JavaScriptCore.pbproj/project.pbxproj: Added nodes2string.cpp.
146 * kjs/grammar.*: Regenerated.
147 * kjs/*.lut.h: Regenerated.
149 2002-04-08 Darin Adler <darin@apple.com>
151 Reviwed by: Maciej Stachowiak <mjs@apple.com>
153 * JavaScriptCore.pbproj/project.pbxproj: Re-added -Wno-format-y2k.
155 2002-04-04 Darin Adler <darin@apple.com>
157 * JavaScriptCore.pbproj/project.pbxproj: Add an Unoptimized build
158 style: exactly like Development except without the -O.
160 2002-04-03 Darin Adler <darin@apple.com>
162 * kjs/Makefile.am: Gratuitous cleanup.
164 2002-04-02 Darin Adler <darin@apple.com>
166 * JavaScriptCore.pbproj/project.pbxproj: Update flags as I did for
169 2002-04-02 Maciej Stachowiak <mjs@apple.com>
171 * JavaScriptCore.pbproj/project.pbxproj: Pass -Wno-format-y2k so
172 the project builds with gcc3.
174 * kjs/nodes.cpp: Avoid including an obsolete header to avoid
177 2002-04-02 Darin Adler <darin@apple.com>
179 * kjs/property_map.cpp: (PropertyMap::~PropertyMap): Deallocate the
180 map by calling clear so we don't leak the entire map.
182 2002-04-02 Darin Adler <darin@apple.com>
184 * kjs/internal.cpp: (InterpreterImp::globalClear): Add code to
185 deallocate and null out emptyList, because once the last interpreter
186 is destroyed there's nothing to keep it from being garbage collected.
188 2002-04-01 Darin Adler <darin@apple.com>
190 Got rid of KWQDef.h because it's dangerous to have two files with
191 the same name and different contents.
193 * JavaScriptCore.pbproj/project.pbxproj:
194 * kjs/KWQDef.h: Removed.
195 * kjs/ustring.h: Defines unsigned int types inline now.
197 2002-03-30 Maciej Stachowiak <mjs@apple.com>
199 Fixed Radar 2891272 (JavaScript crashes loading quicktime.com and
202 * kjs/object.cpp: (ObjectImp::~ObjectImp): Don't call setGCAlloc
203 on object internals pointed to, because they may have already been
204 collected by the time this object is collected, and in that case
205 we would corrupt the malloc arena.
207 * Makefile.am: Make the stamp file depend on all the sources and
208 headers so the framework gets rebuilt properly.
210 * JavaScriptCore.pbproj/project.pbxproj: Some random numbers moved
211 around. No idea what I really changed.
213 2002-03-30 Darin Adler <darin@apple.com>
215 * kjs/grammar.y: Took out Id tag so we won't constantly need to
217 * kjs/grammar.cpp: Regenerated without Id tag.
219 * .cvsignore: Ignore some additional autogenerated files.
220 * kjs/.cvsignore: Ignore some additional autogenerated files.
222 2002-03-30 Maciej Stachowiak <mjs@apple.com>
224 * JavaScriptCore.pbproj/project.pbxproj: Install some of the
227 2002-03-30 Maciej Stachowiak <mjs@apple.com>
229 Converted JavaScriptCore to build with Project Builder, in
230 preparation for B&I submission.
232 * English.lproj/InfoPlist.strings: Added.
233 * JavaScriptCore.pbproj/.cvsignore: Added.
234 * JavaScriptCore.pbproj/project.pbxproj: Added.
236 * .cvsignore: Update the set of ignored things.
238 * Makefile.am: Hand off to PB for the main build, but still handle
239 the generated files and the test program.
241 * kjs/Makefile.am: Don't build anything except the generated
244 * kjs/KWQDef.h, kjs/config.h: Added minimal versions of these
245 files to get kjs to build.
247 Check in all the genrated files, since Project Builder isn't up to
248 the task of handling built sources:
250 * kjs/array_object.lut.h: Added.
251 * kjs/date_object.lut.h: Added.
252 * kjs/grammar.cpp: Added.
253 * kjs/grammar.cpp.h: Added.
254 * kjs/grammar.h: Added.
255 * kjs/lexer.lut.h: Added.
256 * kjs/math_object.lut.h: Added.
257 * kjs/number_object.lut.h: Added.
258 * kjs/string_object.lut.h: Added.
260 * kjs/.cvsignore: Update set of ignored things.
262 2002-03-28 Maciej Stachowiak <mjs@apple.com>
264 * kjs/kjs-test.chk: Update output for new test results.
266 2002-03-26 Maciej Stachowiak <mjs@apple.com>
268 Set up kjs to build by itself into libJavaScriptCore.dylib.
271 * Makefile.am: Added.
273 * kjs/.cvsignore: Added.