15 years agoFix entity handling in the main document content (attributes still broken)
lars [Fri, 27 Jul 2007 13:57:54 +0000 (13:57 +0000)]
Fix entity handling in the main document content (attributes still broken)

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24731 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoCorrectly convert a null QString into a null WebCore::String. Add a String(const...
lars [Fri, 27 Jul 2007 13:57:33 +0000 (13:57 +0000)]
Correctly convert a null QString into a null WebCore::String. Add a String(const QStringRef&) constructor so that we can avoid converting QStringRef via QString to WebCore::String.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24730 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoParse version and encoding of the xml document.
lars [Fri, 27 Jul 2007 13:57:07 +0000 (13:57 +0000)]
Parse version and encoding of the xml document.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24729 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoCorrectly or semi-correctly parse the public and system id.
lars [Fri, 27 Jul 2007 13:56:52 +0000 (13:56 +0000)]
Correctly or semi-correctly parse the public and system id.

Patch from Lars.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24728 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix uri parsing for attributes.
lars [Fri, 27 Jul 2007 13:56:37 +0000 (13:56 +0000)]
Fix uri parsing for attributes.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24727 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFixing qualified name parsing - from Lars.
lars [Fri, 27 Jul 2007 13:56:19 +0000 (13:56 +0000)]
Fixing qualified name parsing - from Lars.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24726 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoParse dtd's
lars [Fri, 27 Jul 2007 13:56:05 +0000 (13:56 +0000)]
Parse dtd's

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24725 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoImplement error handling.
lars [Fri, 27 Jul 2007 13:55:49 +0000 (13:55 +0000)]
Implement error handling.

Add our copyrights

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24724 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoMaking the stylesheets work (plus everything else basically)
lars [Fri, 27 Jul 2007 13:55:35 +0000 (13:55 +0000)]
Making the stylesheets work (plus everything else basically)

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24723 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoRemove the libxml dependency when not compiling with XSLT.
lars [Fri, 27 Jul 2007 13:55:21 +0000 (13:55 +0000)]
Remove the libxml dependency when not compiling with XSLT.

Just ifdefing, displaying xml doesn't work.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24722 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWebKitQt:
zecke [Fri, 27 Jul 2007 12:26:58 +0000 (12:26 +0000)]

2007-07-27  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Mark.

        Don't create an app bundle on OSX to keep WebKitTools/Scripts/run-launcher working.

        * QtLauncher/QtLauncher.pro:

2007-07-27  Holger Hans Peter Freyther  <zecke@selfish.org>

        Reviewed by Mark.

        Correct the path of GdkLauncher and make checkFrameworks work on OSX
        when building the Qt or Gtk+ port.

        * GdkLauncher/GdkLauncher.pro: Don't create an app bundle on OSX
        * Scripts/run-launcher:
        * Scripts/webkitdirs.pm: Don't add WebKit if we build the Qt or Gtk+ port.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24721 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWork around bug in the moc when used as preprocessor for generating the bindings...
hausmann [Fri, 27 Jul 2007 12:26:22 +0000 (12:26 +0000)]
Work around bug in the moc when used as preprocessor for generating the bindings. -DFOO=1 is needed instead of -DFOO to make the <hash>if FOO conditional match.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24720 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago2007-07-27 Patrick Hanna <phanna@email.unc.edu>
bdash [Fri, 27 Jul 2007 11:59:09 +0000 (11:59 +0000)]
2007-07-27  Patrick Hanna  <phanna@email.unc.edu>

        Reviewed by Darin Adler.

        Change PluginBase::refresh to be static and update PluginsFunc::callAsFunction accordingly. Now we no longer
        allocate an instance of a JSObject subclass on the stack which could lead to a crash during garbage collection.

        * bindings/js/kjs_navigator.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24719 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoAlways define JSChar to be unsigned short for the Qt builds, to ensure compatibility...
hausmann [Fri, 27 Jul 2007 08:34:37 +0000 (08:34 +0000)]
Always define JSChar to be unsigned short for the Qt builds, to ensure compatibility with UChar.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24718 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix snprintf hack for the Qt/Windows build with mingw-gcc. MingW has snprintf, so...
hausmann [Fri, 27 Jul 2007 08:34:27 +0000 (08:34 +0000)]
Fix snprintf hack for the Qt/Windows build with mingw-gcc. MingW has snprintf, so we don't need this helper function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24717 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoMake the DocTypeStrings.cpp generation work with MingW. Cleaned it up to be a regular...
hausmann [Fri, 27 Jul 2007 08:34:13 +0000 (08:34 +0000)]
Make the DocTypeStrings.cpp generation work with MingW. Cleaned it up to be a regular extra compiler at the same time.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24716 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix compilation with Qt on Windows with MingW: Implemented currentThreadStackBase...
hausmann [Fri, 27 Jul 2007 08:34:00 +0000 (08:34 +0000)]
Fix compilation with Qt on Windows with MingW: Implemented currentThreadStackBase() for this platform.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24715 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix compilation with Qt on Windows with MingW: The MingW headers do not provide a...
hausmann [Fri, 27 Jul 2007 08:33:49 +0000 (08:33 +0000)]
Fix compilation with Qt on Windows with MingW: The MingW headers do not provide a prototype for a reentrant version of localtime. But since we don't use multiple threads for the Qt build we can use the plain localtime() function.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24714 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoMingW build fixes: Do the "OBJECTS_TRAILING_SLASH" trick not only for win32-msvc...
hausmann [Fri, 27 Jul 2007 08:33:39 +0000 (08:33 +0000)]
MingW build fixes: Do the "OBJECTS_TRAILING_SLASH" trick not only for win32-msvc but for all win32 mkspecs. Added LIB/INCLUDE hack from Qt to make us pick up 3rdparty libraries such as libxml from these environment variables.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24713 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix build-webkit for the Qt build on Windows with msvc/nmake by trying to detect...
hausmann [Fri, 27 Jul 2007 08:33:27 +0000 (08:33 +0000)]
Fix build-webkit for the Qt build on Windows with msvc/nmake by trying to detect the Qt mkspec and using "nmake" instead of "make" as build command.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24712 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoUse $(MOVE) instead of mv to eliminated the shell dependency and replaced the long...
hausmann [Fri, 27 Jul 2007 08:33:17 +0000 (08:33 +0000)]
Use $(MOVE) instead of mv to eliminated the shell dependency and replaced the long shell line to call bison and modify the css grammar file with a few lines of portable perl code.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24711 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoImplemented currentTime() in the interpreter by using QDateTime, so that we don't...
hausmann [Fri, 27 Jul 2007 08:33:05 +0000 (08:33 +0000)]
Implemented currentTime() in the interpreter by using QDateTime, so that we don't need timeGetTime() on Windows and therefore also don't need to link against Winmm.dll.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24710 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoExclude DumpRenderTree from the Qt build on Windows for now.
hausmann [Fri, 27 Jul 2007 08:32:54 +0000 (08:32 +0000)]
Exclude DumpRenderTree from the Qt build on Windows for now.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24709 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFor detecting the SVG support for the Qt build don't do the nm hack. Just always...
hausmann [Fri, 27 Jul 2007 08:32:45 +0000 (08:32 +0000)]
For detecting the SVG support for the Qt build don't do the nm hack. Just always claim SVG support is enabled because that's what it is. The nm hack doesn't work on Windows anyway.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24708 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoOn make install on Windows copy the dll into the bin dir.
hausmann [Fri, 27 Jul 2007 08:32:35 +0000 (08:32 +0000)]
On make install on Windows copy the dll into the bin dir.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24707 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoLink in libxml and libxslt on Windows.
hausmann [Fri, 27 Jul 2007 08:32:24 +0000 (08:32 +0000)]
Link in libxml and libxslt on Windows.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24706 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoTemporarily disable the ICO support for the Qt build on Windows.
hausmann [Fri, 27 Jul 2007 08:32:12 +0000 (08:32 +0000)]
Temporarily disable the ICO support for the Qt build on Windows.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24705 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix evaluation with ActiveState Perl 5.6. Somehow it tried to treat nameEntries as...
hausmann [Fri, 27 Jul 2007 08:32:00 +0000 (08:32 +0000)]
Fix evaluation with ActiveState Perl 5.6. Somehow it tried to treat nameEntries as array.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24704 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix compilation with MSVC in the Qt build (missing header files).
hausmann [Fri, 27 Jul 2007 08:31:48 +0000 (08:31 +0000)]
Fix compilation with MSVC in the Qt build (missing header files).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24703 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoDisable the favicon database on Windows for now, to eliminate the sqlite dependency.
hausmann [Fri, 27 Jul 2007 08:31:32 +0000 (08:31 +0000)]
Disable the favicon database on Windows for now, to eliminate the sqlite dependency.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24702 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoAdded custom preprocessor support to make_names.pl and use the moc for it in the...
hausmann [Fri, 27 Jul 2007 08:31:20 +0000 (08:31 +0000)]
Added custom preprocessor support to make_names.pl and use the moc for it in the Qt build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24701 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoDisable the batch mode for nmake to work around the clash of Node.c and Node.cpp...
hausmann [Fri, 27 Jul 2007 08:31:08 +0000 (08:31 +0000)]
Disable the batch mode for nmake to work around the clash of Node.c and Node.cpp both mapping to Node.obj

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24700 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix compilation under Windows (removed sys/time.h dependency, use Qt instead).
hausmann [Fri, 27 Jul 2007 08:30:57 +0000 (08:30 +0000)]
Fix compilation under Windows (removed sys/time.h dependency, use Qt instead).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24699 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix compilation on Windows.
hausmann [Fri, 27 Jul 2007 08:30:44 +0000 (08:30 +0000)]
Fix compilation on Windows.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24698 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix generation of ColorData.c on Windows.
hausmann [Fri, 27 Jul 2007 08:30:32 +0000 (08:30 +0000)]
Fix generation of ColorData.c on Windows.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24697 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix compilation under Qt/Windows.
hausmann [Fri, 27 Jul 2007 08:30:20 +0000 (08:30 +0000)]
Fix compilation under Qt/Windows.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24696 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoChanged extendedAttributes to be a variable instead of a hash directly. Required...
hausmann [Fri, 27 Jul 2007 08:30:08 +0000 (08:30 +0000)]
Changed extendedAttributes to be a variable instead of a hash directly. Required to work with ActiveState perl.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24695 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoReplace the use of snprintf with QByteArray to compile under msvc 2005 express.
hausmann [Fri, 27 Jul 2007 08:29:55 +0000 (08:29 +0000)]
Replace the use of snprintf with QByteArray to compile under msvc 2005 express.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24694 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoDon't use pthread.h unless thread support is enabled.
hausmann [Fri, 27 Jul 2007 08:29:44 +0000 (08:29 +0000)]
Don't use pthread.h unless thread support is enabled.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24693 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoRemoved TCSystemMalloc from the Qt build, it's not necessary it seems.
hausmann [Fri, 27 Jul 2007 08:29:34 +0000 (08:29 +0000)]
Removed TCSystemMalloc from the Qt build, it's not necessary it seems.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24692 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix header guard generation for CSSGrammar.h under Windows
hausmann [Fri, 27 Jul 2007 08:29:23 +0000 (08:29 +0000)]
Fix header guard generation for CSSGrammar.h under Windows

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24691 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix build with moc as preprocessor. Don't rely the preprocessor preserving whitespace...
hausmann [Fri, 27 Jul 2007 08:29:11 +0000 (08:29 +0000)]
Fix build with moc as preprocessor. Don't rely the preprocessor preserving whitespace at the beginning of lines.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24690 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoAdded os-win32 to the include search path for the Qt windows build in order to provid...
hausmann [Fri, 27 Jul 2007 08:28:59 +0000 (08:28 +0000)]
Added os-win32 to the include search path for the Qt windows build in order to provide the fake stdint.h header file.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24689 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoMake make-css-file-arrays.pl work on Windows by not calling /usr/bin/gcc as preproces...
hausmann [Fri, 27 Jul 2007 08:28:48 +0000 (08:28 +0000)]
Make make-css-file-arrays.pl work on Windows by not calling /usr/bin/gcc as preprocessor for the Qt build.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24688 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoMore gperf commandline fixes for Windows.
hausmann [Fri, 27 Jul 2007 08:28:35 +0000 (08:28 +0000)]
More gperf commandline fixes for Windows.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24687 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoMore quoting fixes for perl under Windows.
hausmann [Fri, 27 Jul 2007 08:28:22 +0000 (08:28 +0000)]
More quoting fixes for perl under Windows.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24686 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix command quoting under Windows
hausmann [Fri, 27 Jul 2007 08:28:09 +0000 (08:28 +0000)]
Fix command quoting under Windows

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24685 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix cssmakeprops and cssmakevalue scripts to work on Windows without cygwin perl...
hausmann [Fri, 27 Jul 2007 08:27:55 +0000 (08:27 +0000)]
Fix cssmakeprops and cssmakevalue scripts to work on Windows without cygwin perl. Avoid inplace substitutions and direct invocation of /bin/sh. Also call gperf with arguments that GnuWin32's gperf understands.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24684 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoBeautiful hacks to make more of the extra compiler magic work under Windows outside...
hausmann [Fri, 27 Jul 2007 08:27:39 +0000 (08:27 +0000)]
Beautiful hacks to make more of the extra compiler magic work under Windows outside of cygwin.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24683 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoCorrectly propagate the custom preprocessor option through the idl parser and the...
hausmann [Fri, 27 Jul 2007 08:27:27 +0000 (08:27 +0000)]
Correctly propagate the custom preprocessor option through the idl parser and the codegenerator.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24682 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWhen constructing the absolute path when searching for IDL files in the list of searc...
hausmann [Fri, 27 Jul 2007 08:27:15 +0000 (08:27 +0000)]
When constructing the absolute path when searching for IDL files in the list of search paths don't prepend a slash if $SOURCEROOT as environment variable is not set. In the Qt build we pass absolute search paths already and we don't set SOURCEROOT. Under Unix that gives a double slash for the directory which works fine, under Windows we get /c:\webkit\foo which of course does not work.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24681 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoRelax the regular expression that tries to find constant declarations in the IDL...
hausmann [Fri, 27 Jul 2007 08:27:03 +0000 (08:27 +0000)]
Relax the regular expression that tries to find constant declarations in the IDL source to not require leading whitespace. This makes it work with preprocessors that happen to eliminate leading whitespace.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24680 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoTry to use the moc as preprocessor for the IDL bindings generator
hausmann [Fri, 27 Jul 2007 08:26:51 +0000 (08:26 +0000)]
Try to use the moc as preprocessor for the IDL bindings generator

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24679 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoMake it possible to specify the preprocessor the bindings generator uses instead...
hausmann [Fri, 27 Jul 2007 08:26:40 +0000 (08:26 +0000)]
Make it possible to specify the preprocessor the bindings generator uses instead of hardcoding /usr/bin/gcc (which is of course no option on Windows). Also try to use a more portable and Windows friendly way of opening the reading pipe to the preprocessor.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24678 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoDon't use stdout redirection for make_names.pl as it doesn't work under Windows perl...
hausmann [Fri, 27 Jul 2007 08:26:28 +0000 (08:26 +0000)]
Don't use stdout redirection for make_names.pl as it doesn't work under Windows perl (outside cygwin).

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24677 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix DocTypeStrings.cpp generation to work on Windows with cmd.exe
hausmann [Fri, 27 Jul 2007 08:26:16 +0000 (08:26 +0000)]
Fix DocTypeStrings.cpp generation to work on Windows with cmd.exe

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24676 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoWork around aliasing bugs in WebCore by compiling with -fno-strict-aliasing for gcc...
hausmann [Fri, 27 Jul 2007 07:43:39 +0000 (07:43 +0000)]
Work around aliasing bugs in WebCore by compiling with -fno-strict-aliasing for gcc builds for now.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24675 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoUse -Wreturn-type only when compiling with g++
hausmann [Fri, 27 Jul 2007 07:28:49 +0000 (07:28 +0000)]
Use -Wreturn-type only when compiling with g++

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24674 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoDon't use pkg-config on Windows for the Qt build
hausmann [Fri, 27 Jul 2007 07:28:28 +0000 (07:28 +0000)]
Don't use pkg-config on Windows for the Qt build

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24673 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Fix Bug 14773: REGRESSION (r24630): ASSERT_NOT_REACHED in DOMHTMLInputElement...
aroben [Fri, 27 Jul 2007 07:22:49 +0000 (07:22 +0000)]
    Fix Bug 14773: REGRESSION (r24630): ASSERT_NOT_REACHED in DOMHTMLInputElement::name on Windows

        Reviewed by Steve.

        * Interfaces/DOMHTML.idl: Change IDOMHTMLInputElement back to
        inheriting from IDOMElement. Safari 3 Beta uses this interface, so we
        can't change its vtable.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24672 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix compilation with MSVC.
hausmann [Fri, 27 Jul 2007 07:14:50 +0000 (07:14 +0000)]
Fix compilation with MSVC.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24671 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix compilation with MSVC.
hausmann [Fri, 27 Jul 2007 07:11:24 +0000 (07:11 +0000)]
Fix compilation with MSVC.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24670 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoAdded radar.
ddkilzer [Fri, 27 Jul 2007 05:27:30 +0000 (05:27 +0000)]
Added radar.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24669 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Oliver.
ap [Fri, 27 Jul 2007 04:54:46 +0000 (04:54 +0000)]
    Reviewed by Oliver.

        Add a logging channel for text input

        * Misc/WebKitLogging.h:
        * Misc/WebKitLogging.m:
        * WebView/WebHTMLView.mm:
        (-[WebHTMLView validAttributesForMarkedText]):
        (-[WebHTMLView textStorage]):
        (-[WebHTMLView characterIndexForPoint:]):
        (-[WebHTMLView firstRectForCharacterRange:]):
        (-[WebHTMLView selectedRange]):
        (-[WebHTMLView markedRange]):
        (-[WebHTMLView attributedSubstringFromRange:]):
        (-[WebHTMLView hasMarkedText]):
        (-[WebHTMLView unmarkText]):
        (-[WebHTMLView setMarkedText:selectedRange:]):
        (-[WebHTMLView doCommandBySelector:]):
        (-[WebHTMLView insertText:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24668 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago * http/tests/security/cross-frame-access-put-expected.txt:
darin [Fri, 27 Jul 2007 04:18:07 +0000 (04:18 +0000)]
    * http/tests/security/cross-frame-access-put-expected.txt:
        Checked in corrected results that match the checked-in test.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24667 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago - fix Tiger build
darin [Fri, 27 Jul 2007 01:58:55 +0000 (01:58 +0000)]
    - fix Tiger build

        * Misc/WebTypesInternal.h: For use inside the library, use NSInteger and
        NSUInteger, just like on Leopard. WebNSInteger and WebNSUInteger are still
        present, but they are used in public and private headers only.

        * Carbon/CarbonWindowAdapter.m:
        * Carbon/CarbonWindowFrame.m:
        * DefaultDelegates/WebScriptDebugServer.m:
        * History/WebBackForwardList.mm:
        * Misc/WebDownload.m:
        * Misc/WebSearchableTextView.m:
        * Plugins/WebBaseNetscapePluginView.mm:
        * WebCoreSupport/WebFrameLoaderClient.mm:
        * WebView/WebHTMLView.mm:
        * WebView/WebPDFView.mm:
        * WebView/WebView.mm:
        * WebView/WebViewInternal.h:
        Update all implementation files and internal headers to use NSInteger and
        NSUInteger rather than WebNSInteger and WebNSUInteger.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24666 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Kevin Decker
sullivan [Fri, 27 Jul 2007 01:12:14 +0000 (01:12 +0000)]
    Reviewed by Kevin Decker

        - fixed <rdar://problem/5362989> Searching a pdf in some modes shows hilights for all instances
          of the word, even those not on the current page

        It turns out that there were three different issues here, all contributing to incorrect display
        of multiple matches for PDF pages in certain display modes. (1) in non-continuous display modes,
        we weren't updating the match rects when the displayed page is changed with page up/down (e.g.);
        (2) the mechanism to update the match rects on scrolling was busted except for the first scroll
        away from 0,0; (3) the PDFKit API returns selection bounds for non-displayed pages in non-continuous
        modes just as if they were the displayed pages. This patch fixes all three issues.

        * WebView/WebPDFView.h:
        made ivar name even longer

        * WebView/WebPDFView.mm:
        (-[WebPDFView setPDFDocument:]):
        updated for ivar name change
        (-[WebPDFView viewDidMoveToWindow]):
        observe page-change notifications as well as the others; this is necessary because in the
        non-continuous modes the view can be completely updated without any scrolling involved (problem 1)
        (-[WebPDFView viewWillMoveToWindow:]):
        stop observing page-change notifications
        (-[WebPDFView rectsForTextMatches]):
        skip any pages that aren't visible; this avoids treating matches on non-displayed non-continous
        modes as if they were on the displayed page (problem 3)
        (-[WebPDFView _PDFDocumentViewMightHaveScrolled:]):
        after checking whether scroll position has changed since we last checked it, remember the new
        one (d'oh!) (problem 2)

        (-[WebPDFView _scaleOrDisplayModeOrPageChanged:]):
        renamed to include page changes

        (-[WebPDFView _visiblePDFPages]):
        new method, returns the set of pages that are at least partly visible

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24665 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Anders Carlsson.
tristan [Fri, 27 Jul 2007 00:51:34 +0000 (00:51 +0000)]
    Reviewed by Anders Carlsson.

        <rdar://problem/5350019> REGRESSION: Pages on milliyet.com are added to Back list when visited, causing Back button to just reload

        * http/tests/navigation/lockedhistory-iframe-expected.txt: Added.
        * http/tests/navigation/lockedhistory-iframe.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24664 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Anders Carlsson.
tristan [Fri, 27 Jul 2007 00:46:24 +0000 (00:46 +0000)]
    Reviewed by Anders Carlsson.

        <rdar://problem/5350019> REGRESSION: Pages on milliyet.com are added to Back list when visited, causing Back button to just reload

        * loader/FrameLoader.cpp:
        If the policy action is FrameLoadTypeRedirectLockHistory, don't add the frame load url to the history.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24663 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agogit-svn-id: https://svn.webkit.org/repository/webkit/trunk@24662 268f45cc-cd09-0410...
hyatt [Fri, 27 Jul 2007 00:26:04 +0000 (00:26 +0000)]
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24662 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Geoff.
andersca [Fri, 27 Jul 2007 00:14:47 +0000 (00:14 +0000)]
    Reviewed by Geoff.

        Add a FIXME about caching pages with plug-ins that have outstanding NPObjects.

        * loader/FrameLoader.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24661 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Sam.
kmccullo [Fri, 27 Jul 2007 00:12:20 +0000 (00:12 +0000)]
    Reviewed by Sam.

        - Updated results as they are affecte by my previous checkin.

        * http/tests/security/cross-frame-access-put-expected.txt:
        * http/tests/security/resources/cross-frame-iframe-for-put-test.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24660 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago FIx for <rdar://problem/5289721> CrashTracer: [REGRESSION] 2658 crashes in...
hyatt [Fri, 27 Jul 2007 00:02:39 +0000 (00:02 +0000)]
    FIx for <rdar://problem/5289721> CrashTracer: [REGRESSION] 2658 crashes in Safari at com.apple.WebCore: WebCore::RenderInline::height const + 16

        Adding a null check for now and an assert.  We don't know how/why this
        bug happens, but hopefully the assert will help people to reproduce.

        Reviewed by kevin

        * rendering/RenderInline.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24659 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Oliver.
andersca [Thu, 26 Jul 2007 23:52:02 +0000 (23:52 +0000)]
    Reviewed by Oliver.

        In Mail, a crash occurs at WTF::fastMalloc() when attempting to create a new HTML message from http://nytimes.com/

        If the cache is disabled and there is already a resource with the given URL, return it instead of creating a new one.

        * loader/DocLoader.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24658 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Geoff.
adele [Thu, 26 Jul 2007 23:15:56 +0000 (23:15 +0000)]
    Reviewed by Geoff.

        Build fix.

        * platform/network/cf/ResourceRequest.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24657 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by.
kmccullo [Thu, 26 Jul 2007 22:47:53 +0000 (22:47 +0000)]
    Reviewed by.

        - Fixed bot breakage.

        * fast/dom/Window/window-resize.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24656 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by John Sullivan.
andersca [Thu, 26 Jul 2007 22:40:02 +0000 (22:40 +0000)]
    Reviewed by John Sullivan.

        Some frame load delegate methods not called when loading a page from the BF cache

        These calls were moved to FrameLoader::begin, which is never called for pages loaded
        from the BF cache. This happened in revision 24490.

        * loader/FrameLoader.cpp:
        Call delegate methods if the load is from the BF cache.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24655 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoLayoutTests:
kmccullo [Thu, 26 Jul 2007 21:59:05 +0000 (21:59 +0000)]

        Reviewed by Darin, Geoff and Sam.

        - <rdar://problem/5150461> Resizing the window larger than the screen causes no resize.

        - Tests to ensure we resize/move the window out of bounds correctly.

        * fast/dom/Window/window-resize-expected.txt: Added.
        * fast/dom/Window/window-resize.html: Added.
        * mac/leopard/Skipped:


        Reviewed by Darin, Geoff and Sam.

        - <rdar://problem/5150461> Resizing the window larger than the screen causes no resize.
        - We now better match the behavior of other browsers.

        * bindings/js/kjs_window.cpp:


        Reviewed by Darin, Geoff, Sam.

        - <rdar://problem/5150461> Resizing the window larger than the screen causes no resize.

        - Added delegate methods to intercept and fake the frame location so methods like resizeTo and moveTo can change the window location without actually making the window appear on-screen.

        * DumpRenderTree/UIDelegate.h:
        * DumpRenderTree/UIDelegate.m:
        (-[UIDelegate webView:setFrame:]):
        (-[UIDelegate webViewFrame:]):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24654 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Brady.
kmccullo [Thu, 26 Jul 2007 21:43:20 +0000 (21:43 +0000)]
    Reviewed by Brady.

        - Added leopard-specific results for <rdar://problem/5228256> REGRESSION(Leopard): layout test failures: security/block-test

        * mac/leopard/security: Added.
        * mac/leopard/security/block-test-expected.txt: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24653 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Adele Peterson.
tristan [Thu, 26 Jul 2007 21:35:56 +0000 (21:35 +0000)]
    Reviewed by Adele Peterson.

        <rdar://problem/5359921> WebCore should maintain a dirty flag for confirmation on unsaved changes

        * bindings/objc/DOMHTML.mm:
        (-[DOMHTMLInputElement _isUserEdited]):
        (-[DOMHTMLTextAreaElement _isUserEdited]):
        Renamed _isEdited to _isUserEdited since the functionality is now different

        * bindings/objc/DOMPrivate.h:
        Renamed _isEdited to _isUserEdited.

        * rendering/RenderTextControl.cpp:
        Defaulted m_userEdited to false

        Set m_userEdited to false, since the change wasn't triggered first by an edit

        Set m_userEdited to true, since it has been touched by the user

        * rendering/RenderTextControl.h:
        Added two new methods to set/return the userEdited boolean value.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24652 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Beth Dakin.
ggaren [Thu, 26 Jul 2007 21:21:48 +0000 (21:21 +0000)]
    Reviewed by Beth Dakin.

        Fixed NULL-dereference crash seen on buildbot.

        No bug filed because this is a part of <rdar://problem/5241167>.

        * history/PageCache.h:
        (WebCore::PageCache::get): NULL-check HistoryItems passed to get()
        and remove(), to match the old semantics of HashMap. For clarity,
        ASSERT that add() is not called with NULL arguments.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24651 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Adam.
kmccullo [Thu, 26 Jul 2007 21:18:26 +0000 (21:18 +0000)]
    Reviewed by Adam.

        - Lars wanted this check for Qt but it breaks platform specific layout tests.

        * Scripts/run-webkit-tests:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24650 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Oliver Hunt.
andersca [Thu, 26 Jul 2007 19:51:56 +0000 (19:51 +0000)]
    Reviewed by Oliver Hunt.

        <rdar://problem/5361106> Crash in user style sheet when loading webpage

        Null check m_frame.

        * dom/Document.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24649 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Used `svn merge -r24646:24645' to revert project changes I accidentally
ggaren [Thu, 26 Jul 2007 17:36:58 +0000 (17:36 +0000)]
    Used `svn merge -r24646:24645' to revert project changes I accidentally
        checked in.

        * WebCore.xcodeproj/project.pbxproj:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24647 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin Adler.
ggaren [Thu, 26 Jul 2007 17:26:57 +0000 (17:26 +0000)]
    Reviewed by Darin Adler.

        Fixed <rdar://problem/5241167> REGRESSION: PLT 1% slower due to r21793
        (global page cache cap)

        I just measured a .1%-.2% regression in PLT average, but a .4% win in
        PLT fastest run, so I think this regression is licked.

        Surprisingly, the combination of wtf data structures I originally used
        for PageCache turned out to be too slow, so I reworked PageCache to use
        a hand-crafted linked list for LRU tracking (instead of ListHashSet),
        to store its CachedPages in the HistoryItems to which they corresponded
        (instead of using a HashMap), and to ref/deref HistoryItems manually
        (instead of using RefPtr, which would ref once for every reference in
        the linked list).

        * history/HistoryItem.h: Added data members for PageCache data. Made
        PageCache a friend so it could access them. Ideally (from an
        encapsulation perspective), we would store this data an independent
        structure, but that's just too slow.

        * history/PageCache.cpp: Added a hand-crafted linked list for LRU
        (WebCore::PageCache::add): Adopt the HistoryItem's ref when it's added.
        (WebCore::PageCache::remove): deref() the Historyitem when it's

        * history/PageCache.h:
        (WebCore::PageCache::get): Inlined just in case.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24646 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by John Sullivan.
andersca [Thu, 26 Jul 2007 17:19:44 +0000 (17:19 +0000)]
    Reviewed by John Sullivan.

        Stop the test from dumping load callbacks as they differ on Tiger and Leopard.
        This is done by removing the call to dumpResourceLoadCallbacks and moving the test away
        from the "loading" directory.

        * http/tests/loading/cached-scripts-expected.txt: Removed.
        * http/tests/loading/cached-scripts.html: Removed.
        * http/tests/loading/resources/cached-scripts-subframe.html: Removed.
        * http/tests/misc/cached-scripts-expected.txt: Copied from http/tests/loading/cached-scripts-expected.txt.
        * http/tests/misc/cached-scripts.html: Copied from http/tests/loading/cached-scripts.html.
        * http/tests/misc/resources/cached-scripts-subframe.html: Copied from http/tests/loading/resources/cached-scripts-subframe.html.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24645 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoLaunch the context menu in the right place.
treat [Thu, 26 Jul 2007 16:21:11 +0000 (16:21 +0000)]
Launch the context menu in the right place.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24644 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoPatch from Qing Zhao that adds a signal for history notification.
treat [Thu, 26 Jul 2007 15:00:35 +0000 (15:00 +0000)]
Patch from Qing Zhao that adds a signal for history notification.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24643 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoUse QMAKE_LIBDIR instead of QMAKE_LFLAGS to specify the library search path for QtWeb...
hausmann [Thu, 26 Jul 2007 14:47:27 +0000 (14:47 +0000)]
Use QMAKE_LIBDIR instead of QMAKE_LFLAGS to specify the library search path for QtWebKit, as the former is portable and correctly transformed to /LIBPATH: with msvc for example.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24642 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoEnsure QtLauncher and DumpRenderTree are linked against the uninstalled QtWebKit...
hausmann [Thu, 26 Jul 2007 09:36:51 +0000 (09:36 +0000)]
Ensure QtLauncher and DumpRenderTree are linked against the uninstalled QtWebKit library by making sure $$OUTPUT_DIR/lib appears before $QTDIR/lib in the library search path and rpath.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24641 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago - grammar fix pointed out by Mitz.
mjs [Thu, 26 Jul 2007 07:11:32 +0000 (07:11 +0000)]
    - grammar fix pointed out by Mitz.

        * projects/goals.html:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24639 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Rubber stamped by Adam.
mjs [Thu, 26 Jul 2007 06:44:38 +0000 (06:44 +0000)]
    Rubber stamped by Adam.

        Added WebKit Project Goals.

        * nav.inc: added a nav link.
        * projects/goals.html: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24638 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoJavaScriptCore:
mjs [Thu, 26 Jul 2007 01:50:54 +0000 (01:50 +0000)]

        Reviewed by Mark.

        - follow-up to previous change

        * kjs/ustring.cpp:
        (KJS::UString::operator=): Make sure to reset the length when
        replacing the buffer contents for a single-owned string.


        Reviewed by Mark.

        - follow-up to previous change to avoid assertion failures in debug

        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::getResponseText): hold JSLock when needed
        (WebCore::XMLHttpRequest::open): ditto
        (WebCore::XMLHttpRequest::didFinishLoading): ditto
        (WebCore::XMLHttpRequest::didReceiveData): ditto
        * xml/XMLHttpRequest.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24637 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoLayoutTests:
andersca [Thu, 26 Jul 2007 00:08:16 +0000 (00:08 +0000)]

        Reviewed by Darin.

        iDisk: Web iDisk & main iDisk appear blank

        * http/tests/loading/cached-scripts-expected.txt: Added.
        * http/tests/loading/cached-scripts.html: Added.
        * http/tests/loading/resources: Added.
        * http/tests/loading/resources/cached-scripts-subframe.html: Added.


        Reviewed by Darin.

        iDisk: Web iDisk & main iDisk appear blank

        Prepend any remaining text that scripts might have written.

        * html/HTMLTokenizer.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24636 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoLayoutTests:
kmccullo [Wed, 25 Jul 2007 22:15:00 +0000 (22:15 +0000)]

        Reviewed by .

        * mac/leopard/Skipped:
        Removing some tests that were removed earlier, but checked back
        in accidentally.  Not sure how they got back into my file though.


        Reviewed by Tim, Darin, Oliver.

        - <rdar://problem/5329440> REGRESSION: Clicking links with the feed:// protocol in Safari 3 does nothing
        - Check for file:// urls when clicking links, not block all schemes that are treated as local.

        * loader/FrameLoader.cpp:


        Reviewed by Tim, Darin, Oliver.

        - <rdar://problem/5329440> REGRESSION: Clicking links with the feed:// protocol in Safari 3 does nothing
        - Change DRT to be able to intercept the requst to load so it can check if a scheme was allowed or not.

        * ChangeLog:
        * DumpRenderTree/DumpRenderTree.m:
        (+[LayoutTestController isSelectorExcludedFromWebScript:]):
        (+[LayoutTestController webScriptNameForSelector:]):
        (-[LayoutTestController setCustomPolicyDelegate:]):
        * DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
        * DumpRenderTree/FrameLoadDelegate.h:
        * DumpRenderTree/PolicyDelegate.h: Added.
        * DumpRenderTree/PolicyDelegate.m: Added.
        (-[PolicyDelegate webView:decidePolicyForNavigationAction:request:frame:decisionListener:]):
        * DumpRenderTree/ResourceLoadDelegate.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24634 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoJavaScriptCore:
mjs [Wed, 25 Jul 2007 21:50:00 +0000 (21:50 +0000)]

        Reviewed by Darin.

        - JavaScriptCore part of fix for <rdar://problem/5300291> Optimize GC to reclaim big, temporary objects (like XMLHttpRequest.responseXML) quickly

        Also, as a side effect of optimizations included in this patch:
        - 7% speedup on JavaScript iBench
        - 4% speedup on "Celtic Kane" JS benchmark

        The basic idea is explained in a big comment in collector.cpp. When unusually
        large objecs are allocated, we push the next GC closer on the assumption that
        most objects are short-lived.

        I also did the following two optimizations in the course of tuning
        this not to be a performance regression:

        1) Change UString::Rep to hold a self-pointer as the baseString in
        the unshared case, instead of a null pointer; this removes a
        number of null checks in hot code because many places already
        wanted to use the rep itself or the baseString as appropriate.

        2) Avoid creating duplicate StringImpls when creating a
        StringInstance (the object wrapper for a JS string) or calling
        their methods. Since a temporary wrapper object is made every time
        a string method is called, this resulted in two useless extra
        StringImpls being allocated for no reason whenever a String method
        was invoked on a string value. Now we bypass those.

        * kjs/collector.cpp:
        (KJS::Collector::recordExtraCost): Basics of the extra cost mechanism.
        (KJS::Collector::allocate): ditto
        (KJS::Collector::collect): ditto
        * kjs/collector.h:
        (KJS::Collector::reportExtraMemoryCost): ditto
        * kjs/array_object.cpp:
        (ArrayInstance::ArrayInstance): record extra cost
        * kjs/internal.cpp:
        (KJS::StringImp::toObject): don't create a whole new StringImpl just
        to be the internal value of a StringInstance! StringImpls are immutable
        so there's no point tot his.
        * kjs/internal.h:
        (KJS::StringImp::StringImp): report extra cost
        * kjs/string_object.cpp:
        (KJS::StringInstance::StringInstance): new version that takes a StringImp
        (KJS::StringProtoFunc::callAsFunction): don't create a whole new StringImpl
        just to convert self to string! we already have one in the internal value
        * kjs/string_object.h: report extra cost
        * kjs/ustring.cpp: All changes to handle baseString being self instead of null in the
        unshared case.
        * kjs/ustring.h:
        (KJS::UString::Rep::baseIsSelf): new method, now that baseString is
        self instead of null in the unshared case we can't just null check.
        (KJS::UString::Rep::data): adjusted as mentioned above
        (KJS::UString::cost): new method to compute the cost for a UString, for
        use by StringImpl.

        * kjs/value.cpp:
        (KJS::jsString): style fixups.
        (KJS::jsOwnedString): new method, use this for strings allocated from UStrings
        held by the parse tree. Tracking their cost as part of string cost is pointless,
        because garbage collecting them will not actually free the relevant string buffer.
        * kjs/value.h: prototyped jsOwnedString.
        * kjs/nodes.cpp:
        (StringNode::evaluate): use jsOwnedString as appropriate
        (RegExpNode::evaluate): ditto
        (PropertyNameNode::evaluate): ditto
        (ForInNode::execute): ditto

        * JavaScriptCore.exp: Exported some new symbols.


        Reviewed by Darin.

        - fixed <rdar://problem/5300291> Optimize GC to reclaim big, temporary objects (like XMLHttpRequest.responseXML) quickly

        With this plus related JavaScriptCore changes, a number of XMLHttpRequest situations that
        result in huge data sets are addressed, including a single huge responseXML on an XMR done
        repeatedly, or accessing responseText repeatedly during loading of a single large XHR.

        In addition to the GC changes in JavaScriptCore, I changed responseText to be stored as a
        KJS::UString instead of a WebCore::String so that the JavaScript responseText value can
        share the buffer (indeed multiple intermediate responseTexts can share its buffer).

        First of all, here's some manual test cases that will each blow out the process VM without this fix,
        but will settle into decent steady state with.

        * manual-tests/memory: Added.
        * manual-tests/memory/MessageUidsAlreadyDownloaded2: Added.
        * manual-tests/memory/string-growth.html: Added.
        * manual-tests/memory/xhr-multiple-requests-responseText.html: Added.
        * manual-tests/memory/xhr-multiple-requests-responseXML.html: Added.
        * manual-tests/memory/xhr-multiple-requests.html: Added.
        * manual-tests/memory/xhr-repeated-string-access.xml: Added.

        And here's the actual code changes:

        * WebCore.xcodeproj/project.pbxproj:
        * bindings/js/JSDocumentCustom.cpp:
        (WebCore::toJS): Record extra cost if the document is frameless (counting the nodes
        doesn't make a measurable performance difference here in any case I could find)
        * bindings/js/JSXMLHttpRequest.cpp:
        (KJS::JSXMLHttpRequest::getValueProperty): Adjust for the fact that ressponseText
        is now stored as a UString.
        * bindings/js/kjs_binding.cpp:
        (KJS::jsOwnedStringOrNull): New helper.
        * bindings/js/kjs_binding.h:
        * xml/XMLHttpRequest.cpp:
        (WebCore::XMLHttpRequest::getResponseText): It's a UString!
        (WebCore::XMLHttpRequest::getResponseXML): handle the fact that m_responseText
        is a UString.
        (WebCore::XMLHttpRequest::XMLHttpRequest): ditto.
        (WebCore::XMLHttpRequest::abort): call dropProtection
        (WebCore::XMLHttpRequest::didFinishLoading): call dropProtection
        (WebCore::XMLHttpRequest::dropProtection): after removing our GC protection,
        report extra cost of this XHR's responseText buffer.
        * xml/XMLHttpRequest.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24633 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Brady.
thatcher [Wed, 25 Jul 2007 21:41:04 +0000 (21:41 +0000)]
    Reviewed by Brady.

        <rdar://problem/4796657> table deletion outline does not always follow the table size as editing occurs inside

        Change the outline element to position itself automaticlly using the top, left, bottom and right CSS properties.
        This made the container element redundant, so it has been removed. Now the outline element and the delete button
        both get appended to the target element and positioned based on that container element. This removes the need
        to update the width and height when the target contents changed.

        * editing/DeleteButtonController.cpp:
        (WebCore::DeleteButtonController::show): Change the style properties and remove the container element.
        (WebCore::DeleteButtonController::hide): Remove the button and outline from the target element.
        * editing/DeleteButtonController.h: Removed updateOutlineStyle, respondToChangedContents and m_containerElement.
        * editing/Editor.cpp:
        (WebCore::Editor::respondToChangedContents): Remove the call to DeleteButtonController respondToChangedContents.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24632 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago Reviewed by Darin.
andersca [Wed, 25 Jul 2007 21:35:57 +0000 (21:35 +0000)]
    Reviewed by Darin.

        CrashTracer: [USER] 1 crash in Mail at WebCore::PluginTokenizer::writeRawData(char const*, int)

        Make sure to layout so we'll have a renderer. Also null-check the renderer for extra safety.

        * loader/PluginDocument.cpp:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24631 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years ago2007-07-25 Ada Chan <adachan@apple.com>
adachan [Wed, 25 Jul 2007 20:54:03 +0000 (20:54 +0000)]
2007-07-25  Ada Chan  <adachan@apple.com>

        Reviewed by Adam and Steve.

        Implemented some DOM methods and other fixes for <rdar://problem/5311601>.

        * DOMCoreClasses.cpp:
        (DOMNode::ownerDocument): implemented
        (DOMDocument::getComputedStyle): get the DOMElement via QueryInterface
        * DOMHTMLClasses.cpp:
        (DOMHTMLDocument::body): fixed leak
        (DOMHTMLFormElement::action): implemented
        (DOMHTMLFormElement::method): ditto
        (DOMHTMLInputElement::form): ditto
        (DOMHTMLTextAreaElement::form): ditto
        * Interfaces/DOMHTML.idl: IDOMHTMLInputElement should inherit from IDOMHTMLElement

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24630 268f45cc-cd09-0410-ab3c-d52691b4dbfc

15 years agoFix build for some reported systems.
treat [Wed, 25 Jul 2007 20:12:58 +0000 (20:12 +0000)]
Fix build for some reported systems.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@24629 268f45cc-cd09-0410-ab3c-d52691b4dbfc