| 2003-03-10 Darin Adler <darin@apple.com> |
| |
| Reviewed by Ken. |
| |
| - fixed 3193099 -- date parsing can't handle the time zone format that date formatting produces |
| |
| * kjs/date_object.cpp: (KJS::KRFCDate_parseDate): Allow a "GMT" prefix before the time zone offset. |
| |
| === Safari-65 === |
| |
| 2003-03-04 Darin Adler <darin@apple.com> |
| |
| Reviewed by Maciej. |
| |
| - got rid of some framework initialization (working on bug 2959353) |
| |
| * kjs/identifier.h: Turn Identifier:null into Identifier:null(). |
| * kjs/identifier.cpp: Removed Identifier:null and added Identifier:null(). |
| |
| * kjs/internal.cpp: Made NaN_Bytes and Inf_Bytes const. |
| |
| * kjs/completion.h: Use Identifier:null() instead of Identifier:null. |
| * kjs/function.h: Ditto. |
| * kjs/function_object.cpp: (FunctionObjectImp::construct): Ditto. |
| * kjs/nodes.cpp: (FuncExprNode::evaluate): Use Identifier:null() instead of Identifier:null. |
| |
| 2003-03-02 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Trey. |
| |
| - fixed 3158833 - ebay prefs page is so slow, it seems like a hang. |
| |
| 92% speed improvement on ebay prefs page. |
| 1% speed improvement on js-ibench and js-performance plt suites. |
| |
| There were a couple of problems with the identifier hash table that |
| I fixed: |
| |
| * kjs/identifier.cpp: |
| (void Identifier::remove): Adjust the shrink threshold to avoid |
| constantly growing and shrinking. |
| * kjs/ustring.cpp: |
| (UString::Rep::computeHash): Use a better hash function that |
| avoids collisions for obvious data sets. |
| |
| === Safari-64 === |
| |
| === Safari-63 === |
| |
| 2003-02-26 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Darin. |
| |
| - fixed 3156705 - REGRESSION: javascript menus improperly placed at umich.edu store |
| |
| * kjs/nodes.cpp: |
| (StatListNode::execute): If the first statement's completion is |
| not normal, return immediately. |
| |
| 2003-02-21 Darin Adler <darin@apple.com> |
| |
| Reviewed by Maciej. |
| |
| - fixed 3142355 -- nil-deref in CFTimeZoneCopyAbbreviation |
| |
| The real problem wasn't with the current time zone, but with the UTC time zone. |
| The poor sod had a broken /usr/share/zoneinfo directory, with a 0-byte-long UTC file. |
| |
| * kjs/date_object.cpp: (UTCTimeZone): Use CFTimeZoneCreateWithTimeIntervalFromGMT(NULL, 0.0) |
| to get the universal time zone instead of getting it by name. |
| |
| === Safari-62 === |
| |
| 2003-02-18 Darin Adler <darin@apple.com> |
| |
| Reviewed by Trey and Ken. |
| |
| - fixed 3142355 -- nil-deref in CFTimeZoneCopyAbbreviation |
| |
| Although I can't reproduce this bug, it seems that it's caused by CFTimeZoneCopyDefault returning NULL. |
| I'm almost certain that the UTC time zone will be created successfully in this case, so I'll just use that. |
| |
| * kjs/date_object.cpp: |
| (UTCTimeZone): Added. Gets the UTC time zone (once in a global). |
| (CopyLocalTimeZone): Added. Gets the local time zone, but falls back to UTC. |
| (gmtimeUsingCF): Use UTCTimeZone. |
| (localtimeUsingCF): Use CopyLocalTimeZone. |
| (mktimeUsingCF): Use CopyLocalTimeZone. |
| (timegmUsingCF): Use UTCTimeZone. |
| |
| 2003-02-12 Darin Adler <darin@apple.com> |
| |
| Reviewed by Dave. |
| |
| - fixed 3145442 -- toString(16) is not working, causing non-ASCII characters in mac.com homepage to be munged |
| |
| * kjs/number_object.cpp: (NumberProtoFuncImp::call): Add handling for toString with a radix other than |
| 10 passed as an argument. |
| |
| 2003-02-11 Trey Matteson <trey@apple.com> |
| |
| Set -seg1addr in our build styles, but not for the B&I build. |
| This makes our SYMROOTS from B&I usable to determine symbols from crash |
| logs from the field. |
| Also nuked DeploymentFat build style. |
| |
| Reviewed by Ken. |
| |
| * JavaScriptCore.pbproj/project.pbxproj: |
| |
| 2003-02-04 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Darin. |
| |
| * JavaScriptCore.pbproj/project.pbxproj: Updated to build the framework |
| standalone instead of embedded when doing a B&I build for Panther. |
| |
| === Safari-55 === |
| |
| 2003-01-29 Darin Adler <darin@apple.com> |
| |
| Reviewed by John. |
| |
| * kjs/scope_chain.cpp: Rolled out the fix to bug 3137084. |
| It caused a massive storage leak, and probably didn't even fix the bug. |
| |
| 2003-01-28 Darin Adler <darin@apple.com> |
| |
| Reviewed by Ken. |
| |
| - fixed 3157318 -- hang at time zone page after clicking on map at www.time.gov |
| |
| * kjs/date_object.cpp: (KJS::KRFCDate_parseDate): Allow a comma after the day. |
| Given how this code is structured, it allows commas in unwanted contexts too, but |
| that's almost certainly harmless. |
| |
| 2003-01-28 Darin Adler <darin@apple.com> |
| |
| Reviewed by Maciej. |
| |
| - fixed 3144918 -- Can't drill down multiple levels of categories when selling on ebay |
| if first item in list is chosen |
| |
| The bug was caused by having array values in the property map past the storageLength cutoff |
| in an array object; those values would not be seen when you do a get. |
| |
| * kjs/array_object.cpp: |
| (ArrayInstanceImp::put): Implement a new rule for resizing the storage that is independent |
| of the length. The old rule would sometimes make the storage very big if you added two elements |
| in a row that both had large, but consecutive indexes. This eliminates any cases where we |
| make sparse entries in the property map below the sparse array cutoff. |
| (ArrayInstanceImp::resizeStorage): Don't ever make storage size bigger than the cutoff unless |
| the caller specifically requests it. |
| (ArrayInstanceImp::setLength): Change this so it only makes the storage smaller, never larger. |
| We will actually enlarge the storage when putting elements in. |
| |
| 2003-01-25 Darin Adler <darin@apple.com> |
| |
| Reviewed by Maciej. |
| |
| * kjs/Makefile.am: Add dependencies so the .lut.h files get rebuilt if the script changes. |
| |
| === Safari-54 === |
| |
| 2003-01-22 Darin Adler <darin@apple.com> |
| |
| Reviewed by Maciej. |
| |
| - fixed 3137084 -- Many non-reproducible crashers in ContextImp::mark / ScopeChain::mark |
| |
| * kjs/scope_chain.cpp: (ScopeChain::push): Add assertion. |
| (ScopeChain::release): Fix while loop so that it decrements refCount of the first node in |
| the chain too. |
| |
| 2003-01-21 Darin Adler <darin@apple.com> |
| |
| - correct our copyrights to 2003; copyright is based on year of publication, not year worked on |
| |
| 2003-01-16 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Darin. |
| |
| - made minor tweaks to work better with Mozilla's JavaScript tests. |
| |
| * kjs/testkjs.cpp: |
| (VersionFunctionImp::call): Implemented |
| (main): Ignore files named -f (hack to match -f <filename syntax |
| that moz JavaScript tests expect). Also use return code 3 instead |
| of 1 for uncaught exception. |
| |
| 2003-01-16 Darin Adler <darin@apple.com> |
| |
| * kjs/number_object.cpp: (NumberObjectImp::construct): |
| Fix build, remove stray space. |
| |
| 2003-01-16 Darin Adler <darin@apple.com> |
| |
| Reviewed by Maciej. |
| |
| - rolled in a change from the KJS folks |
| |
| * kjs/number_object.h: Use ObjectImp *, not Object, for the proto. |
| * kjs/number_object.cpp: |
| (NumberInstanceImp::NumberInstanceImp): Use ObjectImp *, not Object, for the proto. |
| (NumberPrototypeImp::NumberPrototypeImp): Pass ObjectImp. |
| (NumberObjectImp::construct): Use ObjectImp. |
| |
| === Safari-52 === |
| |
| 2003-01-14 Darin Adler <darin@apple.com> |
| |
| Reviewed by Ken. |
| |
| - rolled in a change from the KJS folks |
| |
| Fixes a bug where the date functions would not accept non-strings. |
| And provides a bit of a speedup. |
| |
| * kjs/date_object.h: Change parameter type for parseDate. |
| * kjs/date_object.cpp: |
| (DateObjectFuncImp::call): Always call toString, don't check the type. |
| (KJS::parseDate): Take a UString parameter, not a String parameter. |
| |
| 2003-01-13 Darin Adler <darin@apple.com> |
| |
| * kjs/ustring.h: Fix spelling of occurrence. |
| |
| 2003-01-12 Darin Adler <darin@apple.com> |
| |
| Reviewed by Maciej. |
| |
| - turned more recursion into iteration, and fixed some backwards stuff |
| |
| * kjs/grammar.y: Use the normal idiom for CaseClauses and FormalParameterList |
| rather than using append(). |
| * kjs/grammar.cpp: Regenerated. |
| |
| * kjs/nodes.h: Change ClauseListNode and ParameterNode to use the normal idiom, |
| and got rid of append methods. Also added friend declarations and calls to reverseList(). |
| * kjs/nodes.cpp: |
| (StatListNode::ref): Iteration, not recursion. |
| (StatListNode::deref): Iteration, not recursion. |
| (StatListNode::execute): Iteration, not recursion. |
| (StatListNode::processVarDecls): Iteration, not recursion. |
| (CaseClauseNode::reverseList): Added. |
| (ClauseListNode::ref): Iteration, not recursion. |
| (ClauseListNode::deref): Iteration, not recursion. |
| (ClauseListNode::processVarDecls): Iteration, not recursion. |
| (CaseBlockNode::reverseLists): Added. |
| (ParameterNode::ref): Iteration, not recursion. |
| (ParameterNode::deref): Iteration, not recursion. |
| (FuncDeclNode::reverseParameterList): Added. |
| (FuncExprNode::reverseParameterList): Added. |
| (SourceElementsNode::ref): Iteration, not recursion. |
| (SourceElementsNode::deref): Iteration, not recursion. |
| (SourceElementsNode::execute): Use variable name of n to match other functions. |
| (SourceElementsNode::processFuncDecl): Ditto. |
| (SourceElementsNode::processVarDecls): Ditto. |
| |
| * kjs/nodes2string.cpp: |
| (SourceStream::operator<<): Used a switch statement for a bit of added clarity. |
| (ElementNode::streamTo): Iteration, not recursion. |
| (PropertyValueNode::streamTo): Iteration, not recursion. |
| (ArgumentListNode::streamTo): Iteration, not recursion. |
| (StatListNode::streamTo): Iteration, not recursion, and fixed order. |
| (VarDeclListNode::streamTo): Iteration, not recursion. |
| (ClauseListNode::streamTo): Used for statement to match other functions. |
| (CaseBlockNode::streamTo): Used for statement to match other functions. |
| (ParameterNode::streamTo): Iteration, not recursion. |
| (SourceElementsNode::streamTo): Iteration, not recursion, and fixed order that has been |
| backwards since I changed how this works in nodes.cpp. |
| |
| 2003-01-11 Darin Adler <darin@apple.com> |
| |
| Reviewed by John. |
| |
| - changes inspired by things I noticed reviewing diffs vs. KDE when preparing the tarball |
| |
| * kjs/function.cpp: (GlobalFuncImp::call): Use strtol when strtoll is |
| not available. Do #ifndef NDEBUG, not #if !NDEBUG. |
| * kjs/function.h: Do #ifndef NDEBUG, not #if !NDEBUG. |
| * kjs/internal.cpp: |
| (InterpreterImp::initGlobalObject): Do #ifndef NDEBUG, not #if !NDEBUG. |
| (KJS::printInfo): Remove case for ListType and remove default case that just |
| ends up suppressing the "missing case" warning and does no good. |
| * kjs/interpreter.cpp: (Interpreter::evaluate): Do #ifndef NDEBUG, not #if !NDEBUG. |
| * kjs/nodes.cpp: |
| (Node::finalCheck): Fix accidentally-deleted code in an ifdef we never compile. |
| (FunctionCallNode::evaluate): Remove bogus XXX comment. Maciej put this comment in, |
| and together we determined it's not needed. |
| (TypeOfNode::evaluate): Ditto. |
| * kjs/object.cpp: Remove assert that refers to ListType. |
| * kjs/value.h: Remove ListType. |
| |
| 2003-01-09 Darin Adler <darin@apple.com> |
| |
| * JavaScriptCore.pbproj/project.pbxproj: Add the year 2003, remove CFBundleIconFile, |
| bump marketing version to 0.8.1 and version to 52u to keep up with the branch, |
| remove CFHumanReadableCopyright, remove NSPrincipalClass. |
| |
| * English.lproj/InfoPlist.strings: Updated to match above changes. |
| |
| 2003-01-05 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by no one cause I'm just changing copyright strings. |
| |
| * JavaScriptCore.pbproj/project.pbxproj: Added non-Apple copyrights to |
| copyright strings. |
| * English.lproj/InfoPlist.strings: Likewise. |
| |
| 2003-01-05 Darin Adler <darin@apple.com> |
| |
| * JavaScriptCore.pbproj/project.pbxproj: Fix "Apple Compupter" typo. |
| Remove unneeded CFBundleLongVersionString we don't use anywhere else. |
| |
| 2003-01-02 Darin Adler <darin@apple.com> |
| |
| Reviewed by Maciej. |
| |
| - fixed 3138213 -- browser hangs trying to open Apple travel site |
| |
| * kjs/date_object.cpp: (timetUsingCF): Check for very-negative year numbers too. |
| |
| === Alexander-48 === |
| |
| === Alexander-47 === |
| |
| 2002-12-30 Darin Adler <darin@apple.com> |
| |
| Reviewed by Don and Maciej. |
| |
| - follow-on to my fix for 3134693 that fixes one more case of recursion and simplifies further |
| |
| * kjs/grammar.y: Remove SourceElementNode and just use a StatementNode instead. |
| Reverse SourceElements rule so the recursive rule comes first as in the original |
| KJS code (avoids actual parser recursion). |
| |
| * kjs/grammar.cpp: Regenerated. |
| * kjs/grammar.cpp.h: Regenerated. |
| * kjs/grammar.h: Regenerated. |
| |
| * kjs/nodes.h: Make processFuncDecl a virtual function in StatementNode so that we can |
| use a StatementNode instead of a SourceElementNode. Add a call to reverseList in BlockNode |
| to correct the order of the linked list in SourceElementsNode, to replace the technique |
| where we reversed it in the parser. Remove SourceElementNode class, and make the element in |
| SourceElementsNode be a StatementNode instead. |
| * kjs/nodes.cpp: Remove SourceElementNode code. |
| (StatementNode::processFuncDecl): Added empty function. |
| (BlockNode::reverseList): Added. Used to make the SourceElements list ordered correctly. |
| * kjs/nodes2string.cpp: Remove SourceElementNode code. |
| |
| === Alexander-46 === |
| |
| 2002-12-28 Darin Adler <darin@apple.com> |
| |
| Reviewed by Gramps and Ken. |
| Checked in by Ken. |
| |
| - fixed 3134693 -- carsdirect.com crash on used car search, due to large JavaScript array |
| |
| The parser was using recursion to handle many types of lists. |
| This meant that we crashed out of stack space when any of the lists were extra big. |
| I applied the same sort of fix we had already applied a while back for argument lists for |
| all the other types of lists, including the list of ElementNode that was the reason for |
| the crash reported here. |
| |
| * kjs/grammar.y: Removed ElisionNode altogether and just use a count. |
| Use specific node types for PropertyNameAndValueList and PropertyName. |
| |
| * kjs/grammar.cpp: Regenerated. |
| * kjs/grammar.cpp.h: Regenerated. |
| * kjs/grammar.h: Regenerated. |
| |
| * kjs/nodes.h: Elide "ElisionNode", changing objects to keep elision counts instead. |
| Make the ObjectLiteralNode list field be PropertyValueNode, not just Node. |
| Make PropertyValueNode fields have specific types. Add new reverse list functions, calls |
| to those functions in the constructors, and friend declarations as needed so the class |
| that holds the head of a list can reverse the list during parsing. |
| * kjs/nodes.cpp: |
| (ElementNode::ref): Use iteration instead of recursion. Also elide "elision". |
| (ElementNode::deref): Ditto. |
| (ElementNode::evaluate): Use iteration instead of recursion, taking advantage of |
| the fact that the linked list is reversed. Also use the elision count rather than |
| an elision list. |
| (ArrayNode::reverseElementList): Reverse the list so we can iterate normally. |
| (ArrayNode::ref): Elide "elision". |
| (ArrayNode::deref): Ditto. |
| (ArrayNode::evaluate): Use elision count instead of elision list. |
| (ObjectLiteralNode::reverseList): Reverse the list so we can iterate normally. |
| (PropertyValueNode::ref): Use iteration instead of recursion. |
| (PropertyValueNode::deref): Use iteration instead of recursion. |
| (PropertyValueNode::evaluate): Use iteration instead of recursion, taking advantage |
| of the fact that the linked list is reversed. |
| (ArgumentListNode::ref): Change code to match the other similar cases we had to revise. |
| (ArgumentListNode::deref): Ditto. |
| (ArgumentListNode::evaluateList): Ditto. |
| (ArgumentsNode::reverseList): Ditto. |
| (VarDeclListNode::ref): Use iteration instead of recursion. |
| (VarDeclListNode::deref): Ditto. |
| (VarDeclListNode::evaluate): Use iteration instead of recursion, taking advantage |
| of the fact that the linked list is reversed. |
| (VarDeclListNode::processVarDecls): Ditto. |
| (VarStatementNode::reverseList): Reverse the list so we can iterate normally. |
| (FunctionBodyNode::FunctionBodyNode): Use BlockNode as the base class, removing |
| most of the FunctionBodyNode class. |
| |
| * kjs/nodes2string.cpp: |
| (ElementNode::streamTo): Update for using a count for elision, and reverse linking. |
| (ArrayNode::streamTo): Update for using a count for elision. |
| (PropertyValueNode::streamTo): Update for reverse linking. |
| (ArgumentListNode::streamTo): Update for reverse linking. This has been wrong for |
| a while, since we added the reverse a long time ago. |
| (VarDeclListNode::streamTo): Update for reverse linking. |
| (ParameterNode::streamTo): Update for reverse linking. |
| |
| === Alexander-45 === |
| |
| 2002-12-22 Darin Adler <darin@apple.com> |
| |
| Reviewed by Don and John. |
| |
| - fixed 3134449 -- Date.UTC returns NaN (invalid date) |
| |
| Did more testing of the date functions and made them behave like the other browsers. |
| There were three problems: |
| |
| 1) We did a validity check that other browsers don't do (hence the NaN). |
| 2) We treated passed-in dates as local time even in Date.UTC (hence a wrong result |
| once I fixed the NaN). |
| 3) The results of ToUTCString (and ToGMTString) weren't formatted quite the same |
| as other browsers. |
| |
| Also found a couple of silly but unrelated coding mistakes. |
| |
| * kjs/date_object.cpp: |
| (timetUsingCF): Added. Has the guts of mktimeUsingCF, but without the CFGregorianDateIsValid |
| check. Other browsers accept invalid dates. Also takes a time zone parameter. |
| (mktimeUsingCF): Calls timetUsingCF with the current time zone. |
| (timegmUsingCF): Calls timetUsingCF with the UTC time zone. |
| (formatDate): Remove the includeComma flag. |
| (formatDateUTCVariant): Added. For use instead of formatDate with the includeComma flag. |
| Puts the day before the month name. |
| (DateProtoFuncImp::call): Use the new formatDateUTCVariant for ToGMTString and ToUTCString. |
| Without this change the date didn't match other browsers. |
| (DateObjectImp::DateObjectImp): Use UTCPropertyName. Somehow I declared this and didn't use |
| it before. |
| (DateObjectImp::construct): Pass -1 for is_dst literally instead of using invalidDate. |
| Changing this to invalidDate was just a mistake (although no real difference in compiled |
| code since invalidDate is just -1). |
| (DateObjectFuncImp::call): Call timegm for the UTC case instead of mktime. |
| |
| === Alexander-44 === |
| |
| === Alexander-43 === |
| |
| 2002-12-20 Trey Matteson <trey@apple.com> |
| |
| We now build with symbols the B&I. Deployment builds are without symbols, |
| so it is easy to generate a non-huge app as a one-off. |
| |
| Reviewed by Darin |
| |
| * JavaScriptCore.pbproj/project.pbxproj: |
| |
| === Alexander-42 === |
| |
| === Alexander-41 === |
| |
| === Alexander-40 === |
| |
| 2002-12-18 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by John. |
| |
| - fixed 3131171 - Change Alex versions to satisfy both marketing and B&I requirements |
| |
| * English.lproj/InfoPlist.strings: |
| * JavaScriptCore.pbproj/project.pbxproj: |
| |
| 2002-12-17 Darin Adler <darin@apple.com> |
| |
| Reviewed by Trey. |
| |
| * JavaScriptCore.pbproj/project.pbxproj: Removed signature. |
| |
| === Alexander-39 === |
| |
| === Alexander-38 === |
| |
| 2002-12-16 Darin Adler <darin@apple.com> |
| |
| Reviewed by Don and Maciej. |
| |
| - fixed 3129115 -- need Apple copyright added to open source documents |
| |
| * tons of files: Added our copyright to files we modified, and updated all to standard format. |
| |
| - other changes |
| |
| * JavaScriptCore.pbproj/project.pbxproj: Set MACOSX_DEPLOYMENT_TARGET to 10.2. |
| Also removed completion.cpp. |
| * kjs/completion.cpp: Removed. |
| * kjs/completion.h: Made the Completion constructor inline. |
| |
| * kjs/grammar.y: Removed an obsolete "pretend ifdef". No need to put these in APPLE_CHANGES now. |
| |
| === Alexander-37 === |
| |
| === JavaScriptCore-37u2 === |
| |
| 2002-12-15 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Darin. |
| |
| * JavaScriptCore.pbproj/project.pbxproj: Bump version to 37u2. |
| |
| 2002-12-14 Darin Adler <darin@apple.com> |
| |
| Reviewed by Maciej. |
| |
| * JavaScriptCore.pbproj/project.pbxproj: Make dtoa.h visible as an SPI so I can |
| use it inside QString. |
| |
| 2002-12-14 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Ken. |
| |
| - further corrections to number printing. |
| |
| * kjs/ustring.cpp: |
| (UString::from): Make number printing match the ECMA standard |
| algorithm. |
| |
| 2002-12-14 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Dave. |
| |
| - fix toString() conversion for numbers less than 1. Negative |
| exponents are still wrong though (things like 1E-34). |
| |
| * kjs/ustring.cpp: |
| (UString::from): Don't print empty string for numbers less than 1, |
| and remember to add extra 0s after the decimal for negative |
| decimal positions. |
| |
| === Alexander-37u1 === |
| |
| === Alexander-36 === |
| |
| 2002-12-12 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Darin. |
| |
| - fixed 3056449 - can't select state at tucows.com |
| |
| * kjs/array_instance.h: |
| * kjs/array_object.cpp: |
| (ArrayInstanceImp::propList): Add numeric proprties that are in |
| special storage. |
| * kjs/array_object.h: |
| * kjs/object.h: Make propList a virtual method. |
| |
| 2002-12-11 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Don. |
| |
| - Add kjsprint global function in Development build for ease of debugging. |
| - Print uncaught JavaScript exceptions to the console in Development. |
| - Improve wording of exception error messages. |
| |
| * kjs/function.cpp: |
| (GlobalFuncImp::call): |
| * kjs/function.h: |
| * kjs/internal.cpp: |
| (InterpreterImp::initGlobalObject): |
| * kjs/interpreter.cpp: |
| (Interpreter::evaluate): |
| * kjs/nodes.cpp: |
| (NewExprNode::evaluate): |
| (FunctionCallNode::evaluate): |
| (RelationalNode::evaluate): |
| |
| 2002-12-10 John Sullivan <sullivan@apple.com> |
| |
| Fixed more "Alexander"s that were lurking in places I forgot |
| to look before. |
| |
| Reviewed by Darin |
| |
| * Makefile.am: |
| "rm -rf $(SYMROOTS)/Safari.app/Frameworks/JavaScriptCore.framework" |
| |
| 2002-12-09 Darin Adler <darin@apple.com> |
| |
| Reviewed by Maciej. |
| |
| * JavaScriptCore.pbproj/project.pbxproj: Bump versions to 0.8 and 35u. |
| * English.lproj/InfoPlist.strings: In here too. |
| |
| 2002-12-09 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by Ken. |
| |
| - fixed 3059637 - all articles missing at excite.com sports page |
| - fixed 3065903 - most of content missing at excite.com news page |
| |
| These bugs both came up because a JavaScript function has a var |
| declaration that collides with a function parameter name. |
| |
| * kjs/nodes.cpp: |
| (VarDeclNode::processVarDecls): Don't set the property to |
| undefined if a property with that name is already set on the |
| global object. Otherwise we may clobber function parameters with |
| undefined even before hitting a possible var initializer. |
| |
| 2002-12-06 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by: Darin Adler |
| |
| - made framework embedding work correctly with buildit |
| |
| * JavaScriptCore.pbproj/project.pbxproj: Give framework a relative |
| install path, don't install it the normal way, and copy it |
| manually to /AppleInternal/Library/Frameworks if installing. |
| |
| === Alexander-35 === |
| |
| 2002-12-04 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by: Richard Williamson |
| |
| Added explicit lock/unlock methods so Sherlock can grab the |
| interpreter lock as needed. |
| |
| - partially addressed 3084320 - JavaScriptCore crash |
| |
| * kjs/internal.cpp: |
| (InterpreterImp::InterpreterImp): |
| (InterpreterImp::lock): |
| (InterpreterImp::unlock): |
| * kjs/internal.h: |
| * kjs/interpreter.cpp: |
| (Interpreter::lock): |
| (Interpreter::unlock): |
| * kjs/interpreter.h: |
| |
| 2002-12-04 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by: Darin Adler |
| |
| Set things up so JavaScriptCore builds in PCRE and uses it for |
| regular expressions. This fixes many form validation bugs: |
| |
| - fixed 3103197 - javascript at fidelity.com rejects valid input |
| - fixed 2942552 - form validation at weather.com fails |
| - fixed 3079752 - js always reports textarea is empty |
| - fixed 3079719 - covad.com "check availalbility" fails |
| |
| * Makefile.am: Add pcre subdir. |
| * kjs/config.h: define HAVE_PCREPOSIX to true. |
| * kjs/regexp.h: Don't include pcreposix.h since nothing from there |
| is used. |
| * pcre/.cvsignore: Added. |
| * pcre/ChangeLog: Removed. |
| * pcre/INSTALL: Removed. |
| * pcre/Makefile.am: Added. |
| * pcre/Makefile.in: Removed. |
| * pcre/NEWS: Removed. |
| * pcre/NON-UNIX-USE: Removed. |
| * pcre/README: Removed. |
| * pcre/chartables.c: Added. |
| * pcre/config.guess: Removed. |
| * pcre/config.in: Removed. |
| * pcre/config.sub: Removed. |
| * pcre/configure: Removed. |
| * pcre/configure.in: Removed. |
| * pcre/dll.mk: Removed. |
| * pcre/doc/Tech.Notes: Removed. |
| * pcre/doc/pcre.3: Removed. |
| * pcre/doc/pcre.html: Removed. |
| * pcre/doc/pcre.txt: Removed. |
| * pcre/doc/pcregrep.1: Removed. |
| * pcre/doc/pcregrep.html: Removed. |
| * pcre/doc/pcregrep.txt: Removed. |
| * pcre/doc/pcreposix.3: Removed. |
| * pcre/doc/pcreposix.html: Removed. |
| * pcre/doc/pcreposix.txt: Removed. |
| * pcre/doc/pcretest.1: Removed. |
| * pcre/doc/pcretest.html: Removed. |
| * pcre/doc/pcretest.txt: Removed. |
| * pcre/doc/perltest.txt: Removed. |
| * pcre/install-sh: Removed. |
| * pcre/ltmain.sh: Removed. |
| * pcre/pcre-config.h: Added. |
| * pcre/pcre-config.in: Removed. |
| * pcre/internal.h: Include pcre-config.h instead of config.h |
| * pcre/pcre.c: |
| (ord2utf8): Fix warnings. |
| (pcre_compile): Fix warnings. |
| * pcre/pcre.def: Removed. |
| * pcre/pcre.h: Added. |
| * pcre/pcre.in: Removed. |
| * JavaScriptCore.pbproj/project.pbxproj: Added pcre files to build. |
| * JavaScriptCorePrefix.h: Guard c++ headers with #ifdef __cplusplus. |
| |
| 2002-12-04 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by: Richard Williamson |
| |
| * pcre/doc/*: Added. |
| * pcre/testdata/*: Added. |
| |
| 2002-12-03 Maciej Stachowiak <mjs@apple.com> |
| |
| Reviewed by: Darin Adler |
| |
| - imported PCRE 3.9 into the tree; this isn't actually compiled or |
| used yet. |
| |
| * pcre/*: Added. |
| |
| == Rolled over to ChangeLog-2002-12-03 == |