Correct incorrect assertion
[WebKit-https.git] / WebCore / ChangeLog
1 2008-03-03  Oliver Hunt  <oliver@apple.com>
2
3         Reviewed by Mark Rowe.
4
5         Correct incorrect assertion
6
7         * platform/graphics/cg/ImageBufferCG.cpp:
8         (WebCore::ImageBuffer::putImageData):
9
10 2008-03-02  Alp Toker  <alp@atoker.com>
11
12         Another fix for non-database builds after changes in r30331.
13
14         Conditionalize a stopDatabases() call.
15
16         * loader/FrameLoader.cpp:
17         (WebCore::FrameLoader::stopLoading):
18
19 2008-03-02  Kevin Ollivier  <kevino@theolliviers.com>
20
21         Reviewed by Alp Toker.
22
23         Scrolling fixes. Implement page scrolling, initialize mouse wheel
24         event variables, and remove duplicate event binding for TOP
25         scrolling event.
26
27         http://bugs.webkit.org/show_bug.cgi?id=17643
28
29         * platform/wx/MouseWheelEventWx.cpp:
30         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
31         * platform/wx/ScrollViewWx.cpp:
32         (WebCore::ScrollView::ScrollViewPrivate::bindEvents):
33         (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents):
34
35 2008-03-02  Alp Toker  <alp@atoker.com>
36
37         Fix building without database support after changes in r30331.
38
39         * dom/Document.cpp:
40
41 2008-03-02  Kevin Ollivier  <kevino@theolliviers.com>
42
43         wx build fix for Windows after PageWin.cpp move.
44
45         * webcore-wx.bkl:
46
47 2008-03-02  Kevin Ollivier  <kevino@theolliviers.com>
48
49         Reviewed by Dave Hyatt.
50
51         Gracefully handle a CSS rule containing an invalid value.
52         (Fixes http://bugs.webkit.org/show_bug.cgi?id=16898)
53
54         * css/CSSGrammar.y:
55
56 2008-03-02  Alp Toker  <alp@atoker.com>
57
58         Reviewed by Mark Rowe.
59
60         Improve the Cairo Path::isEmpty() function
61
62         Use cairo_has_current_point() where available.
63
64         * platform/graphics/cairo/PathCairo.cpp:
65         (WebCore::Path::isEmpty):
66
67 2008-03-01  Mark Rowe  <mrowe@apple.com>
68
69         Reviewed by Tim Hatcher.
70
71         Update Xcode configuration to support building debug and release from the mysterious future.
72
73         * Configurations/DebugRelease.xcconfig:
74
75 2008-03-01  Oliver Hunt  <oliver@apple.com>
76
77         Reviewed by Sam Weinig.
78
79         Bug 16954: Support putImageData
80         
81         Implement support for HTML5's putImageData for the CG port.  All other ports
82         are currently just using stubs for the final blit.
83
84         Test: fast/canvas/canvas-putImageData.html
85
86         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
87         (WebCore::JSCanvasRenderingContext2D::putImageData):
88         * html/CanvasRenderingContext2D.cpp:
89         (WebCore::CanvasRenderingContext2D::putImageData):
90         * html/CanvasRenderingContext2D.h:
91         * platform/graphics/ImageBuffer.h:
92         * platform/graphics/cairo/ImageBufferCairo.cpp:
93         * platform/graphics/cg/ImageBufferCG.cpp:
94         (WebCore::ImageBuffer::putImageData):
95         * platform/graphics/qt/ImageBufferQt.cpp:
96         * platform/graphics/wx/ImageBufferWx.cpp:
97
98 2008-03-01  Jon Honeycutt  <jhoneycutt@apple.com>
99
100         Reviewed by Darin.
101
102         <rdar://problem/5772987> Crashing viewing page with two VLC plug-in
103         instances
104
105         The VLC Netscape plug-in crashes if more than one instance is created.
106
107         Added a quirk that disallows a plug-in from having more than one
108         instance and set this for the VLC plug-in.
109
110         In addition, we now sort plug-ins that handle the same MIME
111         type to choose the most appropriate one. This sorting first sorts by
112         whether a plug-in has an issue that should put it at the end of the
113         list, then whether it appears in a "preferred" plug-in directory.
114
115         * plugins/PluginQuirkSet.h: Added PluginQuirkDontAllowMultipleInstances.
116         * plugins/PluginDatabase.cpp:
117         (WebCore::PluginDatabase::preferredPluginCompare): Comparator for
118         sorting plug-ins; calls PluginPackage::compare().
119         (WebCore::PluginDatabase::pluginForMIMEType): Add all of the plug-ins
120         that handle this MIME type to a list, sort the list, and return the
121         first item.
122         (WebCore::PluginDatabase::MIMETypeForExtension): Add all of the plug-ins
123         that handle this extension to a list, sort the list, and return the MIME
124         type used by the plug-in at the beginning of the list.
125         * plugins/PluginDatabase.h:
126         * plugins/PluginPackage.h:
127         (WebCore::PluginPackage::version): Added; returns the module version.
128         * plugins/win/PluginDatabaseWin.cpp:
129         (WebCore::PluginDatabase::isPreferredPluginPath): Made static; removed
130         const.
131         * plugins/win/PluginPackageWin.cpp:
132         (WebCore::PluginPackage::compare): Sorts plug-ins with known issues to
133         the end, then plug-ins in preferred directories to the beginning, then
134         alphabetically by file name, numerically by version, and alphabetically
135         by parent directory.
136         (WebCore::PluginPackage::determineQuirks): Set the "don't allow multiple
137         instances" quirk for VLC.
138         (WebCore::PluginPackage::load): Return false if the plug-in library has
139         already been loaded and the "don't allow multiple instances" quirk is
140         set.
141         * platform/gtk/TemporaryLinkStubs.cpp:
142         (PluginPackage::compare): Added stub.
143         (PluginDatabase::IsPreferredPluginPath): Update the GTK stub.
144         * platform/qt/TemporaryLinkStubs.cpp:
145         (PluginPackage::compare): Added stub.
146         (PluginDatabase::IsPreferredPluginPath): Update the Qt stub.
147         * platform/wx/TemporaryLinkStubs.cpp:
148         (PluginPackage::compare): Added stub.
149         (PluginDatabase::IsPreferredPluginPath): Update the wx stub.
150
151 2008-03-01  Sam Weinig  <sam@webkit.org>
152
153         Rubber-stamped by Mark Rowe.
154
155         Remove reference to the now non-existent bridge directory.
156
157         * WebCore.xcodeproj/project.pbxproj:
158
159 2008-03-01  Sam Weinig  <sam@webkit.org>
160
161         Reviewed by Darin Adler.
162
163         Search the entire prototype chain when doing early prototype lookup in
164         the Window's getOwnPropertySlot method.
165
166         Makes fast/dom/Window/window-function-name-getter-precedence.html pass all tests.
167
168         * bindings/js/kjs_window.cpp:
169         (KJS::Window::getOwnPropertySlot):
170
171 2008-03-01  Nikolas Zimmermann  <zimmermann@kde.org>
172
173         Reviewed by Oliver.
174
175         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17568 (SVGForeignObjectElement can't react to width/height SVG DOM changes)
176
177         As the bug title says, fix all dynamic update problems that occour with SVGForeignObjectElement.
178
179         Tests: svg/dynamic-updates/SVGForeignObjectElement-dom-height-attr.html
180                svg/dynamic-updates/SVGForeignObjectElement-dom-width-attr.html
181                svg/dynamic-updates/SVGForeignObjectElement-dom-x-attr.html
182                svg/dynamic-updates/SVGForeignObjectElement-dom-y-attr.html
183                svg/dynamic-updates/SVGForeignObjectElement-svgdom-height-prop.html
184                svg/dynamic-updates/SVGForeignObjectElement-svgdom-width-prop.html
185                svg/dynamic-updates/SVGForeignObjectElement-svgdom-x-prop.html
186                svg/dynamic-updates/SVGForeignObjectElement-svgdom-y-prop.html
187
188         * svg/SVGForeignObjectElement.cpp:
189         (WebCore::SVGForeignObjectElement::parseMappedAttribute):
190         (WebCore::addCSSPropertyAndNotifyAttributeMap):
191         (WebCore::SVGForeignObjectElement::svgAttributeChanged):
192         * svg/SVGForeignObjectElement.h:
193
194 2008-02-29  Brady Eidson  <beidson@apple.com>
195
196         Reviewed by build-fix karma
197
198         Bonehead mistake.  Revert function to previous version for all non-Windows+CFNetwork platforms
199
200         * platform/network/ProtectionSpace.cpp:
201         (WebCore::ProtectionSpace::receivesCredentialSecurely): Make my previous change conditionally
202
203 2008-02-29  Brady Eidson  <beidson@apple.com>
204
205         Reviewed by Darin
206         
207         <rdar://problem/5771227> - Incorrect password handling text in credential sheet
208
209         * platform/network/ProtectionSpace.cpp:
210         (WebCore::ProtectionSpace::receivesCredentialSecurely): Call functional CFNetwork method to
211           get "secureness" of the auth challenge instead of figuring it out ourselves
212
213 2008-02-29  Brent Fulgham  <bfulgham@gmail.com>
214
215         http://bugs.webkit.org/show_bug.cgi?id=17483
216         Implement scrollbars on Windows (Cairo)
217
218         Reviewed by Adam Roben.
219
220         * platform/win/PlatfromScrollBarWin.cpp: Duplicate implementation
221           from PlatformScrollBarWinSafari.cpp, then modify to use the
222           native Windows theme engine.  Use SOFT_LINK.  Use platform
223           'GetSystemMetrics' call to decide size of scrollbars and buttons.
224
225 2008-02-29  Adam Roben  <aroben@apple.com>
226
227         Windows build fix
228
229         * WebCore.vcproj/WebCore.vcproj: Remove bridge/* from the include path
230         and the post-build event, and add page/win to each. Also let VS have
231         its way with the order of the files.
232         * page/win/PageWin.cpp: Copied from bridge/win/PageWin.cpp in r30673
233         * page/win/GlobalHistoryWin.cpp: Copied from
234         bridge/win/GlobalHistoryWin.cpp in r30673
235
236 2008-02-29  Anders Carlsson  <andersca@apple.com>
237
238         Build fix.
239
240         * WebCore.xcodeproj/project.pbxproj:
241
242 2008-02-29  Mark Rowe  <mrowe@apple.com>
243
244         Reviewed by Tim Hatcher.
245
246         64-bit build fix.
247
248         * platform/graphics/mac/SimpleFontDataMac.mm:
249         (WebCore::pathFromFont): Provide stub implementation of pathFromFont for 64-bit as
250         FMGetATSFontRefFromFont is not available.
251
252 2008-02-29  Mark Rowe  <mrowe@apple.com>
253
254         Build fix.  Only declare pathFromFont in debug builds as it is unused in release builds.
255
256         * platform/graphics/mac/SimpleFontDataMac.mm:
257
258 2008-02-29  Anders Carlsson  <andersca@apple.com>
259
260         Reviewed by Adam.
261         
262         Copy the remaining files in bridge/ over to page/
263
264         * WebCore.vcproj/WebCore.vcproj:
265         * WebCore.xcodeproj/project.pbxproj:
266         * bridge: Removed.
267         * bridge/AXObjectCache.h: Removed.
268         * bridge/EditorClient.h: Removed.
269         * bridge/GlobalHistory.h: Removed.
270         * bridge/win: Removed.
271         * bridge/win/FrameCGWin.cpp: Removed.
272         * bridge/win/FrameCairoWin.cpp: Removed.
273         * bridge/win/FrameWin.cpp: Removed.
274         * bridge/win/FrameWin.h: Removed.
275         * bridge/win/GlobalHistoryWin.cpp: Removed.
276         * bridge/win/PageWin.cpp: Removed.
277         * page/AXObjectCache.h: Copied from bridge/AXObjectCache.h.
278         * page/EditorClient.h: Copied from bridge/EditorClient.h.
279         * page/GlobalHistory.h: Copied from bridge/GlobalHistory.h.
280         * page/win/FrameCGWin.cpp: Copied from bridge/win/FrameCGWin.cpp.
281         * page/win/FrameCairoWin.cpp: Copied from bridge/win/FrameCairoWin.cpp.
282         * page/win/FrameWin.cpp: Copied from bridge/win/FrameWin.cpp.
283         * page/win/FrameWin.h: Copied from bridge/win/FrameWin.h.
284
285 2008-02-29  Robert Blaut  <webkit@blaut.biz>
286
287         Reviewed by Darin Adler.
288
289         - fix http://bugs.webkit.org/show_bug.cgi?id=17532
290           Webkit imports styles from <link> element which doesn't have rel=stylesheet defined
291
292         Test: fast/html/link-rel-stylesheet.html
293
294         * html/HTMLLinkElement.cpp:
295         (WebCore::HTMLLinkElement::process):
296
297 2008-02-29  Mark Rowe  <mrowe@apple.com>
298
299         Reviewed by Anders Carlsson.
300
301         Replace use of WKPathFromFont with implementation in terms of public API.
302
303         * WebCore.base.exp: Remove unused symbol.
304         * platform/graphics/mac/SimpleFontDataMac.mm:
305         (WebCore::initFontData):
306         (WebCore::pathFromFont): Implement pathFromFont in terms of public API.
307         (WebCore::SimpleFontData::platformInit):
308         * platform/mac/WebCoreSystemInterface.h: Remove unused symbol.
309         * platform/mac/WebCoreSystemInterface.mm: Ditto.
310
311 2008-02-29  Anders Carlsson  <andersca@apple.com>
312
313         Reviewed by Adam.
314
315         Move a bunch of files from bridge/mac to page/mac.
316         
317         * WebCore.xcodeproj/project.pbxproj:
318         * bridge/mac: Removed.
319         * bridge/mac/AXObjectCacheMac.mm: Removed.
320         * bridge/mac/GlobalHistoryMac.mm: Removed.
321         * bridge/mac/WebCoreAXObject.h: Removed.
322         * bridge/mac/WebCoreAXObject.mm: Removed.
323         * bridge/mac/WebCoreScriptDebugger.h: Removed.
324         * bridge/mac/WebCoreScriptDebugger.mm: Removed.
325         * page/mac/AXObjectCacheMac.mm: Copied from bridge/mac/AXObjectCacheMac.mm.
326         * page/mac/GlobalHistoryMac.mm: Copied from bridge/mac/GlobalHistoryMac.mm.
327         * page/mac/WebCoreAXObject.h: Copied from bridge/mac/WebCoreAXObject.h.
328         * page/mac/WebCoreAXObject.mm: Copied from bridge/mac/WebCoreAXObject.mm.
329         * page/mac/WebCoreScriptDebugger.h: Copied from bridge/mac/WebCoreScriptDebugger.h.
330         * page/mac/WebCoreScriptDebugger.mm: Copied from bridge/mac/WebCoreScriptDebugger.mm.
331
332 2008-02-29  David Hyatt  <hyatt@apple.com>
333
334         Fix for http://bugs.webkit.org/show_bug.cgi?id=17559, media query tests crashing under
335         guard malloc.  Pass along the style selector so it can be accessed, since it has not yet
336         been assigned into the document's member variable.
337
338         Reviewed by aroben
339
340         * css/CSSStyleSelector.cpp:
341         (WebCore::CSSRuleSet::addRulesFromSheet):
342         * css/MediaQueryEvaluator.cpp:
343         (WebCore::MediaQueryEvaluator::eval):
344         * css/MediaQueryEvaluator.h:
345
346 2008-02-29  David Hyatt  <hyatt@apple.com>
347
348         <rdar://problem/5755916> REGRESSION: Loading HTML5 spec is 5x slower on TOT than in 3.0.4
349
350         Improve the performance of dynamic sibling and CSS3 selectors so that there is no slowdown any more.
351         Be more precise in terms of what nodes we mark dirty.
352
353         Reviewed by Beth
354
355         * css/CSSStyleSelector.cpp:
356         (WebCore::CSSStyleSelector::checkSelector):
357         * dom/Element.cpp:
358         (WebCore::Element::recalcStyle):
359         (WebCore::checkForSiblingStyleChanges):
360         (WebCore::Element::childrenChanged):
361         (WebCore::Element::finishParsingChildren):
362         * rendering/RenderStyle.cpp:
363         (WebCore::RenderStyle::RenderStyle):
364         * rendering/RenderStyle.h:
365         (WebCore::RenderStyle::childrenAffectedByPositionalRules):
366         (WebCore::RenderStyle::childrenAffectedByDirectAdjacentRules):
367         (WebCore::RenderStyle::setChildrenAffectedByDirectAdjacentRules):
368
369 2008-02-29  Alexey Proskuryakov  <ap@webkit.org>
370
371         Reviewed by Darin.
372
373         <rdar://problem/5766352> REGRESSION (r27151): XMLHttpRequest.abort() resets response status
374
375         Test: http/tests/xmlhttprequest/status-after-abort.html
376
377         * xml/XMLHttpRequest.cpp:
378         (WebCore::XMLHttpRequest::getStatus):
379         (WebCore::XMLHttpRequest::getStatusText):
380         Changed to match Firefox more closely (IE just raises an exception in most of those cases).
381
382 2008-02-29  Dan Bernstein  <mitz@apple.com>
383
384         Reviewed by Darin Adler.
385
386         - fix a bug where explicit embedding past the end of a line could
387           affect text that line
388
389         Test: fast/text/embed-at-end-of-pre-wrap-line.html
390
391         * rendering/bidi.cpp:
392         (WebCore::RenderBlock::skipWhitespace): Removed calls to
393         setAdjustEmbedding().
394         (WebCore::RenderBlock::findNextLineBreak): Added calls to
395         setAdjustEmbedding() around skipWhitespace() only where needed.
396
397 2008-02-29  Mark Rowe  <mrowe@apple.com>
398
399         Reviewed by Oliver Hunt.
400
401         Don't use WKSupportsMultipartXMixedReplace on Leopard as multipart/x-mixed-replace is always handled by NSURLRequest.
402
403         * platform/mac/WebCoreSystemInterface.h: Don't declare WKSupportsMultipartXMixedReplace on Leopard.
404         * platform/mac/WebCoreSystemInterface.mm: Ditto.
405         * platform/network/mac/ResourceRequestMac.mm:
406         (WebCore::ResourceRequest::doUpdatePlatformRequest): Don't call WKSupportsMultipartXMixedReplace on Leopard.
407         * WebCore.Tiger.exp: Move Tiger-only symbol here.
408         * WebCore.base.exp:
409
410 2008-02-29  Mark Rowe  <mrowe@apple.com>
411
412         Rubber-stamped by Eric Seidel.
413
414         Remove unneeded includes of WebCoreSystemInterface.h.
415
416         * loader/mac/LoaderNSURLExtras.m:
417         * page/mac/FrameMac.mm:
418         * page/mac/WebCoreFrameBridge.mm:
419         * platform/MIMETypeRegistry.cpp:
420         * platform/graphics/mac/ImageMac.mm:
421         * platform/mac/PasteboardMac.mm:
422
423 2008-02-29  Mark Rowe  <mrowe@apple.com>
424
425         Reviewed by Oliver Hunt and Oliver Hunt.
426
427         <rdar://problem/4753845> WebKit should use CGEventSourceSecondsSinceLastEventType in place of WKSecondsSinceLastInputEvent SPI.
428
429         * platform/mac/SystemTimeMac.cpp:  Replace use of WKSecondsSinceLastInputEvent with CGEventSourceSecondsSinceLastEventType.
430         * platform/mac/WebCoreSystemInterface.h:  Remove unused symbol.
431         * platform/mac/WebCoreSystemInterface.mm:  Ditto.
432         * WebCore.base.exp:  Ditto.
433
434 2008-02-28  Mark Rowe  <mrowe@apple.com>
435
436         Reviewed by Dave Hyatt.
437
438         Make use of new CGFont APIs on Leopard rather than making a WebKitSystemInterface call.
439
440         * DerivedSources.make:  Add Tiger-only symbols to the export file when running on Tiger.
441         * WebCore.Tiger.exp:  Added.  Move Tiger-only symbol here from WebCore.base.exp.
442         * WebCore.base.exp:
443         * platform/graphics/mac/SimpleFontDataMac.mm:
444         (WebCore::SimpleFontData::platformInit):  Use Leopard APIs when building on Leopard.
445         * platform/mac/WebCoreSystemInterface.h:  Don't declare wkGetFontMetrics on Leopard as it is unused.
446         * platform/mac/WebCoreSystemInterface.mm:  Ditto.
447
448 2008-02-28  Matt Lilek  <webkit@mattlilek.com>
449
450         Reviewed by Tim Hatcher.
451
452         Bug 16535: Stylesheets loaded with @import are not editable
453         http://bugs.webkit.org/show_bug.cgi?id=16535
454         <rdar://problem/5712899>
455
456         Sheets loaded using @import were incorrectly being flagged as non-editable
457         user agent sheets because their parent sheet doesn't have an ownerNode. We now
458         check to make sure sheets also don't have a href before restricting their editability.
459
460         * page/inspector/StylesSidebarPane.js:
461
462 2008-02-28  Rodney Dawes  <dobey@wayofthemonkey.com>
463
464         Reviewed by Adam Roben.
465
466         Copy PluginPackageWin.cpp to shared PluginPackage.cpp.
467         Add PluginPackage.cpp to build configurations.
468         Remove PluginPackage destructor from TemporaryLinkStubs.cpp.
469         Use cross-platform pathGetFilename method.
470         Remove platform-specific code from shared PluginPackage implementation.
471         Remove shared code from PluginPackageWin.cpp.
472
473         * GNUmakefile.am:
474         * WebCore.pro:
475         * WebCoreSources.bkl:
476         * WebCore.vcproj/WebCore.vcproj:
477         * platform/gtk/TemporaryLinkStubs.cpp:
478         * platform/qt/TemporaryLinkStubs.cpp:
479         * platform/wx/TemporaryLinkStubs.cpp:
480         * plugins/PluginPackage.cpp:
481         * plugins/win/PluginPackageWin.cpp:
482
483 2008-02-28  Justin Garcia  <justin.garcia@apple.com>
484
485         Reviewed by Darin Adler.
486
487         <rdar://problem/4930986> REGRESSION: Paste As Quotation pastes black text instead of blue
488         
489         Add a second style span at copy time to hold document default styles.  This helps us
490         differentiate between those and user applied styles at paste time, where we'll want
491         to let Mail's Paste As Quotation blockquote override document default styles, but
492         not others.
493
494         * css/CSSComputedStyleDeclaration.cpp:
495         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Changed the unit type used 
496         for -webkit-text-stroke-width from CSS_NUMBER to CSS_PX, to match other properties that 
497         are thick | medium | thin | <length>.  Before, there was a mismatch between the unit 
498         type of -webkit-text-stroke-width property values in a CSSComputedStyleDeclaration for 
499         an element and that element's inlineStyleDecl(), causing identical values to always appear 
500         different to diff().
501         * editing/ReplaceSelectionCommand.cpp:
502         (WebCore::ReplaceSelectionCommand::handlePasteAsQuotationNode): Fixed.  Don't just change
503         the class to an empty string, completely remove it, it's no longer needed.
504         (WebCore::handleStyleSpansBeforeInsertion): Moved the optimization from doApply here.
505         (WebCore::ReplaceSelectionCommand::handleStyleSpans): 
506         Added, replaces removeRedundantStyles.
507         We aren't (yet) removing all redundant styles, just those on style spans, so I removed the
508         unused code and renamed the function.
509         There won't be more than two style spans that we need to consider, the one with the 
510         source document's default styles and styles on the commonAncestor of the copied Range, 
511         so don't look for more than two.
512         Let elements that wrap the incoming fragment override the source document's styles.
513         (WebCore::ReplaceSelectionCommand::doApply): Moved code to handleStyleSpansBeforeInsertion
514         and call the renamed handleStyleSpans.
515         * editing/ReplaceSelectionCommand.h:
516         * editing/markup.cpp:
517         (WebCore::removeDefaultStyles): Added.  Don't add document defaults to the style span
518         that holds user applied styles, since they'll be added to their own style span.
519         (WebCore::createMarkup):
520         Add a second style span that holds just the document defaults. This lets us differentiate
521         between those and user applied styles at paste time.
522         Mail blockquotes are just another type of special element, moved their handling there. This
523         also lets paste code make assumptions about the position of the two style spans (they are 
524         *always* parent-child).
525
526 2008-02-28  Brent Fulgham <bfulgham@gmail.com>
527
528         http://bugs.webkit.org/show_bug.cgi?id=17576
529         Modify RenderThemeWin to use SOFT_LINK
530
531         Reviewed by Adam Roben.
532
533         * rendering/RenderThemeWin.h: Remove unneeded library handle
534         * rendering/RenderThemeWin.cpp: Change to use SOFT_LINK
535           rather than hand-coded load library calls.
536
537 2008-02-28  Dan Bernstein  <mitz@apple.com>
538
539         Reviewed by Darin Adler.
540
541         - fix http://bugs.webkit.org/show_bug.cgi?id=17590
542           ASSERTION FAILED: subject in jsRegExpExecute()
543
544         * page/mac/FrameMac.mm:
545         (WebCore::Frame::matchLabelsAgainstElement): Added an early return in
546         case the element name is empty.
547
548 2008-02-28  Justin Garcia  <justin.garcia@apple.com>
549
550         Reviewed by Dan Bernstein
551         
552         Small editing speed up.
553         
554         * dom/Position.cpp:
555         (WebCore::Position::upstream): Don't check for a change in editability
556         if the current node hasn't changed.
557         (WebCore::Position::downstream): Ditto.
558
559 2008-02-27  Dan Bernstein  <mitz@apple.com>
560
561         Reviewed by John Sullivan.
562
563         - fix <rdar://problem/5607547> Single letter surrounded by soft hyphens can disappear
564
565         Test: fast/text/soft-hyphen-2.html
566
567         * rendering/bidi.cpp:
568         (WebCore::chopMidpointsAt): Changed to iterate midpoints backwards, so
569         that if there are two midpoints at the given position, only the last one
570         will be chopped off.
571
572 2008-02-27  Dan Bernstein  <mitz@apple.com>
573
574         Reviewed by Darin Adler.
575
576         - make centered text in right-to-left blocks spill over to the left
577
578         Test: fast/text/align-center-rtl-spill.html
579
580         * rendering/bidi.cpp:
581         (WebCore::RenderBlock::computeHorizontalPositionsForLine):
582
583 2008-02-27  Dan Bernstein  <mitz@apple.com>
584
585         Reviewed by Darin Adler.
586
587         - more bidi.cpp cleanup
588
589         * platform/text/BidiResolver.h:
590         (WebCore::BidiCharacterRun::destroy): Added. Overridden by BidiRun .
591         (WebCore::BidiResolver<Iterator, Run>::addRun): Moved BidiState::addRun()
592         here.
593         (WebCore::BidiResolver<Iterator, Run>::appendRun): Changed to use
594         addRun().
595         (WebCore::BidiResolver<Iterator, Run>::deleteRuns): Changed to use
596         destroy(), avoiding the need to specialize this method in BidiState.
597         * rendering/bidi.cpp:
598         (WebCore::BidiRun::destroy): Removed the RenderArena parameter.
599         (WebCore::BidiState::deleteRuns): Removed now-unnecessary specialization.
600         (WebCore::BidiState::addRun): Removed now-unnecessary specialization.
601         (WebCore::RenderBlock::createLineBoxes): 
602         (WebCore::RenderBlock::constructLine):
603         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added a FIXME.
604         (WebCore::RenderBlock::computeVerticalPositionsForLine):
605         (WebCore::buildCompactRuns):
606         (WebCore::RenderBlock::layoutInlineChildren):
607         (WebCore::RenderBlock::determineStartPosition):
608         (WebCore::RenderBlock::determineEndPosition):
609         (WebCore::RenderBlock::matchedEndLine):
610         (WebCore::skipNonBreakingSpace):
611         (WebCore::RenderBlock::skipWhitespace):
612         (WebCore::shouldSkipWhitespaceAfterStartObject):
613         * rendering/bidi.h:
614         (WebCore::BidiRun): Added m_ prefixes to several member variables. 
615
616 2008-02-27  Sam Weinig  <sam@webkit.org>
617
618         Reviewed by Darin.
619
620         Fix for <rdar://problem/5768769>
621
622         - Don't allow cross-origin calls using window.functionName.call(otherFrame)
623           syntax.
624
625         * bindings/js/JSLocation.cpp:
626         (WebCore::jsLocationProtoFuncToString): Do same-origin check.
627         * bindings/js/kjs_window.cpp:
628         (KJS::windowProtoFuncAToB): Ditto.
629         (KJS::windowProtoFuncBToA): Ditto.
630         (KJS::windowProtoFuncOpen): Ditto.
631         (KJS::windowProtoFuncClearTimeout): Ditto.
632         * bindings/scripts/CodeGeneratorJS.pm: Ditto.
633
634 2008-02-27  David Hyatt  <hyatt@apple.com>
635
636         More cleanup in preparation for fixing the HTML5 spec performance regression.
637
638         Reviewed by Sam Weinig
639
640         * dom/Attr.cpp:
641         (WebCore::Attr::childrenChanged):
642         * dom/Attr.h:
643         * dom/ContainerNode.cpp:
644         (WebCore::ContainerNode::insertBefore):
645         (WebCore::ContainerNode::replaceChild):
646         (WebCore::ContainerNode::removeChild):
647         (WebCore::ContainerNode::removeChildren):
648         (WebCore::ContainerNode::appendChild):
649         (WebCore::ContainerNode::addChild):
650         (WebCore::ContainerNode::childrenChanged):
651         * dom/ContainerNode.h:
652         * dom/Document.cpp:
653         (WebCore::Document::childrenChanged):
654         * dom/Document.h:
655         * dom/Element.cpp:
656         (WebCore::Element::childrenChanged):
657         * dom/Element.h:
658         * dom/Node.h:
659         (WebCore::Node::childrenChanged):
660         * html/HTMLObjectElement.cpp:
661         (WebCore::HTMLObjectElement::childrenChanged):
662         * html/HTMLObjectElement.h:
663         * html/HTMLOptGroupElement.cpp:
664         (WebCore::HTMLOptGroupElement::childrenChanged):
665         * html/HTMLOptGroupElement.h:
666         * html/HTMLOptionElement.cpp:
667         (WebCore::HTMLOptionElement::childrenChanged):
668         * html/HTMLOptionElement.h:
669         * html/HTMLScriptElement.cpp:
670         (WebCore::HTMLScriptElement::childrenChanged):
671         * html/HTMLScriptElement.h:
672         * html/HTMLSelectElement.cpp:
673         (WebCore::HTMLSelectElement::childrenChanged):
674         * html/HTMLSelectElement.h:
675         * html/HTMLStyleElement.cpp:
676         (WebCore::HTMLStyleElement::childrenChanged):
677         * html/HTMLStyleElement.h:
678         * html/HTMLTextAreaElement.cpp:
679         (WebCore::HTMLTextAreaElement::childrenChanged):
680         * html/HTMLTextAreaElement.h:
681         * html/HTMLTitleElement.cpp:
682         (WebCore::HTMLTitleElement::childrenChanged):
683         * html/HTMLTitleElement.h:
684         * svg/SVGClipPathElement.cpp:
685         (WebCore::SVGClipPathElement::childrenChanged):
686         * svg/SVGClipPathElement.h:
687         * svg/SVGDefinitionSrcElement.cpp:
688         (WebCore::SVGDefinitionSrcElement::childrenChanged):
689         * svg/SVGDefinitionSrcElement.h:
690         * svg/SVGFontFaceElement.cpp:
691         (WebCore::SVGFontFaceElement::childrenChanged):
692         * svg/SVGFontFaceElement.h:
693         * svg/SVGFontFaceFormatElement.cpp:
694         (WebCore::SVGFontFaceFormatElement::childrenChanged):
695         * svg/SVGFontFaceFormatElement.h:
696         * svg/SVGFontFaceSrcElement.cpp:
697         (WebCore::SVGFontFaceSrcElement::childrenChanged):
698         * svg/SVGFontFaceSrcElement.h:
699         * svg/SVGFontFaceUriElement.cpp:
700         (WebCore::SVGFontFaceUriElement::childrenChanged):
701         * svg/SVGFontFaceUriElement.h:
702         * svg/SVGGElement.cpp:
703         (WebCore::SVGGElement::childrenChanged):
704         * svg/SVGGElement.h:
705         * svg/SVGGradientElement.cpp:
706         (WebCore::SVGGradientElement::childrenChanged):
707         * svg/SVGGradientElement.h:
708         * svg/SVGMarkerElement.cpp:
709         (WebCore::SVGMarkerElement::childrenChanged):
710         * svg/SVGMarkerElement.h:
711         * svg/SVGMaskElement.cpp:
712         (WebCore::SVGMaskElement::childrenChanged):
713         * svg/SVGMaskElement.h:
714         * svg/SVGPatternElement.cpp:
715         (WebCore::SVGPatternElement::childrenChanged):
716         * svg/SVGPatternElement.h:
717         * svg/SVGStyleElement.cpp:
718         (WebCore::SVGStyleElement::childrenChanged):
719         * svg/SVGStyleElement.h:
720         * svg/SVGStyledElement.cpp:
721         (WebCore::SVGStyledElement::childrenChanged):
722         * svg/SVGStyledElement.h:
723         * svg/SVGTitleElement.cpp:
724         (WebCore::SVGTitleElement::childrenChanged):
725         * svg/SVGTitleElement.h:
726         * svg/SVGUseElement.cpp:
727         (WebCore::SVGUseElement::childrenChanged):
728         * svg/SVGUseElement.h:
729
730 2008-02-27  Julien Chaffraix <julien.chaffraix@gmail.com>
731
732         Reviewed by Alexey.
733
734         http://bugs.webkit.org/show_bug.cgi?id=17481
735         Several consecutive calls to XMLHttpRequest::open should dispatch only one readyState event
736
737         Test: http/tests/xmlhttprequest/xmlhttprequest-multiple-open.html
738
739         * xml/XMLHttpRequest.cpp:
740         (WebCore::XMLHttpRequest::open):
741
742 2008-02-27  Sriram Neelakandan  <sriram.neelakandan@gmail.com>
743
744         Reviewed, tweaked and landed by ap.
745
746         http://bugs.webkit.org/show_bug.cgi?id=17487
747         HTMLInput mysteriously fails to work if ICU dat file is missing
748
749         * platform/text/TextBreakIteratorICU.cpp: (WebCore::setUpIterator): Assert that the iterator
750         has been opened.
751
752 2008-02-27  Adam Roben  <aroben@apple.com>
753
754         Windows build fix after r30616
755
756         * platform/win/ClipboardWin.cpp:
757
758 2008-02-27  Nikolas Zimmermann  <zimmermann@kde.org>
759
760         Reviewed by Simon.
761
762         Small style cleanup, and obvious fix: SVGGElement reacted on
763         'clipPathUnits' changes, which is a funny copy&paste error.
764
765         * svg/SVGGElement.cpp:
766         (WebCore::SVGGElement::parseMappedAttribute):
767         (WebCore::SVGGElement::svgAttributeChanged):
768         (WebCore::SVGGElement::createRenderer):
769
770 2008-02-27  Nikolas Zimmermann  <zimmermann@kde.org>
771
772         Reviewed by Simon.
773
774         Cleanup coding style. Still on my way to fix dynamic updates of all SVG elements.
775         Currently at SVGF*. SVGDefs/DescElement don't need any dyn update fixes but cleanups.
776
777         * svg/SVGDefsElement.cpp:
778         (WebCore::SVGDefsElement::createRenderer):
779         * svg/SVGDefsElement.h:
780         * svg/SVGDescElement.h:
781
782 2008-02-26  Antti Koivisto  <antti@apple.com>
783
784         Reviewed by Darin.
785
786         Fix <rdar://problem/5761326>
787         REGRESSION: 1.5% -2% Sunspider regression from r30009 (ebay photo upload hang)
788         
789         Generate better code with VS:
790         - Use ALWAYS_INLINE macro to guarantee versions of allowsAccessFrom() are reduced to single functions
791         - Refactor error reporting so that there is no need to construct/destruct Strings in common cases
792         - Add a separate version of the function for cases where error messages are not wanted
793
794         * bindings/js/JSDOMWindowCustom.cpp:
795         (WebCore::JSDOMWindow::customGetOwnPropertySlot):
796         * bindings/js/kjs_window.cpp:
797         (KJS::Window::allowsAccessFrom):
798         (KJS::Window::allowsAccessFromNoErrorMessage):
799         (KJS::Window::allowsAccessFromPrivate):
800         (KJS::Window::crossDomainAccessErrorMessage):
801         * bindings/js/kjs_window.h:
802
803 2008-02-26  Sam Weinig  <sam@webkit.org>
804
805         Reviewed by Dave Hyatt.
806
807         - remove DeprecatedCString, DeprecatedArray, and ArrayImpl.
808
809         * GNUmakefile.am:
810         * WebCore.pro:
811         * WebCore.vcproj/WebCore.vcproj:
812         * WebCore.xcodeproj/project.pbxproj:
813         * WebCoreSources.bkl:
814         * platform/ArrayImpl.cpp: Removed.
815         * platform/ArrayImpl.h: Removed.
816         * platform/DeprecatedArray.h: Removed.
817         * platform/DeprecatedCString.cpp: Removed.
818         * platform/DeprecatedCString.h: Removed.
819         * platform/text/CString.cpp:
820         (WebCore::CString::length):
821         * platform/text/CString.h:
822
823 2008-02-26  David Hyatt  <hyatt@apple.com>
824
825         Cleanup of childrenChanged in preparation for fixing the HTML5 spec slowdown.
826
827         Reviewed by Sam Weinig
828
829         * dom/Attr.cpp:
830         (WebCore::Attr::childrenChanged):
831         * dom/ContainerNode.cpp:
832         (WebCore::ContainerNode::insertBefore):
833         (WebCore::ContainerNode::replaceChild):
834         (WebCore::ContainerNode::removeChild):
835         (WebCore::ContainerNode::removeChildren):
836         (WebCore::ContainerNode::appendChild):
837         (WebCore::ContainerNode::addChild):
838         (WebCore::ContainerNode::childrenChanged):
839         * dom/ContainerNode.h:
840         * dom/EventTargetNode.cpp:
841         (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent):
842         * dom/EventTargetNode.h:
843         * dom/NamedAttrMap.cpp:
844         (WebCore::NamedAttrMap::addAttribute):
845         (WebCore::NamedAttrMap::removeAttribute):
846
847 2008-02-26  Darin Adler  <darin@apple.com>
848
849         Reviewed by Sam.
850
851         - remove use of DeprecatedCString from Windows pasteboard code
852
853         * platform/win/ClipboardUtilitiesWin.cpp:
854         (WebCore::createGlobalData): Added an overload for Vector<char>.
855         Streamlined the logic a bit.
856         (WebCore::append): Added. Helper functions for appending to a
857         Vector<char>.
858         (WebCore::markupToCF_HTML): Rewrote to use Vector<char> instead
859         of DeprecatedCString. Also simplified the logic a bit and used
860         macros to handle the integer width.
861         (WebCore::urlToMarkup): Use Vector<UChar> instead of String.
862         (WebCore::replaceNewlinesWithWindowsStyleNewlines): Tweaked.
863         * platform/win/ClipboardUtilitiesWin.h: Update type of return
864         value from markupToCF_HTML. Did a bit of streamlining too.
865         * platform/win/ClipboardWin.cpp:
866         (WebCore::writeURL): Update for above changes.
867         (WebCore::ClipboardWin::declareAndWriteDragImage): Ditto.
868         (WebCore::ClipboardWin::writeRange): Ditto.
869         * platform/win/PasteboardWin.cpp:
870         (WebCore::Pasteboard::writeSelection): Ditto.
871         (WebCore::Pasteboard::writeURL): Ditto.
872
873 2008-02-26  Timothy Hatcher  <timothy@apple.com>
874
875         Reviewed by Adam Roben.
876
877         <rdar://problem/5712777> REGRESSION: Arrow up/down in inspector
878         source list does not scroll when item at edge is reached (16572)
879
880         Use scrollIntoViewIfNeeded() instead of the hand-rolled scrollToElement
881         we were using in utilities.js.
882
883         * page/inspector/DocumentPanel.js: Use scrollIntoViewIfNeeded instead of scrollToElement.
884         * page/inspector/Resource.js: Ditto.
885         * page/inspector/inspector.js: Ditto.
886         * page/inspector/SourcePanel.js: Use scrollIntoViewIfNeeded instead
887         of scrollIntoView, so the source line is centered in the view if needed.
888         * page/inspector/utilities.js: Removed scrollToElement().
889
890 2008-02-26  David Hyatt  <hyatt@apple.com>
891
892         Reviewed by Dan
893
894         http://bugs.webkit.org/show_bug.cgi?id=17485
895
896         Refine our behavior for empty inlines so that they work more correctly with margins/borders/padding.
897         Fixes a regression on huffingtonpost.com.
898
899         New tests added to fast/inline
900
901         * rendering/InlineFlowBox.cpp:
902         (WebCore::InlineFlowBox::computeLogicalBoxHeights):
903         (WebCore::InlineFlowBox::placeBoxesVertically):
904         (WebCore::InlineFlowBox::shrinkBoxesWithNoTextChildren):
905         * rendering/RenderFlow.cpp:
906         (WebCore::RenderFlow::calcMargins):
907         * rendering/RenderFlow.h:
908         * rendering/RenderObject.h:
909         (WebCore::RenderObject::hasHorizontalBordersPaddingOrMargin):
910         (WebCore::RenderObject::hasHorizontalBordersOrPadding):
911         * rendering/bidi.cpp:
912         (WebCore::getBorderPaddingMargin):
913         (WebCore::RenderBlock::layoutInlineChildren):
914         (WebCore::inlineFlowRequiresLineBox):
915
916 2008-02-26  Sam Weinig  <sam@webkit.org>
917
918         Fix Windows build.
919
920         * platform/text/PlatformString.h:
921         (WebCore::reverseFind):
922
923 2008-02-26  Dan Bernstein  <mitz@apple.com>
924
925         Reviewed by Darin Adler.
926
927         - fix http://bugs.webkit.org/show_bug.cgi?id=17555
928           <rdar://problem/5766016> REGRESSION (r27351): Thumbnails positioned wrong on Getty Images results page
929
930         Test: fast/dynamic/subtree-table-cell-height.html
931
932         * rendering/RenderObject.cpp:
933         (WebCore::objectIsRelayoutBoundary): Exclude table cells, since their
934         height depends on their contents even if the CSS height property is
935         fixed.
936
937 2008-02-25  Sam Weinig  <sam@webkit.org>
938
939         Reviewed by Dan Bernstein.
940
941         Make the cleanPath function in CSSStyleSelector more efficient by using
942         a Vector<UChar>.
943
944         * css/CSSStyleSelector.cpp:
945         (WebCore::cleanPath): Make this function work on a Vector<UChar> instead
946         of a String.  Also remove unnecessary reverseFind call that could be acomplished
947         with two compares.
948         (WebCore::checkPseudoState): Remove reserveCapacity calls now that we are using
949         a stack buffer.
950         * platform/text/PlatformString.h:
951         (WebCore::find): Make this find generic enough that it can be used for
952         String::find.
953         (WebCore::reverseFind): Implement reverseFind so that it can be used
954         for with a UChar* and length.
955         * platform/text/StringImpl.cpp:
956         (WebCore::StringImpl::find): Use implementation in PlatformString.cpp
957         (WebCore::StringImpl::reverseFind): Ditto,
958
959 2008-02-26  Satoshi Nakagawa  <artension@gmail.com>
960
961         Reviewed by Darin. Tweaked and landed by Alexey.
962
963         http://bugs.webkit.org/show_bug.cgi?id=17411
964         Ideographic comma and full stop should be treated as line-breakable characters
965
966         Test: fast/text/line-breaks-after-ideographic-comma-or-full-stop.html
967
968         * platform/text/CharacterNames.h: Added ideographicComma and ideographicFullStop.
969         * rendering/break_lines.cpp: (WebCore::shouldBreakAfter): Added a workaround for an issue in
970         Unicode 5.0 that is causing this.
971
972 2008-02-26  MorganL  <morganl.webkit@yahoo.com>
973
974         Reviewed by eseidel.  Landed by eseidel
975
976         Fix improperly initialized m_isUpToDate member variable.
977         Fixs 50+ layout tests when run on Tiger.
978         http://bugs.webkit.org/show_bug.cgi?id=17549
979
980         * platform/network/cf/ResourceResponse.h:
981         (WebCore::ResourceResponse::ResourceResponse):
982         * platform/network/mac/ResourceResponse.h:
983         (WebCore::ResourceResponse::ResourceResponse):
984
985 2008-02-25  Dan Bernstein  <mitz@apple.com>
986
987         Reviewed by Sam Weinig.
988
989         - fix http://bugs.webkit.org/show_bug.cgi?id=17152
990           Paragraphs indented with :first-letter and text-align CSS render incorrectly
991
992         Test: fast/text/apply-start-width-after-skipped-text.html
993
994         * rendering/bidi.cpp:
995         (WebCore::RenderBlock::findNextLineBreak): Improved the logic for when
996         to figure in the padding, border and margin before a text node when the
997         line begins inside a text node.
998
999 2008-02-25  Kevin Ollivier  <kevino@theolliviers.com>
1000
1001         Windows build fix for wx port.
1002
1003         * loader/FTPDirectoryDocument.cpp:
1004
1005 2008-02-25  Mark Rowe  <mrowe@apple.com>
1006
1007         Windows build fix.
1008
1009         * platform/network/cf/ResourceResponseCFNet.cpp:
1010         (WebCore::ResourceResponse::platformCompare):  Implement platformCompare for ResourceResponseCFNet.cpp.
1011
1012 2008-02-25  Beth Dakin  <bdakin@apple.com>
1013
1014         Reviewed by Geoff.
1015
1016         Fixed for <rdar://problem/5760530> REGRESSION: Assertion failure in 
1017         Document::removePendingSheet() from r30438
1018
1019         r30438 added a call to CachedResource::error() from inside 
1020         Loader::didReceiveData() if a CSS file 4xxs. There was an 
1021         assumption in the loader, though, that either error() would be 
1022         called, or didFinishLoading() would be called, so some work is 
1023         duplicated in each. Now that we are calling an error() on files 
1024         that will also make it to didFinishLoading() (since they succeeded 
1025         in the network layer), we need to make sure we do not duplicate the 
1026         work. CachedCSSStyleSheet::error() calls checkNotify, which ends up 
1027         decrementing the document's pending style sheet counter. 
1028         checkNotify() was still getting called, though, through the normal  
1029         didFinishLoading code path, and the counter was being decremented 
1030         twice. Bad!
1031
1032         * loader/loader.cpp:
1033         (WebCore::Loader::didFinishLoading):
1034         (WebCore::Loader::didReceiveData):
1035
1036 2008-02-25  Mark Rowe  <mrowe@apple.com>
1037
1038         Fix the Gtk, wx and Qt builds.
1039
1040         * GNUmakefile.am: Add new files.
1041         * WebCore.pro: Ditto.
1042         * WebCoreSources.bkl: Ditto.
1043         * platform/network/AuthenticationChallengeBase.h: Fix up argument types.
1044
1045 2008-02-25  MorganL  <morganl.webkit@yahoo.com>
1046
1047         Reviewed by Darin Adler.
1048
1049         Eliminate some #ifdefs from headers in platform/network.
1050         http://bugs.webkit.org/show_bug.cgi?id=17210
1051
1052         * WebCore.base.exp:
1053         * WebCore.order:
1054         * WebCore.vcproj/WebCore.vcproj:
1055         * WebCore.xcodeproj/project.pbxproj:
1056         * dom/XMLTokenizer.cpp:
1057         * loader/ResourceLoader.h:
1058         * platform/network/AuthenticationChallenge.cpp: Removed.
1059         * platform/network/AuthenticationChallenge.h: Removed.
1060         * platform/network/AuthenticationChallengeBase.cpp: Copied from platform/network/AuthenticationChallenge.cpp.
1061         (WebCore::AuthenticationChallengeBase::AuthenticationChallengeBase):
1062         (WebCore::AuthenticationChallengeBase::previousFailureCount):
1063         (WebCore::AuthenticationChallengeBase::proposedCredential):
1064         (WebCore::AuthenticationChallengeBase::protectionSpace):
1065         (WebCore::AuthenticationChallengeBase::failureResponse):
1066         (WebCore::AuthenticationChallengeBase::error):
1067         (WebCore::AuthenticationChallengeBase::isNull):
1068         (WebCore::AuthenticationChallengeBase::nullify):
1069         (WebCore::AuthenticationChallengeBase::compare):
1070         * platform/network/AuthenticationChallengeBase.h: Copied from platform/network/AuthenticationChallenge.h.
1071         (WebCore::AuthenticationChallengeBase::platformCompare):
1072         (WebCore::operator==):
1073         (WebCore::operator!=):
1074         * platform/network/ResourceError.cpp: Removed.
1075         * platform/network/ResourceError.h: Removed.
1076         * platform/network/ResourceErrorBase.cpp: Copied from platform/network/ResourceError.cpp.
1077         (WebCore::ResourceErrorBase::lazyInit):
1078         (WebCore::ResourceErrorBase::compare):
1079         * platform/network/ResourceErrorBase.h: Copied from platform/network/ResourceError.h.
1080         (WebCore::ResourceErrorBase::isNull):
1081         (WebCore::ResourceErrorBase::domain):
1082         (WebCore::ResourceErrorBase::errorCode):
1083         (WebCore::ResourceErrorBase::failingURL):
1084         (WebCore::ResourceErrorBase::localizedDescription):
1085         (WebCore::ResourceErrorBase::ResourceErrorBase):
1086         (WebCore::ResourceErrorBase::platformLazyInit):
1087         (WebCore::ResourceErrorBase::platformCompare):
1088         (WebCore::operator==):
1089         * platform/network/ResourceResponseBase.cpp:
1090         (WebCore::ResourceResponseBase::isHTTP):
1091         (WebCore::ResourceResponseBase::url):
1092         (WebCore::ResourceResponseBase::setUrl):
1093         (WebCore::ResourceResponseBase::mimeType):
1094         (WebCore::ResourceResponseBase::setMimeType):
1095         (WebCore::ResourceResponseBase::expectedContentLength):
1096         (WebCore::ResourceResponseBase::setExpectedContentLength):
1097         (WebCore::ResourceResponseBase::textEncodingName):
1098         (WebCore::ResourceResponseBase::setTextEncodingName):
1099         (WebCore::ResourceResponseBase::suggestedFilename):
1100         (WebCore::ResourceResponseBase::setSuggestedFilename):
1101         (WebCore::ResourceResponseBase::httpStatusCode):
1102         (WebCore::ResourceResponseBase::setHTTPStatusCode):
1103         (WebCore::ResourceResponseBase::httpStatusText):
1104         (WebCore::ResourceResponseBase::setHTTPStatusText):
1105         (WebCore::ResourceResponseBase::httpHeaderField):
1106         (WebCore::ResourceResponseBase::setHTTPHeaderField):
1107         (WebCore::ResourceResponseBase::httpHeaderFields):
1108         (WebCore::ResourceResponseBase::isAttachment):
1109         (WebCore::ResourceResponseBase::setExpirationDate):
1110         (WebCore::ResourceResponseBase::expirationDate):
1111         (WebCore::ResourceResponseBase::setLastModifiedDate):
1112         (WebCore::ResourceResponseBase::lastModifiedDate):
1113         (WebCore::ResourceResponseBase::lazyInit):
1114         (WebCore::ResourceResponseBase::compare):
1115         * platform/network/ResourceResponseBase.h:
1116         (WebCore::ResourceResponseBase::ResourceResponseBase):
1117         (WebCore::ResourceResponseBase::platformLazyInit):
1118         (WebCore::ResourceResponseBase::platformCompare):
1119         (WebCore::operator==):
1120         * platform/network/cf/AuthenticationCF.cpp:
1121         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
1122         (WebCore::AuthenticationChallenge::platformCompare):
1123         * platform/network/cf/AuthenticationChallenge.h: Added.
1124         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
1125         (WebCore::AuthenticationChallenge::sourceHandle):
1126         (WebCore::AuthenticationChallenge::cfURLAuthChallengeRef):
1127         * platform/network/cf/ResourceError.h: Added.
1128         (WebCore::ResourceError::ResourceError):
1129         * platform/network/cf/ResourceErrorCF.cpp:
1130         (WebCore::ResourceError::ResourceError):
1131         (WebCore::ResourceError::platformLazyInit):
1132         (WebCore::ResourceError::platformCompare):
1133         (WebCore::ResourceError::operator CFStreamError):
1134         * platform/network/cf/ResourceResponse.h:
1135         (WebCore::ResourceResponse::ResourceResponse):
1136         * platform/network/cf/ResourceResponseCFNet.cpp:
1137         (WebCore::ResourceResponse::platformLazyInit):
1138         * platform/network/curl/AuthenticationChallenge.h: Added.
1139         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
1140         * platform/network/curl/ResourceError.h: Added.
1141         (WebCore::ResourceError::ResourceError):
1142         * platform/network/curl/ResourceResponse.h:
1143         (WebCore::ResourceResponse::ResourceResponse):
1144         * platform/network/mac/AuthenticationChallenge.h: Added.
1145         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
1146         (WebCore::AuthenticationChallenge::sender):
1147         (WebCore::AuthenticationChallenge::nsURLAuthenticationChallenge):
1148         * platform/network/mac/AuthenticationMac.mm:
1149         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
1150         (WebCore::AuthenticationChallenge::platformCompare):
1151         * platform/network/mac/ResourceError.h: Added.
1152         (WebCore::ResourceError::ResourceError):
1153         * platform/network/mac/ResourceErrorMac.mm:
1154         (WebCore::ResourceError::platformLazyInit):
1155         (WebCore::ResourceError::platformCompare):
1156         * platform/network/mac/ResourceResponse.h:
1157         (WebCore::ResourceResponse::ResourceResponse):
1158         * platform/network/mac/ResourceResponseMac.mm:
1159         (WebCore::ResourceResponse::platformLazyInit):
1160         (WebCore::ResourceResponse::platformCompare):
1161         * platform/network/qt/AuthenticationChallenge.h: Added.
1162         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
1163         * platform/network/qt/ResourceError.h: Added.
1164         (WebCore::ResourceError::ResourceError):
1165         * platform/network/qt/ResourceResponse.h:
1166         (WebCore::ResourceResponse::ResourceResponse):
1167         * xml/XSLTProcessor.cpp:
1168
1169 2008-02-25  Anders Carlsson  <andersca@apple.com>
1170
1171         Reviewed by Darin.
1172
1173         Move remaining render style objects over to start with a refcount of 1 and get
1174         rid of DeprecatedDataRef.
1175         
1176         * rendering/DataRef.h:
1177         (WebCore::DataRef::operator*):
1178         (WebCore::DataRef::operator->):
1179         * rendering/RenderStyle.h:
1180         * rendering/SVGRenderStyle.cpp:
1181         (WebCore::SVGRenderStyle::SVGRenderStyle):
1182         * rendering/SVGRenderStyle.h:
1183         (WebCore::SVGRenderStyle::create):
1184         (WebCore::SVGRenderStyle::copy):
1185         * rendering/SVGRenderStyleDefs.cpp:
1186         (StyleFillData::StyleFillData):
1187         (StyleStrokeData::StyleStrokeData):
1188         (StyleStopData::StyleStopData):
1189         (StyleTextData::StyleTextData):
1190         (StyleClipData::StyleClipData):
1191         (StyleMaskData::StyleMaskData):
1192         (StyleMarkerData::StyleMarkerData):
1193         (StyleMiscData::StyleMiscData):
1194         * rendering/SVGRenderStyleDefs.h:
1195         (WebCore::StyleFillData::create):
1196         (WebCore::StyleFillData::copy):
1197         (WebCore::StyleStrokeData::create):
1198         (WebCore::StyleStrokeData::copy):
1199         (WebCore::StyleStopData::create):
1200         (WebCore::StyleStopData::copy):
1201         (WebCore::StyleTextData::create):
1202         (WebCore::StyleTextData::copy):
1203         (WebCore::StyleClipData::create):
1204         (WebCore::StyleClipData::copy):
1205         (WebCore::StyleMaskData::create):
1206         (WebCore::StyleMaskData::copy):
1207         (WebCore::StyleMarkerData::create):
1208         (WebCore::StyleMarkerData::copy):
1209         (WebCore::StyleMiscData::create):
1210         (WebCore::StyleMiscData::copy):
1211
1212 2008-02-25  Dan Bernstein  <mitz@apple.com>
1213
1214         Reviewed by Dave Hyatt.
1215
1216         - remove file-static BidiRun variables from bidi.cpp
1217
1218         * platform/text/BidiResolver.h:
1219         (WebCore::BidiResolver::): Initialize m_logicallyLastRun.
1220         (WebCore::BidiResolver::logicallyLastRun): Added.
1221         (WebCore::BidiResolver::runCount): Made unsigned.
1222         (WebCore::::reverseRuns): Changed ints to unsigned.
1223         (WebCore::::createBidiRunsForLine): Made this function set
1224         m_logicallyLastRun.
1225         * rendering/RenderBlock.h:
1226         * rendering/bidi.cpp:
1227         (WebCore::BidiState::addRun): Removed setting of sLogicallyLastBidiRun.
1228         (WebCore::RenderBlock::constructLine): Removed unused start parameter
1229         and added run count and first and last run parameters. Replaced end
1230         parameter with lastLine boolean and endObject pointer.
1231         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added first
1232         and logically last run parameters.
1233         (WebCore::RenderBlock::computeVerticalPositionsForLine): Added firstRun
1234         parameter.
1235         (WebCore::RenderBlock::bidiReorderLine): Removed setting of static
1236         variables.
1237         (WebCore::RenderBlock::layoutInlineChildren): Changed to use BidiState
1238         accessors instead of file statics.
1239
1240 2008-02-25  Rodney Dawes  <dobey@wayofthemonkey.com>
1241
1242         Reviewed by Jon Honeycutt.
1243
1244         http://bugs.webkit.org/show_bug.cgi?id=16924
1245         Bug 16924: Shared PluginDatabase, PluginPackage, and PlugInInfoStore implementations
1246
1247         Add PluginInfoStore.cpp and new PluginDatabase.cpp to GTK+ and Qt ports.
1248         Remove old PlugInInfoStoreQt.cpp as it is obsoleted by shared code.
1249         Add PluginInfoStore, PluginDatabase, and PluginStream files to Wx build.
1250         Add new PluginDatabase.cpp to Windows build.
1251         Add temporary stubs for new PluginDatabase and PluginPackage.
1252         shared classes to GTK+, Qt, and Wx ports.
1253         Copy PluginDatabaseWin.cpp to PluginDatabase.cpp to preserve history.
1254         Remove shared code from PluginDatabaseWin.cpp.
1255         Remove Windows-specific code from PluginDatabase.cpp.
1256         Use PlatformModule and PlatformFileTime instead of HMODULE and FILETIME.
1257         Remove extraneous PluginPackage:: from hash() class method prototype.
1258         Subsume storeFileVersion into PluginPackage::fetchInfo.
1259         Add cross-platform PlatformModuleVersion type definition.
1260         Use PlatformModuleVersion to store the module version.
1261         Rename m_fileVersion[ML]S to m_moduleVersion.
1262         Change compareFileVersion to use PlatformModuleVersion as the argument.
1263         Move PluginView::determineQuirks and m_quirks to PluginPackage.
1264         Updated determineQuirks for the PlatformModuleVersion.
1265
1266         * GNUmakefile.am:
1267         * WebCore.pro:
1268         * WebCoreSources.bkl:
1269         * webcore-base.bkl:
1270         * WebCore.vcproj/WebCore.vcproj:
1271         * Platform/FileSystem.h:
1272         * platform/qt/PlugInInfoStoreQt.cpp:
1273         * platform/gtk/TemporaryLinkStubs.cpp:
1274         * platform/qt/TemporaryLinkStubs.cpp:
1275         * platform/wx/TemporaryLinkStubs.cpp:
1276         * plugins/PluginDatabase.cpp:
1277         * plugins/PluginDatabase.h:
1278         * plugins/win/PluginDatabaseWin.cpp:
1279         * plugins/PluginPackage.h:
1280         * plugins/win/PluginPackageWin.cpp:
1281         * plugins/PluginView.h:
1282         * plugins/win/PluginViewWin.cpp:
1283
1284 2008-02-25  Anders Carlsson  <andersca@apple.com>
1285
1286         Reviewed by Darin.
1287
1288         Make more style objects start out with a refcount of 1.
1289         
1290         * rendering/RenderStyle.cpp:
1291         (WebCore::StyleSurroundData::StyleSurroundData):
1292         (WebCore::StyleBoxData::StyleBoxData):
1293         (WebCore::StyleVisualData::StyleVisualData):
1294         (WebCore::StyleBackgroundData::StyleBackgroundData):
1295         (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
1296         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
1297         (WebCore::StyleInheritedData::StyleInheritedData):
1298         * rendering/RenderStyle.h:
1299         (WebCore::StyleSurroundData::create):
1300         (WebCore::StyleSurroundData::copy):
1301         (WebCore::StyleBoxData::create):
1302         (WebCore::StyleBoxData::copy):
1303         (WebCore::StyleVisualData::create):
1304         (WebCore::StyleVisualData::copy):
1305         (WebCore::StyleBackgroundData::create):
1306         (WebCore::StyleBackgroundData::copy):
1307         (WebCore::StyleBackgroundData::~StyleBackgroundData):
1308         (WebCore::StyleRareNonInheritedData::create):
1309         (WebCore::StyleRareNonInheritedData::copy):
1310         (WebCore::StyleRareInheritedData::create):
1311         (WebCore::StyleRareInheritedData::copy):
1312         (WebCore::StyleInheritedData::create):
1313         (WebCore::StyleInheritedData::copy):
1314
1315 2008-02-25  Anders Carlsson  <andersca@apple.com>
1316
1317         Reviewed by Darin.
1318
1319         Make some of the refcounted style objects start out with a refcount of 1.
1320
1321         * rendering/DataRef.h:
1322         Make a DeprecatedDataRef class which is just a copy of the old DataRef class.
1323         Change DataRef to use ::create() and ::copy() instead of the constructors.
1324         Change DataRef's pointer to be a RefPtr instead.
1325
1326         * rendering/RenderStyle.cpp:
1327         (WebCore::StyleMarqueeData::StyleMarqueeData):
1328         (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
1329         (WebCore::StyleMultiColData::StyleMultiColData):
1330         (WebCore::StyleTransformData::StyleTransformData):
1331         Start with a RefCount of 1.
1332         
1333         * rendering/RenderStyle.h:
1334         * rendering/SVGRenderStyle.h:
1335         Add ::create() and ::copy() methods. Make not yet converted classes use DeprecatedDataRef.
1336
1337 2008-02-25  Darin Adler  <darin@apple.com>
1338
1339         Reviewed by Anders.
1340         Based on a patch by Tim Steele <timsteele41@gmail.com>.
1341
1342         - fix http://bugs.webkit.org/show_bug.cgi?id=17186
1343           Fragment navigation within a page permanently cancels meta refresh
1344
1345         Test: fast/loader/meta-refresh-anchor-click.html
1346
1347         * loader/FrameLoader.cpp:
1348         (WebCore::FrameLoader::load): When load type is FrameLoadTypeRedirectWithLockedHistory,
1349         always do a real load. This makes sure that meta refresh loads are treated as real loads
1350         rather than anchor scrolls. Also tweaked formatting a bit.
1351         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy): This function is
1352         an alternate way to complete a load, so it needs to start the redirection timer if
1353         redirection has already been scheduled.
1354
1355 2008-02-25  Dan Bernstein  <mitz@apple.com>
1356
1357         Reviewed by Darin Adler.
1358
1359         - avoid counting spaces in non-justified text
1360
1361         * rendering/bidi.cpp:
1362         Removed file-static numSpaces.
1363         (WebCore::BidiState::addRun): Removed space counting.
1364         (WebCore::RenderBlock::computeHorizontalPositionsForLine): Added space
1365         counting, conditional on the block having the text-align: justify
1366         property value.
1367         (WebCore::RenderBlock::bidiReorderLine): Removed initialization of
1368         numSpaces.
1369
1370 2008-02-25  Darin Adler  <darin@apple.com>
1371
1372         Requested by Steve.
1373
1374         * platform/graphics/cg/ImageSourceCG.cpp:
1375         (WebCore::ImageSource::createFrameAtIndex): Put the string into a global
1376         variable (because CFSTR is inefficient on Windows).
1377
1378 2008-02-25  Darin Adler  <darin@apple.com>
1379
1380         Reviewed by Adam.
1381
1382         * WebCore.base.exp: Export blankURL, and sort the file.
1383
1384 2008-02-25  Simon Hausmann  <hausmann@webkit.org>
1385
1386         Reviewed by Mark Rowe.
1387
1388         Fix compilation with gcc 4.3, added stdio.h and unistd.h inclusions.
1389
1390         * dom/Position.cpp:
1391         * dom/Range.cpp:
1392         * editing/Selection.cpp:
1393         * editing/SelectionController.cpp:
1394         * editing/VisiblePosition.cpp:
1395         * history/HistoryItem.cpp:
1396         * loader/Cache.cpp:
1397         * loader/FTPDirectoryParser.cpp:
1398         * platform/KURL.cpp:
1399         * platform/gtk/FileSystemGtk.cpp:
1400         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1401         * platform/text/TextCodecLatin1.cpp:
1402         * platform/text/TextCodecUserDefined.cpp:
1403         * rendering/CounterNode.cpp:
1404         * rendering/RenderObject.cpp:
1405
1406 2008-02-25  Johnny Ding  <johnnyding.webkit@gmail.com>
1407
1408         Reviewed by Darin Adler.
1409
1410         - fix http://bugs.webkit.org/show_bug.cgi?id=17444
1411
1412         In HTMLTokenizer::write, the code checks 'pendingScripts.isEmpty()' to decide
1413         whether to save prependingSrc or not. However, in HTMLTokenizer::scriptHandler
1414         and HTMLTokenizer::scriptExecution, the code checks testBit:LoadingExtScript
1415         to decide whether to save prependingSrc or not. The later behavior is not right
1416         because, in scriptHandler and scriptExecution, even the pendingScripts queue is
1417         empty, the testBit:LoadingExtScript might be TRUE.
1418
1419         Test: fast/tokenizer/nested-multiple-scripts.html
1420
1421         * html/HTMLTokenizer.cpp:
1422         (WebCore::HTMLTokenizer::scriptHandler): check pendingScripts.isEmpty() instead of
1423         checking state.loadingExtScript().
1424         (WebCore::HTMLTokenizer::scriptExecution): check pendingScripts.isEmpty() instead of
1425         checking state.loadingExtScript().
1426
1427 2008-02-24  Darin Adler  <darin@apple.com>
1428
1429         * dom/Document.h: Removed stray duplicate declaration of
1430         RegisteredEventListenerList.
1431
1432 2008-02-24  Darin Adler  <darin@apple.com>
1433
1434         * dom/Range.cpp:
1435         (WebCore::Range::surroundContents): Removed incorrect comment.
1436         I added it a while ago, and I was just mixed up.
1437
1438 2008-02-24  Darin Adler  <darin@apple.com>
1439
1440         - quick follow-up to that last check-in
1441
1442         * platform/graphics/cg/ImageSourceCG.cpp:
1443         (WebCore::ImageSource::createFrameAtIndex): Use CFEqual instead of
1444         WebCore::String's == for speed.
1445
1446 2008-02-24  Michael Knaup  <michael.knaup@mac.com>
1447
1448         Reviewed by Darin.
1449
1450         Bug 8749: XBM rendered incorrectly as black on white
1451
1452         xbm images are now created and rendered using black on a
1453         transparent background (same behavior as in Firefox)
1454
1455         Test: platform/mac/fast/canvas/canvas-draw-xbm-image.html
1456
1457         * platform/graphics/cg/ImageSourceCG.cpp:
1458         (WebCore::ImageSource::createFrameAtIndex):
1459
1460 2008-02-24  Dan Bernstein  <mitz@apple.com>
1461
1462         Reviewed by Darin Adler.
1463
1464         - fix http://bugs.webkit.org/show_bug.cgi?id=17471
1465           REGRESSION (r30438): Crash in deleteLineBoxes in cursor-adjusting code browsing Acid3
1466
1467         Test: http/tests/misc/object-image-error.html
1468
1469         * html/HTMLObjectElement.cpp:
1470         (WebCore::HTMLObjectElement::attach): Added an early return in case
1471         updateFromElement() has changed the object to use fallback content.
1472
1473 2008-02-24  Dan Bernstein  <mitz@apple.com>
1474
1475         Reviewed by Darin Adler.
1476
1477         - fix float positioning when a float that does not fit on the line is
1478           followed by a float that does
1479
1480         Test: fast/block/float/narrow-after-wide.html
1481
1482         * rendering/bidi.cpp:
1483         (WebCore::RenderBlock::findNextLineBreak): Changed to not position any
1484         more floats on the line once a float that does not fit is encountered.
1485         That float should be pushed to the next line, and so should all floats
1486         that follow, regardless of whether they can fit on the current line.
1487
1488 2008-02-24  Darin Adler  <darin@apple.com>
1489
1490         Reviewed by Sam.
1491
1492         - fix http://bugs.webkit.org/show_bug.cgi?id=16770
1493           Acid3 expects :visited styled links to restyle on iframe load
1494
1495         Disentangle global history updating from the back/forward history.
1496         There are many cases where we don't want to create a new back/forward
1497         item, but we do still want to add to the global history (used for visited
1498         link coloring) in those cases.
1499
1500         Test: fast/history/subframe-is-visited.html
1501
1502         * loader/FrameLoader.cpp:
1503         (WebCore::FrameLoader::updateGlobalHistory): Renamed from
1504         addHistoryForCurrentLocation and removed the back/forward handling.
1505         (WebCore::FrameLoader::updateHistoryForStandardLoad): Streamlined logic a
1506         bit. Replaced call to addHistoryForCurrentLocation with a call to
1507         addBackForwardItemClippedAtTarget. Added an unconditional call to
1508         updateGlobalHistory.
1509         (WebCore::FrameLoader::updateHistoryForClientRedirect): Added a FIXME;
1510         why doesn't this function update global history?
1511         (WebCore::FrameLoader::updateHistoryForBackForwardNavigation): Ditto.
1512         (WebCore::FrameLoader::updateHistoryForReload): Replaced the direct call
1513         the client with a call to the new updateGlobalHistory function.
1514         (WebCore::FrameLoader::updateHistoryForRedirectWithLockedHistory): Did
1515         the same changes as for updateHistoryForStandardLoad.
1516         * loader/FrameLoader.h: More of the same.
1517
1518         * loader/FrameLoaderClient.h: Removed updateGlobalHistoryForReload and
1519         renamed updateGlobalHistoryForStandardLoad to updateGlobalHistory.
1520
1521         * svg/graphics/SVGImageEmptyClients.h:
1522         (WebCore::SVGEmptyFrameLoaderClient::updateGlobalHistory): Updated to
1523         match the above.
1524
1525 2008-02-23  Darin Adler  <darin@apple.com>
1526
1527         Reviewed by Sam.
1528
1529         - fix http://bugs.webkit.org/show_bug.cgi?id=17508
1530           REGRESSION (r30535): mailto regression tests failing
1531
1532         * html/HTMLFormElement.cpp:
1533         (WebCore::HTMLFormElement::submit): Restore the old logic, with its unpleasant
1534         trip through String do to the replace operation. It's inefficient, but there's
1535         no real reason to worry about the efficiency of mailto forms, since that feature
1536         is nearly obsolete.
1537
1538 2008-02-23  Darin Adler  <darin@apple.com>
1539
1540         Reviewed by Sam.
1541
1542         - replace SegmentedString's use of DeprecatedValueList with Deque
1543
1544         Testing indicates this is a slight speed-up for page loading.
1545
1546         * platform/text/SegmentedString.cpp:
1547         (WebCore::SegmentedString::length): Update to use Deque.
1548         (WebCore::SegmentedString::setExcludeLineNumbers): Ditto.
1549         (WebCore::SegmentedString::append): Ditto.
1550         (WebCore::SegmentedString::prepend): Ditto.
1551         (WebCore::SegmentedString::advanceSubstring): Ditto.
1552         (WebCore::SegmentedString::toString): Ditto.
1553         * platform/text/SegmentedString.h: Tweak formatting. Don't bother making an entire
1554         class private with a single friend. Change m_sbstrings from a DeprecatedValueList
1555         to a Deque.
1556
1557 2008-02-23  Darin Adler  <darin@apple.com>
1558
1559         Reviewed by Anders.
1560
1561         - fix http://bugs.webkit.org/show_bug.cgi?id=17506
1562           REGRESSION (r30535): ASSERTION FAILED: i < size()
1563
1564         * loader/TextResourceDecoder.cpp:
1565         (WebCore::findTextEncoding): Fix off-by-one in code that null-terminates
1566         the C string here.
1567
1568 2008-02-23  Matt Lilek  <webkit@mattlilek.com>
1569
1570         Not reviewed, build fix.
1571
1572         * platform/network/cf/FormDataStreamCFNet.cpp:
1573         (WebCore::httpBodyFromRequest):
1574         * plugins/win/PluginViewWin.cpp:
1575         (WebCore::PluginView::handlePost):
1576
1577 2008-02-23  Dan Bernstein  <mitz@apple.com>
1578
1579         - fix a typo
1580
1581         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp:
1582         (WebCore::GlyphPage::fill):
1583         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
1584         (WebCore::GlyphPage::fill):
1585
1586 2008-02-23  Dan Bernstein  <mitz@apple.com>
1587
1588         Reviewed by Anders Carlsson.
1589
1590         - fix GlyphPage::fill() logic for partial page fills
1591
1592         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp:
1593         (WebCore::GlyphPage::fill): Changed the test for non-BMP characters to
1594         work correctly when the length parameter is less than a full page size.
1595         Also updated the comment.
1596         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
1597         (WebCore::GlyphPage::fill): Ditto.
1598
1599 2008-02-23  Kevin Ollivier  <kevino@theolliviers.com>
1600
1601         Reviewed by Darin Adler.
1602
1603         Move text drawing into wxcode, as we need platform-dependent
1604         APIs for drawing non-kerned text, which wx doesn't yet have.
1605         (But hopefully will, once these APIs are fleshed out on all
1606         platforms!)
1607
1608         http://bugs.webkit.org/show_bug.cgi?id=17396
1609
1610         * platform/graphics/wx/FontWx.cpp:
1611         (WebCore::Font::drawGlyphs):
1612         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp: Added.
1613         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp: Added.
1614         * platform/wx/wxcode/non-kerned-drawing.h: Added.
1615         * platform/wx/wxcode/win/non-kerned-drawing.cpp: Added.
1616         * webcore-wx.bkl:
1617
1618 2008-02-23  Darin Adler  <darin@apple.com>
1619
1620         Pointed out by Mitz.
1621
1622         * loader/TextResourceDecoder.cpp:
1623         (WebCore::find): Fix a "==" that was supposed to be ">".
1624         (WebCore::findIgnoringCase): Ditto.
1625
1626 2008-02-23  Darin Adler  <darin@apple.com>
1627
1628         Reviewed by Sam.
1629
1630         * html/HTMLFormElement.cpp:
1631         (WebCore::appendEncodedString): Fix buffer overrun in the code I just landed.
1632
1633 2008-02-23  Darin Adler  <darin@apple.com>
1634
1635         Reviewed by Sam.
1636
1637         - remove all but 1 remaining use of DeprecatedCString
1638         - change FormData to start refcount at 1
1639
1640         * html/HTMLFormElement.cpp:
1641         (WebCore::appendString): Added. Helpers for Vector<char>.
1642         (WebCore::appendEncodedString): Renamed from encodeCString and changed to
1643         append to an existing Vector<char> to cut down a bit on memory allocation.
1644         (WebCore::HTMLFormElement::formData): Replace the DeprecatedCString called
1645         enc_string with a Vector<char> called encodedData. Change to use the new
1646         FormData::create function.
1647         (WebCore::HTMLFormElement::submit): Same thing, for the mailto form code.
1648
1649         * loader/TextResourceDecoder.cpp:
1650         (WebCore::find): Added. Helper for searching in char* with length.
1651         (WebCore::findIgnoringCase): Ditto.
1652         (WebCore::findTextEncoding): Added. Helper for looking up a text encoding
1653         when we have a char* with length rather than a null-terminated char*.
1654         (WebCore::findXMLEncoding): Changed to use char* and length rather than
1655         DeprecatedCString. Also fixed some things that would be one-character
1656         buffer overruns in a string that's not null-terminated.
1657         (WebCore::TextResourceDecoder::checkForCSSCharset): Change to use
1658         findTextEncoding rather than constructing a CString to pass to the
1659         TextEncodingconstructor.
1660         (WebCore::TextResourceDecoder::checkForHeadCharset): Ditto.
1661
1662         * platform/network/FormData.cpp:
1663         (WebCore::FormData::FormData): Changed to start refcount at 1.
1664         (WebCore::FormData::create): Added.
1665         (WebCore::FormData::copy): Call adoptRef since refcount starts at 1.
1666         * platform/network/FormData.h: Made constructor private. Added create functions.
1667
1668         * platform/network/mac/ResourceRequestMac.mm:
1669         (WebCore::ResourceRequest::doUpdateResourceRequest): Call FormData::create.
1670         * xml/XMLHttpRequest.cpp:
1671         (WebCore::XMLHttpRequest::send): Ditto.
1672
1673 2008-02-23  Darin Adler  <darin@apple.com>
1674
1675         Reviewed by Anders.
1676
1677         - http://bugs.webkit.org/show_bug.cgi?id=17067
1678           eliminate attributes parameter from JSObject::put for speed/clarity
1679
1680         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1681         (WebCore::JSCSSStyleDeclaration::customPut): Remove attributes argument.
1682
1683         * bindings/js/JSCanvasPixelArrayCustom.cpp:
1684         (WebCore::JSCanvasPixelArray::indexGetter): Use early exit idiom.
1685         (WebCore::JSCanvasPixelArray::indexSetter): Moved length check into the
1686         CanvasPixelArray object, for consistency with the getter. Removed attributes
1687         argument.
1688
1689         * bindings/js/JSDOMWindowCustom.cpp:
1690         (WebCore::JSDOMWindow::customPut): Removed special case for variable
1691         initialization, which is not needed since that does use put any more.
1692         Removed attributes argument.
1693
1694         * bindings/js/JSEventTargetBase.h:
1695         (WebCore::JSEventTargetBase::putValueProperty): Removed attributes argument.
1696         (WebCore::JSEventTargetBase::put): Ditto.
1697         (WebCore::JSEventTargetPrototype::self): Removed Internal flag.
1698         * bindings/js/JSEventTargetNode.cpp:
1699         (WebCore::JSEventTargetNode::put): Removed attributes argument.
1700         (WebCore::JSEventTargetNode::putValueProperty): Ditto.
1701         * bindings/js/JSEventTargetNode.h: Ditto.
1702         * bindings/js/JSHTMLAppletElementCustom.cpp:
1703         (WebCore::JSHTMLAppletElement::customPut): Ditto.
1704         * bindings/js/JSHTMLEmbedElementCustom.cpp:
1705         (WebCore::JSHTMLEmbedElement::customPut): Ditto.
1706         * bindings/js/JSHTMLInputElementBase.cpp:
1707         (WebCore::JSHTMLInputElementBase::put): Ditto.
1708         (WebCore::JSHTMLInputElementBase::putValueProperty): Ditto.
1709         * bindings/js/JSHTMLInputElementBase.h: Ditto.
1710         * bindings/js/JSHTMLObjectElementCustom.cpp:
1711         (WebCore::JSHTMLObjectElement::customPut): Ditto.
1712         * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
1713         (WebCore::JSHTMLOptionsCollection::indexSetter): Ditto.
1714         * bindings/js/JSHTMLSelectElementCustom.cpp:
1715         (WebCore::JSHTMLSelectElement::indexSetter): Ditto.
1716         * bindings/js/JSHistoryCustom.cpp:
1717         (WebCore::JSHistory::customPut): Ditto.
1718         * bindings/js/JSLocation.cpp:
1719         (WebCore::JSLocation::put): Ditto.
1720         * bindings/js/JSLocation.h: Ditto.
1721         * bindings/js/JSXMLHttpRequest.cpp:
1722         (WebCore::JSXMLHttpRequest::put): Ditto.
1723         (WebCore::JSXMLHttpRequest::putValueProperty): Ditto.
1724         * bindings/js/JSXMLHttpRequest.h: Ditto.
1725
1726         * bindings/js/kjs_dom.cpp:
1727         (WebCore::getRuntimeObject): Changed return type to JSObject*.
1728         * bindings/js/kjs_dom.h: Ditto.
1729
1730         * bindings/js/kjs_events.cpp:
1731         (WebCore::JSClipboard::put): Removed attributes argument.
1732         (WebCore::JSClipboard::putValueProperty): Ditto.
1733         * bindings/js/kjs_events.h: Ditto.
1734
1735         * bindings/js/kjs_html.cpp:
1736         (WebCore::runtimeObjectGetter): Updated for change to getRuntimeObject to
1737         return a JSObject. Used early exit idiom.
1738         (WebCore::runtimeObjectPropertyGetter): Ditto.
1739         (WebCore::runtimeObjectCustomGetOwnPropertySlot): Ditto.
1740         (WebCore::runtimeObjectCustomPut): Use hasProperty to check for properties
1741         that we should put with the property syntax instead of canPut.
1742         (WebCore::runtimeObjectImplementsCall): Ditto.
1743         (WebCore::runtimeObjectCallAsFunction): Ditto.
1744         * bindings/js/kjs_html.h: Removed attributes argument to runtimeObjectCustomPut.
1745
1746         * bindings/js/kjs_window.cpp:
1747         (KJS::Window::put): Removed attributes argument.
1748         * bindings/js/kjs_window.h: Ditto.
1749
1750         * bindings/scripts/CodeGeneratorJS.pm: Removed attributes argument from put,
1751         putValueProperty, customPut, and indexSetter.
1752
1753         * html/CanvasPixelArray.h:
1754         (WebCore::CanvasPixelArray::set): Added index checking here, as in the get
1755         function. Before, the checking was done in the JavaScript bindings for set.
1756
1757 2008-02-23  Brent Fulgham  <bfulgham@gmail.com>
1758
1759         Reviewed by Adam and Darin.
1760
1761         http://bugs.webkit.org/show_bug.cgi?id=17442
1762         Correct the Windows Cairo implementation of GraphicsContext so
1763         that Windows 'WorldTransform' is kept in sync with the Cairo
1764         transormations.
1765
1766         Also corrects an uninitialized variable in the Cairo Windows
1767         image drag handler.
1768
1769         WARNING: NO TEST CASES ADDED OR CHANGED
1770
1771         * platform/graphics/cairo/GraphicsContextCairo.cpp:  Modify
1772           methods to call GraphicsContextPlatformPrivate calls, just
1773           as is done for the CoreGraphics version.  These calls are
1774           nop's for everything but Windows.
1775         (WebCore::GraphicsContext::savePlatformState):
1776         (WebCore::GraphicsContext::restorePlatformState):
1777         (WebCore::GraphicsContext::clip):
1778         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
1779         (WebCore::GraphicsContext::translate):
1780         (WebCore::GraphicsContext::concatCTM): Re-enable for Windows
1781         (WebCore::GraphicsContext::beginTransparencyLayer):
1782         (WebCore::GraphicsContext::endTransparencyLayer):
1783         (WebCore::GraphicsContext::rotate):
1784         (WebCore::GraphicsContext::scale):
1785         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
1786         * platform/graphics/win/GraphicsContextCGWin.cpp:  Move common
1787           code for handling WorldTransform calls to parent class.
1788         * platform/graphics/win/GraphicsContextCairoWin.cpp:  Add common
1789           code for handling WorldTransform calls.
1790           (WebCore::GraphicsContextPlatformPrivate::concatCTM):  Change
1791           implementation so that it only handles WorldTransform.  The
1792           Cairo update is done in GraphicsContextCairo.cpp
1793         * platform/graphics/win/GraphicsContextWin.cpp:  Call platform-private
1794           methods to keep WorldTransform in sync.
1795         (WebCore::GraphicsContextPlatformPrivate::save):
1796         (WebCore::GraphicsContextPlatformPrivate::restore):
1797         (WebCore::GraphicsContextPlatformPrivate::clip):
1798         (WebCore::GraphicsContextPlatformPrivate::scale):
1799         (WebCore::GraphicsContextPlatformPrivate::rotate):
1800         (WebCore::GraphicsContextPlatformPrivate::translate):
1801         * platform/win/DragImageCairoWin.cpp:
1802         (WebCore::createDragImageFromImage):  Correct uninitialized value
1803
1804 2008-02-23  Dan Bernstein  <mitz@apple.com>
1805
1806         Reviewed by Dave Hyatt.
1807
1808         - make non-autowrapping text clear floats
1809
1810         Test: fast/text/whitespace/nowrap-clear-float.html
1811
1812         * rendering/RenderBlock.cpp:
1813         (WebCore::RenderBlock::nextFloatBottomBelow): Renamed nearestFloat() to
1814         this and changed to avoid comparing bottom to 0 in each iteration.
1815         (WebCore::RenderBlock::getClearDelta): Updated comment for the rename.
1816         * rendering/RenderBlock.h:
1817         * rendering/bidi.cpp:
1818         (WebCore::RenderBlock::fitBelowFloats): Added. Factored out of
1819         findNextLineBreak() and simplified.
1820         (WebCore::RenderBlock::findNextLineBreak): Changed to call
1821         fitBelowFloats(). Fixed the bug by trying to fit below floats in the
1822         case of non-wrapping text. Removed some redundancy.
1823
1824 2008-02-23  Sam Weinig  <sam@webkit.org>
1825
1826         Reviewed by Oliver Hunt.
1827
1828         Fix for http://bugs.webkit.org/show_bug.cgi?id=17504
1829         Speed up DOM lists array subscription syntax by using the fast 
1830         getOwnPropertySlot and set paths
1831
1832         - 6x speed improvement on Oliver's ImageData put test.
1833
1834         * bindings/scripts/CodeGeneratorJS.pm: Add fast path for getOwnPropertySlot
1835         and put when an indexGetter or indexSetter is used.  We can not use the fast
1836         path if an overridingNameGetter is used as there would be no way to override.
1837
1838 2008-02-23  Kevin Ollivier  <kevino@theolliviers.com>
1839
1840         wx build fix after JSImageData.cpp was added.
1841
1842         * WebCoreSources.bkl:
1843
1844 2008-02-23  Alexey Proskuryakov  <ap@webkit.org>
1845
1846         Windows build fix - move ThreadCondition implementation from WebCore to WTF.
1847
1848         * WebCore.vcproj/WebCore.vcproj:
1849         * platform/win/ThreadConditionWin.cpp: Removed.
1850
1851 2008-02-23  Alexey Proskuryakov  <ap@webkit.org>
1852
1853         Reviewed by Darin.
1854
1855         Move basic threading support from WebCore to WTF.
1856
1857         One call that remains in WebCore is callOnMainThread(), and it has its own header now.
1858
1859         * ForwardingHeaders/wtf/Locker.h: Added.
1860         * ForwardingHeaders/wtf/MessageQueue.h: Added.
1861         * ForwardingHeaders/wtf/Threading.h: Added.
1862         * GNUmakefile.am:
1863         * WebCore.pro:
1864         * WebCore.vcproj/WebCore.vcproj:
1865         * WebCore.xcodeproj/project.pbxproj:
1866         * WebCoreSources.bkl:
1867         * bindings/js/JSCustomSQLTransactionCallback.cpp:
1868         * dom/XMLTokenizer.cpp:
1869         * loader/icon/IconDatabase.cpp:
1870         (WebCore::iconDatabase):
1871         * loader/icon/IconDatabase.h:
1872         * platform/Locker.h: Removed.
1873         * platform/MainThread.h: Copied from WebCore/platform/Threading.h.
1874         (WebCore::initializeThreadingAndMainThread):
1875         * platform/MessageQueue.h: Removed.
1876         * platform/SecurityOrigin.h:
1877         * platform/Threading.h: Removed.
1878         * platform/ThreadingNone.cpp: Removed.
1879         * platform/gtk/MainThreadGtk.cpp: Copied from WebCore/platform/gtk/ThreadingGtk.cpp.
1880         * platform/gtk/ThreadingGtk.cpp: Removed.
1881         * platform/mac/MainThreadMac.mm: Copied from WebCore/platform/mac/Threading.mm.
1882         * platform/mac/Threading.mm: Removed.
1883         * platform/pthreads: Removed.
1884         * platform/pthreads/ThreadingPthreads.cpp: Removed.
1885         * platform/qt/MainThreadQt.cpp: Copied from WebCore/platform/qt/ThreadingQt.cpp.
1886         * platform/qt/ThreadingQt.cpp: Removed.
1887         * platform/sql/SQLValue.h:
1888         * platform/sql/SQLiteAuthorizer.h:
1889         * platform/sql/SQLiteDatabase.h:
1890         * platform/win/MainThreadWin.cpp: Copied from WebCore/platform/win/ThreadingWin.cpp.
1891         (WebCore::initializeThreadingAndMainThread):
1892         * platform/win/MutexWin.cpp: Removed.
1893         * platform/win/ThreadingWin.cpp: Removed.
1894         * platform/wx/MainThreadWx.cpp: Copied from WebCore/platform/wx/ThreadingWx.cpp.
1895         * platform/wx/ThreadingWx.cpp: Removed.
1896         * storage/Database.cpp:
1897         (WebCore::Database::Database):
1898         * storage/Database.h:
1899         * storage/DatabaseTask.h:
1900         * storage/DatabaseThread.h:
1901         * storage/DatabaseTracker.cpp:
1902         * storage/OriginQuotaManager.h:
1903         * storage/SQLError.h:
1904         * storage/SQLResultSet.h:
1905         * storage/SQLStatement.h:
1906         * storage/SQLStatementCallback.h:
1907         * storage/SQLStatementErrorCallback.h:
1908         * storage/SQLTransaction.h:
1909         * storage/SQLTransactionCallback.h:
1910         * storage/SQLTransactionErrorCallback.h:
1911         * webcore-wx.bkl:
1912
1913 2008-02-23  David Kilzer  <ddkilzer@apple.com>
1914
1915         Please clarify licensing for some files
1916         <http://bugs.webkit.org/show_bug.cgi?id=14970>
1917
1918         Reviewed by Darin.
1919
1920         * bindings/objc/WebScriptObject.h: Added Apple BSD-style license.
1921         * bindings/objc/WebScriptObjectPrivate.h: Ditto.
1922         * platform/text/mac/ShapeArabic.c: Added ICU license from WebCore/icu/LICENSE.
1923
1924 2008-02-22  Justin Garcia  <justin.garcia@apple.com>
1925
1926         Reviewed by Anders Carlsson.
1927
1928         <rdar://problem/5714333> Add document.getSelection()
1929         
1930         Add a synonym for window.getSelection() that FF supports.  There were requests in
1931         this bugs dupes to also support the IE only document.selection, but IE's Selection
1932         object is too different than ours currently for that to be safe (specifically, we
1933         don't support enough of IE's TextRange methods on our DOM Range object yet). I
1934         filed <rdar://problem/5761233> to cover that.
1935
1936         * dom/Document.cpp:
1937         (WebCore::Document::getSelection): Added.
1938         * dom/Document.h:
1939         * dom/Document.idl: Ditto.  JS only since this is about web compatibility.
1940
1941 2008-02-22  Oliver Hunt  <oliver@apple.com>
1942
1943         WX build fixes
1944
1945         * WebCoreSources.bkl:
1946
1947 2008-02-22  Oliver Hunt  <oliver@apple.com>
1948
1949         Once more with the cairo/qt/wx build fixing
1950
1951         * platform/graphics/cairo/ImageBufferCairo.cpp:
1952         * platform/graphics/qt/ImageBufferQt.cpp:
1953         * platform/graphics/wx/ImageBufferWx.cpp:
1954
1955 2008-02-22  Mark Rowe  <mrowe@apple.com>
1956
1957         Windows build fix.  Add missing include of DeprecatedCString.h and sort existing includes.
1958
1959         * platform/win/PasteboardWin.cpp:
1960
1961 2008-02-22  Mark Rowe  <mrowe@apple.com>
1962
1963         Speculative Windows build fix.
1964
1965         * platform/win/ClipboardUtilitiesWin.cpp:  Add missing include of DeprecatedCString.h and sort existing includes.
1966         * platform/win/ClipboardWin.cpp:  Ditto.
1967
1968 2008-02-22  Oliver Hunt  <oliver@apple.com>
1969
1970         Build fix for windows, wx and qt
1971
1972         * html/CanvasPixelArray.h:
1973         (WebCore::CanvasPixelArray::set):
1974
1975 2008-02-22  Oliver Hunt  <oliver@apple.com>
1976
1977         Unbreak windows vcproj
1978
1979         * WebCore.vcproj/WebCore.vcproj:
1980
1981 2008-02-22  Oliver Hunt  <oliver@apple.com>
1982
1983         Reviewed by Sam W.
1984
1985         Support Canvas.getImageData and Canvas.createImageData
1986         
1987         This patch adds support for all the pixel reading portions
1988         of the HTML5 Canvas spec.  There are two new types ImageData
1989         and CanvasPixelArray which are used to provide the HTML5
1990         ImageData object, and the required semantics for assignment
1991         to the ImageData data array.
1992         
1993         We only implement the CG version of ImageBuffer::getImageData,
1994         but the logic is null safe, so this will not introduce any
1995         crashes into other platforms, unfortunately it will result in
1996         JS Object detection "lying" on non-CG platforms.
1997
1998         Tests: fast/canvas/canvas-ImageData-behaviour.html
1999                fast/canvas/canvas-getImageData.html
2000
2001         * DerivedSources.make:
2002         * GNUmakefile.am:
2003         * WebCore.pro:
2004         * WebCore.vcproj/WebCore.vcproj:
2005         * WebCore.xcodeproj/project.pbxproj:
2006         * bindings/js/JSCanvasPixelArrayCustom.cpp: Added.
2007         (WebCore::JSCanvasPixelArray::indexGetter):
2008         (WebCore::JSCanvasPixelArray::indexSetter):
2009         (WebCore::toJS):
2010         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
2011         * bindings/scripts/CodeGeneratorJS.pm:
2012         * html/CanvasPixelArray.cpp: Added.
2013         (WebCore::CanvasPixelArray::create):
2014         * html/CanvasPixelArray.h: Added.
2015         (WebCore::CanvasPixelArray::data):
2016         (WebCore::CanvasPixelArray::length):
2017         (WebCore::CanvasPixelArray::set):
2018         (WebCore::CanvasPixelArray::get):
2019         * html/CanvasPixelArray.idl: Added.
2020         * html/CanvasRenderingContext2D.cpp:
2021         (WebCore::createEmptyImageData):
2022         (WebCore::CanvasRenderingContext2D::createImageData):
2023         (WebCore::CanvasRenderingContext2D::getImageData):
2024         * html/CanvasRenderingContext2D.h:
2025         * html/CanvasRenderingContext2D.idl:
2026         * html/HTMLCanvasElement.cpp:
2027         (WebCore::HTMLCanvasElement::convertLogicalToDevice):
2028         (WebCore::HTMLCanvasElement::createImageBuffer):
2029         * html/HTMLCanvasElement.h:
2030         * html/ImageData.cpp: Added.
2031         (WebCore::ImageData::create):
2032         (WebCore::ImageData::ImageData):
2033         * html/ImageData.h: Added.
2034         (WebCore::ImageData::width):
2035         (WebCore::ImageData::height):
2036         (WebCore::ImageData::data):
2037         * html/ImageData.idl: Added.
2038         * platform/graphics/ImageBuffer.h:
2039         * platform/graphics/cairo/ImageBufferCairo.cpp:
2040         (WebCore::ImageBuffer::getImageData):
2041         * platform/graphics/cg/ImageBufferCG.cpp:
2042         (WebCore::ImageBuffer::getImageData):
2043         * platform/graphics/qt/ImageBufferQt.cpp:
2044         (WebCore::ImageBuffer::getImageData):
2045         * platform/graphics/wx/ImageBufferWx.cpp:
2046         (WebCore::ImageBuffer::getImageData):
2047
2048 2008-02-22  Sam Weinig  <sam@webkit.org>
2049
2050         Rubber-stamped by Adam Roben.
2051
2052         Rid the project of the Devil known as DeprecatedString!
2053
2054         * GNUmakefile.am:
2055         * WebCore.base.exp:
2056         * WebCore.pro:
2057         * WebCore.vcproj/WebCore.vcproj:
2058         * WebCore.xcodeproj/project.pbxproj:
2059         * WebCoreSources.bkl:
2060         * dom/Node.h:
2061         * html/HTMLFormElement.cpp:
2062         * platform/DeprecatedString.cpp: Removed.
2063         * platform/DeprecatedString.h: Removed.
2064         * platform/graphics/qt/IconQt.cpp:
2065         * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp:
2066         * platform/gtk/CookieJarGtk.cpp:
2067         * platform/gtk/CursorGtk.cpp:
2068         * platform/gtk/KeyEventGtk.cpp:
2069         * platform/mac/DeprecatedStringMac.mm: Removed.
2070         * platform/network/qt/ResourceHandleQt.cpp:
2071         * platform/network/win/CookieJarWin.cpp:
2072         (WebCore::cookies):
2073         * platform/qt/ClipboardQt.cpp:
2074         * platform/qt/CookieJarQt.cpp:
2075         * platform/qt/CursorQt.cpp:
2076         * platform/symbian/DeprecatedStringSymbian.cpp: Removed.
2077         * platform/text/AtomicString.cpp:
2078         * platform/text/AtomicString.h:
2079         * platform/text/PlatformString.h:
2080         * platform/text/String.cpp:
2081         * platform/text/StringImpl.cpp:
2082         * platform/text/qt/StringQt.cpp:
2083         (WebCore::String::String):
2084         * platform/text/wx/StringWx.cpp:
2085         * platform/win/BString.cpp:
2086         * platform/win/BString.h:
2087         * platform/win/PasteboardWin.cpp:
2088
2089 2008-02-22  Sam Weinig  <sam@webkit.org>
2090
2091         Reviewed by Geoff Garen.
2092
2093         - Remove use of DeprecatedString in CSSStyleSelector.
2094
2095         * css/CSSStyleSelector.cpp:
2096         (WebCore::findHash): Removed.  Use find instead.
2097         (WebCore::findSlashDotDotSlash): Changed to take a UChar* and a length.
2098         (WebCore::findSlashSlash): Ditto.
2099         (WebCore::findSlashDotSlash): Ditto.
2100         (WebCore::containsColonSlashSlash): Ditto.
2101         (WebCore::cleanPath): Change to operate on a String.
2102         (WebCore::checkPseudoState): Changed to use a Vector as a buffer.
2103
2104 2008-02-22  Geoffrey Garen  <ggaren@apple.com>
2105
2106         Reviewed by Sam Weinig.
2107         
2108         Fixed <rdar://problem/5057509> Repro leak of JSXMLHttpRequest and
2109         associated objects @ www.viamichelin.it, which was probably an underlying
2110         cause of <rdar://problem/5744037> Gmail out of memory (17455)
2111         
2112         If SubresourceLoader::create returned NULL, we would ref() / gcProtect()
2113         the XMLHttpRequest but think we hadn't, therefore never
2114         calling deref() / gcUnprotect().
2115         
2116         This could happen at gmail.com, since gmail.com attempts to send
2117         XMLHttpRequests from unload handlers in order to gather usage statistics.
2118         (According to comments in the code, SubresourceLoader::create returns
2119         NULL when called from an unload handler.)
2120
2121         The solution is to ref() / gcProtect() only if SubresourceLoader::create
2122         doesn't return NULL. This make sense, since we only need to protect the
2123         request as long as it has an outstanding network transaction.
2124         
2125         * xml/XMLHttpRequest.cpp:
2126         (WebCore::XMLHttpRequest::XMLHttpRequest):
2127         (WebCore::XMLHttpRequest::send):
2128
2129 2008-02-22  Darin Adler  <darin@apple.com>
2130
2131         Reviewed, tweaked and landed by Sam.
2132
2133         - Make RegularExpression operate on Strings instead of DeprecatedStrings.
2134
2135         * dom/DOMImplementation.cpp:
2136         (WebCore::DOMImplementation::isXMLMIMEType): Use string instead of DeprecatedString
2137         to build up the RegularExpression.
2138         * page/Frame.cpp:
2139         (WebCore::createRegExpForLabels): Use String instead of DeprecatedString.
2140         (WebCore::Frame::searchForLabelsAboveCell): Ditto.
2141         (WebCore::Frame::searchForLabelsBeforeElement): Ditto.
2142         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
2143         * page/Frame.h:
2144         * page/mac/FrameMac.mm:
2145         (WebCore::regExpForLabels): Ditto.
2146         (WebCore::Frame::searchForNSLabelsAboveCell): Ditto.
2147         (WebCore::Frame::searchForLabelsBeforeElement): Ditto.
2148         (WebCore::Frame::matchLabelsAgainstElement): Ditto.
2149
2150         * platform/text/RegularExpression.cpp:
2151         (WebCore::RegularExpression::Private::Private):
2152         (WebCore::RegularExpression::Private::compile):
2153         (WebCore::RegularExpression::RegularExpression):
2154         (WebCore::RegularExpression::operator=):
2155         (WebCore::RegularExpression::pattern):
2156         (WebCore::RegularExpression::match):
2157         (WebCore::RegularExpression::search):
2158         (WebCore::RegularExpression::searchRev):
2159         (WebCore::replace): Added.
2160         * platform/text/RegularExpression.h:
2161         Change functions to take Strings as input instead of DeprecatedStrings and
2162         reduce the complexity of the class by removing unneeded globbing support.
2163
2164 2008-02-22  Jon Honeycutt  <jhoneycutt@apple.com>
2165
2166         Reviewed by Anders.
2167
2168         <rdar://problem/5760360> REGRESSION(r30376): Crash loading plugin page
2169         during stress test (after only 5 min) - null dereference
2170
2171         Full-frame plug-ins create PluginStream objects without loaders, as the
2172         PluginView receives the loading callbacks. We were trying to call
2173         setDefersLoading on these null pointers.
2174
2175         * plugins/PluginStream.cpp:
2176         (WebCore::PluginStream::startStream): Add null check.
2177         (WebCore::PluginStream::destroyStream): Same.
2178         (WebCore::PluginStream::deliverData): Same.
2179
2180 2008-02-22  Darin Adler  <darin@apple.com>
2181
2182         Reviewed and tweaked by Jon Honeycutt. Reviewed and landed by Sam.
2183
2184         - Remove uses of DeprecatedString in Windows plugin code.
2185
2186         * plugins/win/PluginPackageWin.cpp:
2187         (WebCore::getVersionInfo): Cleanup formatting.
2188         (WebCore::PluginPackage::freeLibraryTimerFired): Remove un-needed variable name.
2189         (WebCore::PluginPackage::storeFileVersion): Move casts.
2190         (WebCore::PluginPackage::fetchInfo): Use OwnArrayPtr and switch to more efficient
2191         use of Vectors.
2192         (WebCore::PluginPackage::load): Fix whitespace.
2193         (WebCore::PluginPackage::hash): Make the hashCodes const
2194         * plugins/win/PluginViewWin.cpp:
2195         (WebCore::makeURL): Use String instead of DeprecatedString.
2196         (WebCore::parseRFC822HeaderFields): Ditto.
2197         (WebCore::PluginView::handlePost): Ditto.
2198         (WebCore::PluginView::status): Ditto.
2199
2200 2008-02-22  Darin Adler  <darin@apple.com>
2201
2202         Reviewed, tweaked and landed by Sam.
2203
2204         - Don't use DeprecatedString in HTMLTokenizer.
2205
2206         * html/HTMLTokenizer.cpp:
2207         (WebCore::HTMLTokenizer::finish):
2208         * platform/text/PlatformString.h:
2209         (WebCore::find):
2210
2211 2008-02-21  Sam Weinig  <sam@webkit.org>
2212
2213         Reviewed by Anders Carlsson.
2214
2215         Fix for <rdar://problem/5757946>
2216
2217         - Parse URLs before checking whether they are javascript: urls
2218           (which require security checks).
2219
2220         * bindings/js/JSAttrCustom.cpp:
2221         (WebCore::JSAttr::setValue):
2222         * bindings/js/JSElementCustom.cpp:
2223         (WebCore::allowSettingSrcToJavascriptURL):
2224         * bindings/js/JSHTMLFrameElementCustom.cpp:
2225         (WebCore::allowSettingJavascriptURL):
2226         * bindings/js/JSHTMLIFrameElementCustom.cpp:
2227         (WebCore::JSHTMLIFrameElement::setSrc):
2228
2229 2008-02-21  Ada Chan  <adachan@apple.com>
2230
2231         <rdar://problem/5757873> Buffer overrun in DeprecatedCString::find() in WebCore
2232         We could get a buffer overrun in DeprecatedCString::find() if the end of the
2233         string matches a beginning portion of the substring, for example, if string is
2234         "a" but the substring is "ab".
2235         The code as is also will not match things correctly under certain situations
2236         since the inner while loop increments the index. For example, we wouldn't find
2237         a match if the string is "aab..." and the substring is "ab".  Changed the 
2238         inner while loop to increment a temporary index into str.
2239         
2240         Test: fast/loader/charset-parse.html
2241
2242         Reviewed by Dan Berstein.
2243
2244         * platform/DeprecatedCString.cpp:
2245         (WebCore::DeprecatedCString::find):
2246
2247 2008-02-21  David Hyatt  <hyatt@apple.com>
2248
2249         Fix for bug 17301.  CSS media queries need to use the correct viewport
2250         when contained in documents inside iframes (rather than always using the
2251         top-level document's viewport).  CSS media queries based on the viewport
2252         also needed to be dynamic and update as you resize the window (this is
2253         a HOT feature). :)
2254
2255         This patch gets Acid3 up to 86/100 with 3 colored boxes filled in.
2256
2257         Reviewed by olliej
2258
2259         Added fast/media/viewport-media-query.html
2260
2261         * css/CSSStyleSelector.cpp:
2262         (WebCore::CSSStyleSelector::CSSStyleSelector):
2263         (WebCore::CSSStyleSelector::addViewportDependentMediaQueryResult):
2264         (WebCore::CSSStyleSelector::affectedByViewportChange):
2265         * css/CSSStyleSelector.h:
2266         (WebCore::MediaQueryResult::MediaQueryResult):
2267         * css/MediaQueryEvaluator.cpp:
2268         (WebCore::MediaQueryEvaluator::MediaQueryEvaluator):
2269         (WebCore::MediaQueryEvaluator):
2270         (WebCore::MediaQueryEvaluator::eval):
2271         (WebCore::colorMediaFeatureEval):
2272         (WebCore::monochromeMediaFeatureEval):
2273         (WebCore::device_aspect_ratioMediaFeatureEval):
2274         (WebCore::device_pixel_ratioMediaFeatureEval):
2275         (WebCore::gridMediaFeatureEval):
2276         (WebCore::device_heightMediaFeatureEval):
2277         (WebCore::device_widthMediaFeatureEval):
2278         (WebCore::heightMediaFeatureEval):
2279         (WebCore::widthMediaFeatureEval):
2280         (WebCore::min_colorMediaFeatureEval):
2281         (WebCore::max_colorMediaFeatureEval):
2282         (WebCore::min_monochromeMediaFeatureEval):
2283         (WebCore::max_monochromeMediaFeatureEval):
2284         (WebCore::min_device_aspect_ratioMediaFeatureEval):
2285         (WebCore::max_device_aspect_ratioMediaFeatureEval):
2286         (WebCore::min_device_pixel_ratioMediaFeatureEval):
2287         (WebCore::max_device_pixel_ratioMediaFeatureEval):
2288         (WebCore::min_heightMediaFeatureEval):
2289         (WebCore::max_heightMediaFeatureEval):
2290         (WebCore::min_widthMediaFeatureEval):
2291         (WebCore::max_widthMediaFeatureEval):
2292         (WebCore::min_device_heightMediaFeatureEval):
2293         (WebCore::max_device_heightMediaFeatureEval):
2294         (WebCore::min_device_widthMediaFeatureEval):
2295         (WebCore::max_device_widthMediaFeatureEval):
2296         * css/MediaQueryEvaluator.h:
2297         * css/MediaQueryExp.cpp:
2298         (WebCore::MediaQueryExp::~MediaQueryExp):
2299         * css/MediaQueryExp.h:
2300         (WebCore::MediaQueryExp::value):
2301         (WebCore::MediaQueryExp::isViewportDependent):
2302         * html/HTMLMediaElement.cpp:
2303         (WebCore::HTMLMediaElement::pickMedia):
2304         * page/FrameView.cpp:
2305         (WebCore::FrameView::layout):
2306
2307 2008-02-21  Anders Carlsson  <andersca@apple.com>
2308
2309         Reviewed by Sam.
2310
2311         Make more classes start out with a refcount of 1.
2312
2313         * dom/QualifiedName.cpp:
2314         (WebCore::QNameComponentsTranslator::translate):
2315         (WebCore::QualifiedName::QualifiedName):
2316         * dom/QualifiedName.h:
2317         (WebCore::QualifiedName::QualifiedNameImpl::create):
2318         (WebCore::QualifiedName::QualifiedNameImpl::QualifiedNameImpl):
2319         * history/BackForwardList.cpp:
2320         (WebCore::BackForwardList::BackForwardList):
2321         * history/BackForwardList.h:
2322         (WebCore::BackForwardList::create):
2323         * page/Page.cpp:
2324         (WebCore::Page::Page):
2325         * platform/text/CString.cpp:
2326         (WebCore::CString::init):
2327         (WebCore::CString::newUninitialized):
2328         (WebCore::CString::copyBufferIfNeeded):
2329         * platform/text/CString.h:
2330         (WebCore::CStringBuffer::create):
2331         (WebCore::CStringBuffer::CStringBuffer):
2332
2333 2008-02-21  Kevin Ollivier  <kevino@theolliviers.com>
2334
2335         wx build fix for the domString() -> string() rename in r30443.
2336
2337         * platform/graphics/wx/FontPlatformDataWx.cpp:
2338         (WebCore::FontPlatformData::FontPlatformData):
2339
2340 2008-02-21  Antti Koivisto  <antti@apple.com>
2341
2342         Reviewed by Sam Weinig.
2343
2344         <rdar://problem/5753789>
2345         REGRESSION: 1.5% -2% Sunspider regression from r30009 (ebay photo upload hang)
2346         
2347         Ensure all versions of allowsAccessFrom are inlined to single functions. 
2348         This is a 2% win in browser hosted Sunspider. 
2349
2350         * bindings/js/kjs_window.cpp:
2351         (KJS::Window::allowsAccessFrom):
2352         (KJS::Window::allowsAccessFromPrivate):
2353         * bindings/js/kjs_window.h:
2354
2355 2008-02-21  Dan Bernstein  <mitz@apple.com>
2356
2357         Reviewed by Sam Weinig.
2358
2359         - minor cleanup
2360
2361         * rendering/bidi.cpp:
2362         (WebCore::bidiNext): Removed redundant isBR() check -- isText() returns
2363         true for RenderLineBreak.
2364         (WebCore::bidiFirst): Ditto.
2365         (WebCore::shouldSkipWhitespaceAfterStartObject):
2366         (WebCore::RenderBlock::findNextLineBreak):
2367
2368 2008-02-21  Geoffrey Garen  <ggaren@apple.com>
2369
2370         Reviewed by David Harrison.
2371         
2372         Fixed <rdar://problem/5756125> REGRESSION: A crash occurs at 
2373         WebCore::Frame::scriptProxy() when completing a search with Package Tracker widget
2374
2375         Test: fast/dom/script-element-without-frame-crash.html
2376
2377         * html/HTMLTokenizer.cpp:
2378         (WebCore::HTMLTokenizer::parseTag): Added back a NULL check that was
2379         accidentally removed in r30325.
2380
2381 2008-02-21  Rodney Dawes  <dobey@wayofthemonkey.com>
2382
2383         GTK+ build fix. s/domString()/string()/
2384
2385         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
2386         (FontPlatformData::FontPlatformData):
2387
2388 2008-02-20  Dan Bernstein  <mitz@apple.com>
2389
2390         Reviewed by Dave Hyatt.
2391
2392         - fix http://bugs.webkit.org/show_bug.cgi?id=17465
2393           REGRESSION: <DIV> tokenized into Div if still searching for DOCTYPE
2394
2395         Test: fast/tokenizer/doctype-search-reset.html
2396
2397         * html/HTMLTokenizer.cpp:
2398         (WebCore::HTMLTokenizer::parseTag):
2399
2400 2008-02-20  Dan Bernstein  <mitz@apple.com>
2401
2402         Reviewed by Dave Hyatt.
2403
2404         - fix http://bugs.webkit.org/show_bug.cgi?id=17464
2405           REGRESSION: Crash in RenderBlock::findNextLineBreak reading r30444 commit email in GMail
2406
2407         Test: fast/text/wbr-in-pre-crash.html
2408
2409         * rendering/bidi.cpp:
2410         (WebCore::RenderBlock::findNextLineBreak):
2411
2412 2008-02-20  Oliver Hunt  <oliver@apple.com>
2413
2414         Reviewed by Hyatt.
2415
2416         Bug 17303: Canvas crash in ImageBuffer
2417
2418         We handle a null GraphicsContext everywhere, but we weren't checking for 
2419         a null ImageBuffer, which is what will result in a null GraphicsContext in
2420         the first place.
2421
2422         Test: fast/canvas/access-zero-sized-canvas.html
2423
2424         * html/HTMLCanvasElement.cpp:
2425
2426 2008-02-20  David Hyatt  <hyatt@apple.com>
2427
2428         Fix the layout test failure that never should have passed in the first
2429         place by making changes to media lists actually result in the recomputation
2430         of the style selector.  Now it passes for the right reasons and not because
2431         of dumb luck.
2432
2433         Reviewed by Sam Weinig
2434
2435         * css/MediaList.cpp:
2436         (WebCore::MediaList::deleteMedium):
2437         (WebCore::MediaList::setMediaText):
2438         (WebCore::MediaList::appendMedium):
2439         (WebCore::MediaList::notifyChanged):
2440         * css/MediaList.h:
2441         * dom/Document.cpp:
2442         (WebCore::Document::attach):
2443
2444 2008-02-20  Darin Adler  <darin@apple.com>
2445
2446         Reviewed, tweaked and landed by Sam.
2447
2448         - make markup functions not use DeprecatedString.
2449
2450         * editing/markup.cpp:
2451         (WebCore::append): Added.
2452         (WebCore::escapeContentText): Build up string using a Vector.
2453         (WebCore::appendStartMarkup): Use String instead of DeprecatedString.
2454
2455 2008-02-20  Darin Adler  <darin@apple.com>
2456
2457         Reviewed, tweaked and landed by Sam.
2458
2459         - make TextIterator use a Vector instead of a DeprecatedString.
2460
2461         * editing/TextIterator.cpp:
2462         (WebCore::CharacterIterator::string): Build up the String using a
2463         Vector.
2464         (WebCore::WordAwareIterator::advance): Switch to using Vector functions.
2465         (WebCore::WordAwareIterator::length): Ditto.
2466         (WebCore::WordAwareIterator::characters): Ditto.
2467         * editing/TextIterator.h: Use a Vector<UChar> for the buffer instead
2468         of DeprecatedString.
2469
2470 2008-02-20  Darin Adler  <darin@apple.com>
2471
2472         Reviewed, tweaked and landed by Sam.
2473
2474         - make HTMLInterchange return a String instead of a DeprecatedString
2475
2476         * editing/HTMLInterchange.cpp:
2477         (WebCore::): Return a String from convertedSpaceString.
2478         (WebCore::convertHTMLTextToInterchangeFormat): Use a Vector instead of
2479         a DeprecatedString to build up the return String.
2480         * editing/HTMLInterchange.h:
2481
2482 2008-02-20  Eric Seidel  <eric@webkit.org>
2483
2484         Reviewed by Oliver.
2485
2486         Remove m_drawingContext and change m_data to m_imageBuffer
2487
2488         * html/HTMLCanvasElement.cpp:
2489         (WebCore::HTMLCanvasElement::HTMLCanvasElement):
2490         (WebCore::HTMLCanvasElement::reset):
2491         (WebCore::HTMLCanvasElement::paint):
2492         (WebCore::HTMLCanvasElement::createImageBuffer):
2493         (WebCore::HTMLCanvasElement::buffer):
2494         (WebCore::HTMLCanvasElement::createPlatformImage):
2495         * html/HTMLCanvasElement.h:
2496
2497 2008-02-20  Anders Carlsson  <andersca@apple.com>
2498
2499         Reviewed by Sam.
2500
2501         Rename AtomicString::domString() to AtomicString::string().
2502         
2503         * css/CSSComputedStyleDeclaration.cpp:
2504         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2505         * css/CSSFontSelector.cpp:
2506         (WebCore::CSSFontSelector::getFontData):
2507         * dom/Attr.cpp:
2508         (WebCore::Attr::createTextChild):
2509         * dom/Comment.cpp:
2510         (WebCore::Comment::nodeName):
2511         * dom/Document.cpp:
2512         (WebCore::Document::recalcStyleSelector):
2513         (WebCore::Document::setHTMLWindowEventListener):
2514         (WebCore::Document::formElementsState):
2515         * dom/StyledElement.cpp:
2516         (WebCore::StyledElement::parseMappedAttribute):
2517         * dom/Text.cpp:
2518         (WebCore::Text::nodeName):
2519         * editing/SelectionController.cpp:
2520         (WebCore::SelectionController::debugRenderer):
2521         * html/HTMLCollection.cpp:
2522         (WebCore::HTMLCollection::checkForNameMatch):
2523         * html/HTMLElement.cpp:
2524         (WebCore::HTMLElement::nodeName):
2525         (WebCore::HTMLElement::setHTMLEventListener):
2526         * html/HTMLFormCollection.cpp:
2527         (WebCore::HTMLFormCollection::getNamedFormItem):
2528         * html/HTMLImageElement.cpp:
2529         (WebCore::HTMLImageElement::parseMappedAttribute):
2530         (WebCore::HTMLImageElement::isURLAttribute):
2531         * html/HTMLLinkElement.cpp:
2532         (WebCore::HTMLLinkElement::parseMappedAttribute):
2533         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
2534         * html/HTMLObjectElement.cpp:
2535         (WebCore::HTMLObjectElement::isURLAttribute):
2536         (WebCore::HTMLObjectElement::containsJavaApplet):
2537         * html/HTMLParamElement.cpp:
2538         (WebCore::HTMLParamElement::isURLAttribute):
2539         * html/HTMLParser.cpp:
2540         (WebCore::HTMLParser::handleIsindex):
2541         * html/HTMLScriptElement.cpp:
2542         (WebCore::HTMLScriptElement::insertedIntoDocument):
2543         (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
2544         * html/HTMLStyleElement.cpp:
2545         (WebCore::HTMLStyleElement::parseMappedAttribute):
2546         * html/HTMLTokenizer.cpp:
2547         (WebCore::HTMLTokenizer::parseTag):
2548         * html/HTMLViewSourceDocument.cpp:
2549         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
2550         * loader/FrameLoader.cpp:
2551         (WebCore::FrameLoader::saveDocumentState):
2552         * page/FrameTree.cpp:
2553         (WebCore::FrameTree::uniqueChildName):
2554         * platform/text/AtomicString.h:
2555         (WebCore::AtomicString::string):
2556         (WebCore::AtomicString::contains):
2557         (WebCore::AtomicString::find):
2558         (WebCore::AtomicString::startsWith):
2559         (WebCore::AtomicString::endsWith):
2560         * rendering/RenderPartObject.cpp:
2561         (WebCore::RenderPartObject::updateWidget):
2562         * svg/SVGElement.cpp:
2563         (WebCore::SVGElement::addSVGEventListener):
2564         * svg/SVGSVGElement.cpp:
2565         (WebCore::SVGSVGElement::addSVGWindowEventListener):
2566         * xml/XPathFunctions.cpp:
2567         (WebCore::XPath::FunLocalName::evaluate):
2568         (WebCore::XPath::FunNamespaceURI::evaluate):
2569         (WebCore::XPath::FunName::evaluate):
2570
2571 2008-02-20  Brent Fulgham  <bfulgham@gmail.com>
2572
2573         Reviewed by Dan.
2574
2575         http://bugs.webkit.org/show_bug.cgi?id=17336
2576         Provide implementations for Windows (Cairo) build of WebKit that
2577         handles font formatting.
2578         - Split font implementation files to allow maximal code sharing
2579           between CG and Cairo back-ends. 
2580
2581         * WebCore.vcproj/WebCore.vcproj:
2582         * platform/graphics/SimpleFontData.h:   Add signatures for private win
2583           initialization functions.
2584         * platform/graphics/win/FontCacheWin.cpp:
2585         (WebCore::FontCache::platformInit):
2586         (WebCore::FontCache::createFontPlatformData):
2587         * platform/graphics/win/FontCairoWin.cpp: Removed.  Universal version
2588           is now part of platform/graphics/cairo.
2589         * platform/graphics/win/FontCustomPlatformDataCairo.cpp: Added.
2590         (WebCore::FontCustomPlatformDataCairo::~FontCustomPlatformDataCairo):
2591         (WebCore::FontCustomPlatformDataCairo::fontPlatformData):
2592         (WebCore::releaseData):
2593         (WebCore::createFontCustomPlatformData):
2594         * platform/graphics/win/FontCustomPlatformDataCairo.h: Added.
2595         (WebCore::FontCustomPlatformDataCairo::FontCustomPlatformDataCairo):
2596         * platform/graphics/win/FontPlatformData.h:
2597         (WebCore::FontPlatformData::FontPlatformData):
2598         (WebCore::FontPlatformData::fontFace):
2599         (WebCore::FontPlatformData::scaledFont):
2600         (WebCore::FontPlatformData::operator==):
2601         * platform/graphics/win/FontPlatformDataCGWin.cpp: Copied from WebCore/platform/graphics/win/FontPlatformDataWin.cpp.
2602         (WebCore::FontPlatformData::platformDataInit):
2603         * platform/graphics/win/FontPlatformDataCairoWin.cpp: Added.
2604         (WebCore::FontPlatformData::platformDataInit):
2605         (WebCore::FontPlatformData::FontPlatformData):
2606         (WebCore::FontPlatformData::setFont):
2607         * platform/graphics/win/FontPlatformDataWin.cpp:  Moved CG-specific
2608           code to FontPlatformDataCG.cpp.
2609         (WebCore::FontPlatformData::FontPlatformData):
2610         * platform/graphics/win/GlyphPageTreeNodeCGWin.cpp: Copied from WebCore/platform/graphics/win/GlyphPageTreeNodeWin.cpp.
2611         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp: Copied from WebCore/platform/graphics/win/GlyphPageTreeNodeWin.cpp.
2612         (WebCore::GlyphPage::fill):
2613         * platform/graphics/win/GlyphPageTreeNodeWin.cpp: Removed.  Replaced
2614           with CG- and Cairo-specific versions.
2615         * platform/graphics/win/SimpleFontDataCGWin.cpp:
2616         (WebCore::SimpleFontData::platformInit):
2617         (WebCore::SimpleFontData::platformDestroy):
2618         (WebCore::SimpleFontData::platformWidthForGlyph):
2619         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
2620         (WebCore::SimpleFontData::platformInit):
2621         (WebCore::SimpleFontData::platformDestroy):
2622         (WebCore::SimpleFontData::platformWidthForGlyph):
2623         (WebCore::SimpleFontData::setFont):
2624         * platform/graphics/win/SimpleFontDataWin.cpp:
2625         (WebCore::SimpleFontData::initGDIFont):
2626         (WebCore::SimpleFontData::platformCommonDestroy):
2627         (WebCore::SimpleFontData::widthForGDIGlyph):
2628
2629 2008-02-20  Darin Adler  <darin@apple.com>
2630
2631         Reviewed by Sam.
2632
2633         * dom/Node.h: Took out unneeded forward declaration of TextStream.
2634
2635 2008-02-20  Darin Adler  <darin@apple.com>
2636
2637         Reviewed by Sam.
2638
2639         * rendering/RenderObject.h: Took out unneeded forward declaration of TextStream.
2640
2641 2008-02-20  David Hyatt  <hyatt@apple.com>
2642
2643         Fix for bug 16760, incorrect <object> MIME type handling and fallback
2644         handling.
2645
2646         Reviewed by darin
2647
2648         * html/HTMLImageLoader.cpp:
2649         (WebCore::HTMLImageLoader::notifyFinished):
2650         If the image had an error, make sure to do <object> fallback.
2651
2652         * html/HTMLObjectElement.cpp:
2653         (WebCore::HTMLObjectElement::renderFallbackContent):
2654         Before doing fallback check if there is a MIME type mismatch between
2655         an image type and a non-image type.  If so, detach and re-attach after
2656         storing the correct MIME type.
2657
2658         * loader/loader.cpp:
2659         (WebCore::Loader::didReceiveData):
2660         Consider it an error when a 404 is encountered on a CachedResource load.
2661
2662 2008-02-20  Anders Carlsson  <andersca@apple.com>
2663
2664         Reviewed by Sam.
2665
2666         StringImpl constructors used by AtomicString should start with a refcount of 1.
2667         
2668         * platform/text/AtomicString.cpp:
2669         (WebCore::AtomicString::add):
2670         * platform/text/AtomicString.h:
2671         * platform/text/StringImpl.cpp:
2672         (WebCore::StringImpl::StringImpl):
2673
2674 2008-02-20  Darin Adler  <darin@apple.com>
2675
2676         * bindings/js/kjs_navigator.cpp:
2677         (WebCore::needsYouTubeQuirk): Tweak comments.
2678
2679 2008-02-20  Anders Carlsson  <andersca@apple.com>
2680
2681         Reviewed by Darin.
2682
2683         Change all refcounted classes in page/ to start with a refcount of 1.
2684
2685         * page/BarInfo.cpp:
2686         (WebCore::BarInfo::BarInfo):
2687         * page/BarInfo.h:
2688         (WebCore::BarInfo::create):
2689         * page/Console.cpp:
2690         (WebCore::Console::Console):
2691         * page/Console.h:
2692         (WebCore::Console::create):
2693         * page/DOMSelection.cpp:
2694         (WebCore::DOMSelection::DOMSelection):
2695         * page/DOMSelection.h:
2696         (WebCore::DOMSelection::create):
2697         * page/DOMWindow.cpp:
2698         (WebCore::DOMWindow::DOMWindow):
2699         (WebCore::DOMWindow::screen):
2700         (WebCore::DOMWindow::history):
2701         (WebCore::DOMWindow::locationbar):
2702         (WebCore::DOMWindow::menubar):
2703         (WebCore::DOMWindow::personalbar):
2704         (WebCore::DOMWindow::scrollbars):
2705         (WebCore::DOMWindow::statusbar):
2706         (WebCore::DOMWindow::toolbar):
2707         (WebCore::DOMWindow::console):
2708         (WebCore::DOMWindow::getSelection):
2709         * page/DOMWindow.h:
2710         (WebCore::DOMWindow::create):
2711         * page/Frame.cpp:
2712         (WebCore::Frame::domWindow):
2713         * page/History.cpp:
2714         (WebCore::History::History):
2715         * page/History.h:
2716         (WebCore::History::create):
2717         * page/InspectorController.cpp:
2718         (WebCore::InspectorResource::create):
2719         (WebCore::InspectorResource::InspectorResource):
2720         (WebCore::InspectorDatabaseResource::create):
2721         (WebCore::InspectorDatabaseResource::InspectorDatabaseResource):
2722         (WebCore::InspectorController::didLoadResourceFromMemoryCache):
2723         (WebCore::InspectorController::identifierForInitialRequest):
2724         (WebCore::InspectorController::didOpenDatabase):
2725         * page/Plugin.h:
2726         (WebCore::Plugin::create):
2727         (WebCore::Plugin::Plugin):
2728         * page/Screen.cpp:
2729         (WebCore::Screen::Screen):
2730         * page/Screen.h:
2731         (WebCore::Screen::create):
2732
2733 2008-02-20  Sam Weinig  <sam@webkit.org>
2734
2735         Reviewed by Darin and Geoff.
2736
2737         - <rdar://problem/5754378> work around missing video on YouTube front page with a site-specific hack
2738
2739         * WebCore.base.exp: Updated.
2740
2741         * bindings/js/kjs_navigator.cpp:
2742         (WebCore::needsYouTubeQuirk): Added. Return true on Windows only when the quirk is needed.
2743         (WebCore::Navigator::getValueProperty): For the appVersion property, if needsYouTubeQuirk
2744         return true, then return the empty string.
2745
2746         * page/Settings.cpp:
2747         (WebCore::Settings::Settings): Set m_needsSiteSpecificQuirks to false.
2748         (WebCore::Settings::setNeedsSiteSpecificQuirks): Added.
2749         * page/Settings.h: Added m_needsSiteSpecificQuirks.
2750         (WebCore::Settings::needsSiteSpecificQuirks): Added.
2751
2752 2008-02-20  David Hyatt  <hyatt@apple.com>
2753
2754         Fix for bug 12751, doctype nodes aren't part of the Document (Acid3).
2755
2756         Reviewed by Sam Weinig
2757
2758         Many tests added in fast/doctypes.
2759
2760         * dom/DOMImplementation.cpp:
2761         (WebCore::DOMImplementation::createDocument):
2762         (WebCore::DOMImplementation::createHTMLDocument):
2763         * dom/Document.cpp:
2764         (WebCore::Document::Document):
2765         (WebCore::Document::setDocType):
2766         (WebCore::Document::attach):
2767         (WebCore::Document::getImageMap):
2768         * dom/Document.h:
2769         (WebCore::Document::doctype):
2770         (WebCore::Document::):
2771         (WebCore::Document::determineParseMode):
2772         (WebCore::Document::setParseMode):
2773         (WebCore::Document::parseMode):
2774         (WebCore::Document::inCompatMode):
2775         (WebCore::Document::inAlmostStrictMode):
2776         (WebCore::Document::inStrictMode):
2777         * dom/DocumentType.cpp:
2778         (WebCore::DocumentType::cloneNode):
2779         (WebCore::DocumentType::insertedIntoDocument):
2780         (WebCore::DocumentType::removedFromDocument):
2781         * dom/DocumentType.h:
2782         * dom/Node.cpp:
2783         (WebCore::Node::childAllowed):
2784         * dom/StyledElement.cpp:
2785         (WebCore::StyledElement::attributeChanged):
2786         * dom/XMLTokenizer.cpp:
2787         (WebCore::XMLTokenizer::internalSubset):
2788         (WebCore::):
2789         * editing/markup.cpp:
2790         (WebCore::appendStartMarkup):
2791         * html/HTMLAppletElement.cpp:
2792         (WebCore::HTMLAppletElement::createRenderer):
2793         * html/HTMLDocument.cpp:
2794         (WebCore::HTMLDocument::HTMLDocument):
2795         (WebCore::HTMLDocument::childAllowed):
2796         (WebCore::HTMLDocument::determineParseMode):
2797         * html/HTMLDocument.h:
2798         * html/HTMLMapElement.cpp:
2799         (WebCore::HTMLMapElement::parseMappedAttribute):
2800         * html/HTMLParamElement.cpp:
2801         (WebCore::HTMLParamElement::parseMappedAttribute):
2802         * html/HTMLParser.cpp:
2803         (WebCore::HTMLParser::parseDoctypeToken):
2804         * html/HTMLParser.h:
2805         * html/HTMLTokenizer.cpp:
2806         (WebCore::HTMLTokenizer::reset):
2807         (WebCore::HTMLTokenizer::parseDoctype):
2808         (WebCore::HTMLTokenizer::parseTag):
2809         (WebCore::HTMLTokenizer::write):
2810         (WebCore::HTMLTokenizer::finish):
2811         (WebCore::HTMLTokenizer::processDoctypeToken):
2812         * html/HTMLTokenizer.h:
2813         (WebCore::):
2814         (WebCore::DoctypeToken::DoctypeToken):
2815         (WebCore::DoctypeToken::reset):
2816         (WebCore::DoctypeToken::state):
2817         (WebCore::DoctypeToken::setState):
2818         (WebCore::HTMLTokenizer::State::inDoctype):
2819         (WebCore::HTMLTokenizer::State::setInDoctype):
2820         (WebCore::HTMLTokenizer::State::needsSpecialWriteHandling):
2821         (WebCore::HTMLTokenizer::State::):
2822         * html/HTMLViewSourceDocument.cpp:
2823         (WebCore::HTMLViewSourceDocument::addViewSourceToken):
2824         (WebCore::HTMLViewSourceDocument::addViewSourceDoctypeToken):
2825         * html/HTMLViewSourceDocument.h:
2826         * loader/FrameLoader.cpp:
2827         (WebCore::FrameLoader::write):
2828         (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
2829         * page/Frame.cpp:
2830         (WebCore::Frame::documentTypeString):
2831         * page/inspector/utilities.js:
2832         * xml/XSLTProcessor.cpp:
2833         (WebCore::XSLTProcessor::createDocumentFromSource):
2834
2835 2008-02-20  Anders Carlsson  <andersca@apple.com>
2836
2837         Reviewed by Darin.
2838
2839         Change most SVG related classes to start out with a ref count of 1.
2840         
2841         * bindings/js/JSSVGPointListCustom.cpp:
2842         (WebCore::JSSVGPointList::initialize):
2843         (WebCore::JSSVGPointList::insertItemBefore):
2844         (WebCore::JSSVGPointList::replaceItem):
2845         (WebCore::JSSVGPointList::appendItem):
2846         * bindings/js/JSSVGTransformListCustom.cpp:
2847         (WebCore::JSSVGTransformList::initialize):
2848         (WebCore::JSSVGTransformList::insertItemBefore):
2849         (WebCore::JSSVGTransformList::replaceItem):
2850         (WebCore::JSSVGTransformList::appendItem):
2851         * rendering/SVGCharacterLayoutInfo.h:
2852         (WebCore::SVGCharOnPath::create):
2853         (WebCore::SVGCharOnPath::SVGCharOnPath):
2854         * rendering/SVGRootInlineBox.cpp:
2855         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2856         * svg/SVGAnimationElement.cpp:
2857         (WebCore::SVGAnimationElement::parseBeginOrEndValue):
2858         * svg/SVGClipPathElement.cpp:
2859         (WebCore::SVGClipPathElement::canvasResource):
2860         * svg/SVGElementInstance.cpp:
2861         (WebCore::SVGElementInstance::childNodes):
2862         * svg/SVGElementInstanceList.cpp:
2863         (WebCore::SVGElementInstanceList::SVGElementInstanceList):
2864         * svg/SVGElementInstanceList.h:
2865         (WebCore::SVGElementInstanceList::create):
2866         * svg/SVGFitToViewBox.cpp:
2867         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
2868         * svg/SVGGradientElement.cpp:
2869         (WebCore::SVGGradientElement::SVGGradientElement):
2870         (WebCore::SVGGradientElement::canvasResource):
2871         * svg/SVGImageElement.cpp:
2872         (WebCore::SVGImageElement::SVGImageElement):
2873         * svg/SVGLengthList.h:
2874         (WebCore::SVGLengthList::create):
2875         * svg/SVGList.h:
2876         (WebCore::SVGList::SVGList):
2877         (WebCore::SVGPODListItem::create):
2878         (WebCore::SVGPODListItem::copy):
2879         (WebCore::SVGPODListItem::SVGPODListItem):
2880         (WebCore::SVGPODList::initialize):
2881         (WebCore::SVGPODList::insertItemBefore):
2882         (WebCore::SVGPODList::replaceItem):
2883         (WebCore::SVGPODList::appendItem):
2884         (WebCore::SVGPODList::SVGPODList):
2885         * svg/SVGMarkerElement.cpp:
2886         (WebCore::SVGMarkerElement::canvasResource):
2887         * svg/SVGMaskElement.cpp:
2888         (WebCore::SVGMaskElement::canvasResource):
2889         * svg/SVGNumberList.h:
2890         (WebCore::SVGNumberList::create):
2891         * svg/SVGPathElement.cpp:
2892         (WebCore::SVGPathElement::createSVGPathSegClosePath):
2893         (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
2894         (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
2895         (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
2896         (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
2897         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
2898         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
2899         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
2900         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
2901         (WebCore::SVGPathElement::createSVGPathSegArcAbs):
2902         (WebCore::SVGPathElement::createSVGPathSegArcRel):
2903         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
2904         (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
2905         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
2906         (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
2907         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
2908         (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
2909         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
2910         (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
2911         (WebCore::SVGPathElement::pathSegList):
2912         * svg/SVGPathElement.h:
2913         * svg/SVGPathSeg.h:
2914         (WebCore::SVGPathSeg::SVGPathSeg):
2915         * svg/SVGPathSegArc.h:
2916         (WebCore::SVGPathSegArcAbs::create):
2917         (WebCore::SVGPathSegArcRel::create):
2918         * svg/SVGPathSegClosePath.h:
2919         (WebCore::SVGPathSegClosePath::create):
2920         * svg/SVGPathSegCurvetoCubic.h:
2921         (WebCore::SVGPathSegCurvetoCubicAbs::create):
2922         (WebCore::SVGPathSegCurvetoCubicRel::create):
2923         * svg/SVGPathSegCurvetoCubicSmooth.h:
2924         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create):
2925         (WebCore::SVGPathSegCurvetoCubicSmoothRel::create):
2926         * svg/SVGPathSegCurvetoQuadratic.h:
2927         (WebCore::SVGPathSegCurvetoQuadraticAbs::create):
2928         (WebCore::SVGPathSegCurvetoQuadraticRel::create):
2929         * svg/SVGPathSegCurvetoQuadraticSmooth.h:
2930         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create):
2931         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create):
2932         * svg/SVGPathSegLineto.h:
2933         (WebCore::SVGPathSegLinetoAbs::create):
2934         (WebCore::SVGPathSegLinetoRel::create):
2935         * svg/SVGPathSegLinetoHorizontal.h:
2936         (WebCore::SVGPathSegLinetoHorizontalAbs::create):
2937         (WebCore::SVGPathSegLinetoHorizontalRel::create):
2938         * svg/SVGPathSegLinetoVertical.h:
2939         (WebCore::SVGPathSegLinetoVerticalAbs::create):
2940         (WebCore::SVGPathSegLinetoVerticalRel::create):
2941         * svg/SVGPathSegList.h:
2942         (WebCore::SVGPathSegList::create):
2943         * svg/SVGPathSegMoveto.h:
2944         (WebCore::SVGPathSegMovetoAbs::create):
2945         (WebCore::SVGPathSegMovetoRel::create):
2946         * svg/SVGPatternElement.cpp:
2947         (WebCore::SVGPatternElement::SVGPatternElement):
2948         (WebCore::SVGPatternElement::canvasResource):
2949         * svg/SVGPointList.h:
2950         (WebCore::SVGPointList::create):
2951         * svg/SVGPolyElement.cpp:
2952         (WebCore::SVGPolyElement::points):
2953         * svg/SVGPreserveAspectRatio.cpp:
2954         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
2955         * svg/SVGPreserveAspectRatio.h:
2956         (WebCore::SVGPreserveAspectRatio::create):
2957         * svg/SVGRenderingIntent.h:
2958         (WebCore::SVGRenderingIntent::SVGRenderingIntent):
2959         * svg/SVGStringList.h:
2960         (WebCore::SVGStringList::create):
2961         * svg/SVGStyledTransformableElement.cpp:
2962         (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
2963         * svg/SVGTests.cpp:
2964         (WebCore::SVGTests::requiredFeatures):
2965         (WebCore::SVGTests::requiredExtensions):
2966         (WebCore::SVGTests::systemLanguage):
2967         * svg/SVGTextElement.cpp:
2968         (WebCore::SVGTextElement::SVGTextElement):
2969         * svg/SVGTextPositioningElement.cpp:
2970         (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
2971         * svg/SVGTransformList.h:
2972         (WebCore::SVGTransformList::create):
2973         * svg/SVGUnitTypes.h:
2974         (WebCore::SVGUnitTypes::SVGUnitTypes):
2975         * svg/SVGViewElement.cpp:
2976         (WebCore::SVGViewElement::viewTarget):
2977         * svg/SVGViewSpec.cpp:
2978         (WebCore::SVGViewSpec::SVGViewSpec):
2979         * svg/graphics/SVGPaintServer.cpp:
2980         (WebCore::SVGPaintServer::sharedSolidPaintServer):
2981         * svg/graphics/SVGPaintServer.h:
2982         * svg/graphics/SVGPaintServerGradient.h:
2983         (WebCore::SVGPaintServerGradient::SharedStopCache::create):
2984         (WebCore::SVGPaintServerGradient::SharedStopCache::SharedStopCache):
2985         * svg/graphics/SVGPaintServerLinearGradient.h:
2986         (WebCore::SVGPaintServerLinearGradient::create):
2987         * svg/graphics/SVGPaintServerPattern.h:
2988         (WebCore::SVGPaintServerPattern::create):
2989         * svg/graphics/SVGPaintServerRadialGradient.h:
2990         (WebCore::SVGPaintServerRadialGradient::create):
2991         * svg/graphics/SVGPaintServerSolid.h:
2992         (WebCore::SVGPaintServerSolid::create):
2993         * svg/graphics/SVGResource.cpp:
2994         (WebCore::SVGResource::SVGResource):
2995         * svg/graphics/SVGResource.h:
2996         * svg/graphics/SVGResourceClipper.h:
2997         (WebCore::SVGResourceClipper::create):
2998         * svg/graphics/SVGResourceMarker.h:
2999         (WebCore::SVGResourceMarker::create):
3000         * svg/graphics/SVGResourceMasker.h:
3001         (WebCore::SVGResourceMasker::create):
3002         * svg/graphics/cg/SVGPaintServerGradientCg.cpp:
3003         (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
3004
3005 2008-02-20  Darin Adler  <darin@apple.com>
3006
3007         Reviewed by Sam.
3008
3009         - make conversion from CSS ParseString to String and AtomicString
3010           automatic and remove all the explicit calls to do the conversion
3011
3012         - fix CSS parsing to do fewer allocations, mostly by using the
3013           equalIgnoringCase function in CSSParser
3014
3015         * css/CSSGrammar.y: Take out all the explicit atomicString and
3016         domString calls now that ParseString knows how to convert itself.
3017
3018         * css/CSSParser.cpp:
3019         (WebCore::equal): Added.
3020         (WebCore::equalIgnoringCase): Allow non-lettters.
3021         (WebCore::ParseString::lower): Used charactersAreAllASCII.
3022         (WebCore::unitFromString): Use equal.
3023         (WebCore::CSSParser::parseValue): Removed unneeded call to domString.
3024         (WebCore::CSSParser::parseContent): Use equalIgnoringCase.
3025         (WebCore::CSSParser::parseBackgroundImage): Removed unneeded call to domString.
3026         (WebCore::CSSParser::parseTransitionTimingFunction): Use equalIgnoringCase.
3027         (WebCore::CSSParser::parseDashboardRegions): More of the same.
3028         (WebCore::CSSParser::parseCounterContent): Ditto.
3029         (WebCore::CSSParser::parseShape): Use equalIgnoringCase.
3030         (WebCore::CSSParser::parseFontFamily): Removed unneeded calls to domString.
3031         (WebCore::CSSParser::parseFontFaceSrc): More.
3032         (WebCore::CSSParser::parseFontFaceUnicodeRange): More.
3033         (WebCore::CSSParser::parseColor): Don't lowercase here -- setNamedColor now
3034         handles the case folding.
3035         (WebCore::CSSParser::parseColorFromValue): More.
3036         (WebCore::CSSParser::parseBorderImage): More.
3037         (WebCore::CSSParser::parseCounter): More.
3038         (WebCore::TransformOperationInfo::TransformOperationInfo): More.
3039         (WebCore::CSSParser::parseTransform): More.
3040         (WebCore::CSSParser::createCharsetRule): More.
3041         (WebCore::CSSParser::createImportRule): More.
3042
3043         * css/CSSParser.h: Removed domString and atomicString functions.
3044         (WebCore::ParseString::operator String): Added. Allows conversion to String
3045         without an explicit function call.
3046         (WebCore::ParseString::operator AtomicString): Ditto.
3047
3048         * css/MediaQueryExp.cpp:
3049         (WebCore::MediaQueryExp::MediaQueryExp): Removed a call to domString.
3050         * css/SVGCSSParser.cpp:
3051         (WebCore::CSSParser::parseSVGValue): Removed calls to domString.
3052
3053         * platform/graphics/Color.cpp:
3054         (WebCore::findNamedColor): Call toASCIILower on each character as we copy
3055         it into the 8-bit character buffer to make the operation fold case.
3056
3057 2008-02-20  Justin Garcia  <justin.garcia@apple.com>
3058
3059         Reviewed by Darin Adler.
3060
3061         <rdar://problem/5694920> Typing (esp. deleting) is slower due to TOT WebCore changes
3062
3063         * editing/DeleteSelectionCommand.cpp:
3064         (WebCore::DeleteSelectionCommand::initializeStartEnd): The common case here
3065         is where there are no special elements.  Avoid creating VisiblePositions in
3066         that case.  Additionally, this change postpones the more expensive creation
3067         of an upstream VisiblePosition until the last possible moment.
3068         (WebCore::DeleteSelectionCommand::saveTypingStyleState):
3069         (WebCore::DeleteSelectionCommand::calculateTypingStyleAfterDelete): Add an 
3070         early return for a common case: deleting characters that are all inside the 
3071         same text node. In that case the style at the start of the selection will 
3072         not change during the delete, so there is no need to save/recompute it.
3073         (WebCore::DeleteSelectionCommand::saveFullySelectedAnchor): Early return
3074         before VisiblePosition creation if the ends of the selection aren't enclosed
3075         by an anchor.
3076         * editing/TypingCommand.cpp:
3077         (WebCore::TypingCommand::markMisspellingsAfterTyping): Early return if spell
3078         checking isn't enabled.
3079
3080 2008-02-20  Alexey Proskuryakov  <ap@webkit.org>
3081
3082         Incorporates some improvements made by Dan Bernstein.
3083
3084         Reviewed by Darin.
3085
3086         http://bugs.webkit.org/show_bug.cgi?id=17106
3087         <rdar://problem/5750722> Debug build ASSERTs on page load
3088
3089         Test: fast/encoding/GBK/close-gbk-converter.html
3090
3091         * platform/text/TextCodecICU.cpp:
3092         (WebCore::getGbkEscape): Changed to use a switch instead of a HashMap, as there
3093         are only four values.
3094         (WebCore::gbkCallbackEscape): Check the reason why the function is called, and do not attempt
3095         getting an escape character if it's not UCNV_UNASSIGNED.
3096         (WebCore::gbkCallbackSubstitute): Ditto.
3097
3098 2008-02-20  Alexey Proskuryakov  <ap@webkit.org>
3099
3100         Build fix.
3101
3102         * xml/XMLHttpRequest.cpp:
3103         (WebCore::isSafeRequestHeader):
3104         (WebCore::XMLHttpRequest::setRequestHeader):
3105
3106 2008-02-20  Alexey Proskuryakov  <ap@webkit.org>
3107
3108         Reviewed by Darin.
3109
3110         <rdar://problem/5749455> Unable to set the Referer header in Dashboard using XMLHttpRequest
3111
3112         Cannot be tested in DRT.
3113
3114         * xml/XMLHttpRequest.cpp: (WebCore::canSetRequestHeader): Assume that a request that can load
3115         local files can also set any headers.
3116
3117 2008-02-19  Darin Adler  <darin@apple.com>
3118
3119         Reviewed by Sam.
3120
3121         - removed use of DeprecatedString for font family names
3122
3123         * css/CSSFontSelector.cpp:
3124         (WebCore::CSSFontSelector::addFontFaceRule): Update for name change.
3125         * css/CSSParser.cpp:
3126         (WebCore::CSSParser::parseFontFamily): Update to use new appendSpaceSeparated
3127         function and String rather than DeprecatedString.
3128         * css/CSSStyleSelector.cpp:
3129         (WebCore::CSSStyleSelector::applyProperty): Updated for name change.
3130         * css/FontFamilyValue.cpp:
3131         (WebCore::FontFamilyValue::FontFamilyValue): Replaced code using a regular
3132         expression with code that does the same thing more efficiently.
3133         (WebCore::FontFamilyValue::appendSpaceSeparated): Added.
3134         (WebCore::FontFamilyValue::cssText): Updated for name change.
3135         * css/FontFamilyValue.h: Changed DeprecatedString to String. Renamed fontName
3136         to familyName and parsedFontName to m_familyName. Removed unused genericFamilyType
3137         and m_genericFamilyType. Added appendSpaceSeparated so that m_familyName can
3138         be private instead of public.
3139
3140 2008-02-19  Darin Adler  <darin@apple.com>
3141
3142         - fix build when SVG is not enabled
3143
3144         * rendering/RenderTreeAsText.cpp: Added include of "TextStream.h".
3145
3146 2008-02-19  Anders Carlsson  <andersca@apple.com>
3147
3148         Reviewed by Darin.
3149
3150         Change all classes in xml/ to start out with a ref count of 1.
3151         
3152         * bindings/js/JSCustomXPathNSResolver.h:
3153         * bindings/js/JSXMLHttpRequest.cpp:
3154         (WebCore::JSXMLHttpRequest::JSXMLHttpRequest):
3155         * bindings/js/JSXSLTProcessor.cpp:
3156         (WebCore::JSXSLTProcessor::JSXSLTProcessor):
3157         * bindings/objc/DOMCustomXPathNSResolver.h:
3158         (WebCore::DOMCustomXPathNSResolver::create):
3159         * bindings/scripts/CodeGeneratorJS.pm:
3160         * bindings/scripts/CodeGeneratorObjC.pm:
3161         * dom/Document.cpp:
3162         (WebCore::Document::applyXSLTransform):
3163         (WebCore::Document::createExpression):
3164         (WebCore::Document::createNSResolver):
3165         (WebCore::Document::evaluate):
3166         * xml/DOMParser.h:
3167         (WebCore::DOMParser::create):
3168         (WebCore::DOMParser::DOMParser):
3169         * xml/NativeXPathNSResolver.h:
3170         (WebCore::NativeXPathNSResolver::create):
3171         * xml/XMLHttpRequest.cpp:
3172         (WebCore::XMLHttpRequest::XMLHttpRequest):
3173         * xml/XMLHttpRequest.h:
3174         (WebCore::XMLHttpRequest::create):
3175         * xml/XMLSerializer.h:
3176         (WebCore::XMLSerializer::create):
3177         (WebCore::XMLSerializer::XMLSerializer):
3178         * xml/XPathEvaluator.cpp:
3179         (WebCore::XPathEvaluator::createNSResolver):
3180         * xml/XPathEvaluator.h:
3181         (WebCore::XPathEvaluator::create):
3182         (WebCore::XPathEvaluator::XPathEvaluator):
3183         * xml/XPathExpression.cpp:
3184         (WebCore::XPathExpression::createExpression):
3185         (WebCore::XPathExpression::evaluate):
3186         * xml/XPathExpression.h:
3187         (WebCore::XPathExpression::create):
3188         (WebCore::XPathExpression::XPathExpression):
3189         * xml/XPathNSResolver.h:
3190         * xml/XPathResult.cpp:
3191         (WebCore::XPathResult::XPathResult):
3192         * xml/XPathResult.h:
3193         (WebCore::XPathResult::create):
3194         * xml/XPathValue.cpp:
3195         (WebCore::XPath::Value::modifiableNodeSet):
3196         * xml/XPathValue.h:
3197         (WebCore::XPath::ValueData::create):
3198         (WebCore::XPath::ValueData::ValueData):
3199         (WebCore::XPath::Value::Value):
3200         * xml/XSLTProcessor.h:
3201         (WebCore::XSLTProcessor::create):
3202         (WebCore::XSLTProcessor::XSLTProcessor):
3203
3204 2008-02-19  Darin Adler  <darin@apple.com>
3205
3206         Reviewed by Sam.
3207
3208         - Trimmed down TextStream and weaned it from DeprecatedString.
3209
3210         * page/mac/WebCoreFrameBridge.mm:
3211         (-[WebCoreFrameBridge renderTreeAsExternalRepresentation]):
3212         Removed now-unneeded call to getNSString.
3213
3214         * platform/text/TextStream.cpp: Removed unused functions.
3215         Use snprintf instead of sprintf, for better security.
3216         (WebCore::TextStream::release): Added.
3217         * platform/text/TextStream.h: Removed lots of unneeded stuff.
3218
3219         * rendering/RenderTreeAsText.cpp:
3220         (WebCore::externalRepresentation): Changed to use String instead
3221         of DeprecatedString.
3222         * rendering/RenderTreeAsText.h: Ditto.
3223
3224         * rendering/SVGRenderTreeAsText.cpp:
3225         (WebCore::writeSVGInlineTextBox): Use "\n" instead of endl.
3226         (WebCore::write): Ditto.
3227         (WebCore::writeRenderResources): Ditto.
3228
3229 2008-02-19  Justin Garcia  <justin.garcia@apple.com>
3230
3231         Reviewed by Darin Adler.
3232
3233         <rdar://problem/5694920> Typing (esp. deleting) is slower due to TOT WebCore changes
3234         
3235         This brings performance on the phone back to old levels.  Andre and I are doing
3236         some formal testing to see exactly where we stand.
3237
3238         * dom/Position.cpp:
3239         (WebCore::enclosingBlockIgnoringEditability): Added.  This is enclosingBlock
3240         without the expensive editability checks. upstream and downstream can avoid 
3241         those because they do their own editability checking.
3242         (WebCore::Position::upstream):
3243         (WebCore::Position::downstream):
3244
3245 2008-02-19  Chris Fleizach  <cfleizach@apple.com>
3246
3247         Reviewed by Darin.
3248
3249         <rdar://problem/3663560> AXLink for a "name" (anchor) on same page should include an AXLinkedUIElementAttribute
3250
3251         * bridge/mac/WebCoreAXObject.mm:
3252         (-[WebCoreAXObject linkedUIElement]):
3253         Returns the linked-to AX object (if the specified one is ignored by accessibility, returns the next un-ignored one by traversing the DOM).
3254         
3255         (-[WebCoreAXObject accessibilityAttributeNames]):
3256         (-[WebCoreAXObject accessibilityAttributeValue:]):
3257         Support NSAccessibilityLinkedUIElementsAttribute.
3258
3259 2008-02-19  Darin Adler  <darin@apple.com>
3260
3261         Reviewed by Sam.
3262
3263         - Removed old debugging aids, Node::dump, RenderObject::dump, and
3264           RenderObject::information, that used DeprecatedString.
3265
3266         * dom/CharacterData.cpp: Removed override of Node::dump.
3267         * dom/CharacterData.h: Ditto.
3268         * dom/Element.cpp: Ditto.
3269         * dom/Element.h: Ditto.
3270         * dom/EventTargetNode.cpp: Ditto.
3271         * dom/EventTargetNode.h: Ditto.
3272         * dom/Node.cpp: Removed Node::dump.
3273         * dom/Node.h: Ditto.
3274
3275         * rendering/RenderBlock.cpp: Removed override of RenderObject::dump.
3276         * rendering/RenderBlock.h: Ditto.
3277         * rendering/RenderFrameSet.cpp: Ditto.
3278         * rendering/RenderFrameSet.h: Ditto.
3279         * rendering/RenderObject.cpp: Removed RenderObject::dump and
3280         RenderObject::information.
3281         * rendering/RenderObject.h: Ditto.
3282         * rendering/RenderTable.cpp: Removed override of RenderObject::dump.
3283         * rendering/RenderTable.h: Ditto.
3284         * rendering/RenderTableCell.cpp: Ditto.
3285         * rendering/RenderTableCell.h: Ditto.
3286         * rendering/RenderTableCol.cpp: Ditto.
3287         * rendering/RenderTableCol.h: Ditto.
3288         * rendering/RenderTableSection.cpp: Ditto.
3289         * rendering/RenderTableSection.h: Ditto.
3290
3291         * rendering/RenderTreeAsText.h: Removed unneeded include of TextStream.h
3292         and added forward declarations as appropriate.
3293
3294         * svg/SVGSVGElement.cpp: Removed unneeded include of TextStream.h.
3295         * svg/graphics/SVGResourceClipper.cpp: And here.
3296         * svg/graphics/SVGResourceFilter.cpp: Ditto.
3297         * svg/graphics/filters/SVGFEBlend.cpp: Ditto.
3298         * svg/graphics/filters/SVGFEComponentTransfer.cpp: Ditto.
3299         * svg/graphics/filters/SVGFEComposite.cpp: Ditto.
3300         * svg/graphics/filters/SVGFEDiffuseLighting.cpp: Ditto.
3301         * svg/graphics/filters/SVGFEGaussianBlur.cpp: Ditto.
3302         * svg/graphics/filters/SVGFEImage.cpp: Ditto.
3303         * svg/graphics/filters/SVGFEMerge.cpp: Ditto.
3304         * svg/graphics/filters/SVGFEMorphology.cpp: Ditto.
3305         * svg/graphics/filters/SVGFEOffset.cpp: Ditto.
3306         * svg/graphics/filters/SVGFESpecularLighting.cpp: Ditto.
3307         * svg/graphics/filters/SVGFETurbulence.cpp: Ditto.
3308         * svg/graphics/filters/SVGFilterEffect.cpp: Ditto.
3309
3310 2008-02-19  Beth Dakin  <bdakin@apple.com>
3311
3312         Reviewed by Sam.
3313
3314         Fix for <rdar://problem/5729674> Seed: Crash in 
3315         RenderButton::setStyle at http://www.dinorpg.com
3316
3317         Inputs should not honor first-letter.
3318
3319         * rendering/RenderBlock.cpp:
3320         (WebCore::RenderBlock::updateFirstLetter):
3321
3322 2008-02-19  Dan Bernstein  <mitz@apple.com>
3323
3324         Reviewed by Darin Adler.
3325
3326         - fix <rdar://problem/5637569> CrashTracer: [REGRESSION] 620 crashes in Safari at com.apple.WebCore: WebCore::RenderBox::setStaticY + 15
3327
3328         Test: fast/text/wbr-styled.html
3329
3330         Changed RenderWordBreak to inherit from RenderText instead of
3331         RenderInline.
3332
3333         * rendering/RenderBlock.cpp:
3334         (WebCore::RenderBlock::calcInlinePrefWidths):
3335         * rendering/RenderFlow.h:
3336         * rendering/RenderText.cpp:
3337         (WebCore::RenderText::renderName):
3338         (WebCore::RenderText::isTextFragment):
3339         (WebCore::RenderText::isWordBreak):
3340         * rendering/RenderText.h:
3341         * rendering/RenderWordBreak.cpp:
3342         (WebCore::RenderWordBreak::RenderWordBreak):
3343         * rendering/RenderWordBreak.h:
3344         * rendering/bidi.cpp:
3345         (WebCore::RenderBlock::findNextLineBreak):
3346
3347 2008-02-19  Anders Carlsson  <andersca@apple.com>
3348
3349         Reviewed by Darin.
3350
3351         * WebCore.base.exp:
3352         * loader/mac/LoaderNSURLExtras.h:
3353         * loader/mac/LoaderNSURLExtras.m:
3354         Move unused functions to WebKit (where they are used)
3355         
3356         (vectorContainsString):
3357         Use const references.
3358         
3359         * platform/mac/WebCoreSystemInterface.h:
3360         * platform/mac/WebCoreSystemInterface.mm:
3361         Remove wkNSURLProtocolClassForReqest.
3362         
3363 2008-02-19  Justin Garcia  <justin.garcia@apple.com>
3364
3365         Reviewed by Darin Adler.
3366
3367         <rdar://problem/5694920> Typing (esp. deleting) is slower due to TOT WebCore 
3368         
3369         These changes bring deleting performance back to old levels on the phone
3370         except for deleting the first space to the right of a word, which we are
3371         still working on.
3372
3373         * dom/Position.cpp:
3374         (WebCore::Position::upstream): Avoid the use of enclosingBlock when determining
3375         if we have left the original enclosing block or entered a new one, and avoid
3376         rootEditableElement for determining if we have changed editability.  These
3377         operations are expensive.
3378         (WebCore::Position::downstream): Ditto.
3379
3380 2008-02-19  Darin Adler  <darin@apple.com>
3381
3382         Rubber stamped by Anders.
3383
3384         - removed explicit initialization to 1 for RefCounted; that's now the default
3385
3386         * loader/ResourceLoader.cpp:
3387         (WebCore::ResourceLoader::ResourceLoader): Removed RefCounted initializer.
3388         * platform/network/ResourceHandle.cpp:
3389         (WebCore::ResourceHandle::ResourceHandle): Ditto.
3390         * platform/text/StringImpl.cpp:
3391         (WebCore::StringImpl::StringImpl): Ditto.
3392
3393 2008-02-18  Anders Carlsson  <andersca@apple.com>
3394
3395         Reviewed by Darin.
3396
3397         Make ResourceLoader and ResourceHandle start out with a refcount of 1.
3398
3399         * loader/MainResourceLoader.cpp:
3400         (WebCore::MainResourceLoader::create):
3401         * loader/NetscapePlugInStreamLoader.cpp:
3402         (WebCore::NetscapePlugInStreamLoader::create):
3403         * loader/ResourceLoader.cpp:
3404         (WebCore::ResourceLoader::ResourceLoader):
3405         * loader/SubresourceLoader.cpp:
3406         (WebCore::SubresourceLoader::create):
3407         * platform/network/ResourceHandle.cpp:
3408         (WebCore::ResourceHandle::ResourceHandle):
3409         (WebCore::ResourceHandle::create):
3410
3411 2008-02-19  Alp Toker  <alp@atoker.com>
3412
3413         Reviewed by Mark Rowe.
3414
3415         http://bugs.webkit.org/show_bug.cgi?id=16863
3416         [GTK] tab focusing doesn't work
3417
3418         GDK_MOD2_MASK doesn't always mean meta so we can't use it to identify
3419         the meta key state.
3420
3421         Use GDK_META_MASK where available, otherwise do not support the meta
3422         key. This matches the behaviour of other applications.
3423
3424         Also add a comment noting that the platform event constructors need to
3425         be kept in sync (it's not obvious that there are multiple places that
3426         check the key state).
3427
3428         * platform/gtk/KeyEventGtk.cpp:
3429         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3430         * platform/gtk/MouseEventGtk.cpp:
3431         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3432         * platform/gtk/WheelEventGtk.cpp:
3433         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
3434
3435 2008-02-18  Brady Eidson  <beidson@apple.com>
3436
3437         Reviewed by Sam Weinig's white rhino tusk stamp
3438
3439         SQLiteTransaction::stop() should also reset the transaction-in-progress flag in its parent SQLiteDatabase
3440
3441         * platform/sql/SQLiteTransaction.cpp:
3442         (WebCore::SQLiteTransaction::stop):
3443
3444 2008-02-18  Brady Eidson  <beidson@apple.com>
3445
3446         Reviewed by Darin
3447
3448         Fix for <rdar://5747529> - ObjC Exception can cause JSLock to never be released
3449
3450         Test: platform/mac/plugins/webScriptObject-exception-deadlock.html
3451
3452         * bindings/objc/WebScriptObject.mm:
3453         (-[WebScriptObject valueForKey:]): The line `resultObj = [super valueForKey:key];    // defaults to throwing an exception` 
3454           says it all - it throws an exception.  This method also happens to hold the JSLock.  Problematically, when the exeception
3455           is thrown and the method exited, the JSLock is never released.  Fix that without otherwise changing behavior by holding the 
3456           JSLock in two individual scopes - Right before the exception and right after.  
3457
3458 2008-02-18  Darin Adler  <darin@apple.com>
3459
3460         Reviewed by Sam.
3461
3462         - reduce use of DeprecatedString and memory allocations in processing of CSS
3463         - remove unnecessary double -> float -> double trip in the CSS parser
3464         - cleaned up names and structure in CSS grammar
3465
3466         * css/CSSGrammar.y: Remove getPropertyID and getValueID. Both are now in CSSParser.cpp
3467         instead, and they now work on ParseString and String objects and don't require the caller
3468         to put the string into a char*. Gave members of the %union more sensible names, removed
3469         duplicates, and sorted into a logical order. Put the %expect back in, rather than leaving
3470         it commented out.
3471         * css/CSSParser.cpp:
3472         (WebCore::equalIgnoringCase): Added.
3473         (WebCore::hasPrefix): Added.
3474         (WebCore::CSSParser::parseTransitionProperty): Changed to call the new cssPropertyID,
3475         which obviates the need to call lower() and utf8() or to allocate memory at all. Also
3476         used equalIgnoringCase rather than putting the value into a String just to compare it.
3477         (WebCore::CSSParser::lex): Replaced convertASCIIToFloat with charactersToDouble. This change
3478         along with the CSSGrammar.y change, removes the double -> float -> double round trip, and
3479         affects the result of one layout test.
3480         (WebCore::cssPropertyID): Added. Gets the property ID from the gperf hash table, but
3481         without allocating any memory.
3482         (WebCore::cssValueKeywordID): Ditto.
3483         * css/CSSParser.h: Removed declaration for deprecatedString function (now used only in
3484         CSSParser.cpp; soon to be deleted). Added cssPropertyID and cssValueKeywordID functions.
3485
3486         * css/CSSStyleDeclaration.cpp:
3487         (WebCore::CSSStyleDeclaration::getPropertyCSSValue): Call cssPropertyID instead of propertyID.
3488         (WebCore::CSSStyleDeclaration::getPropertyValue): Ditto.
3489         (WebCore::CSSStyleDeclaration::getPropertyPriority): Ditto.
3490         (WebCore::CSSStyleDeclaration::getPropertyShorthand): Ditto.
3491         (WebCore::CSSStyleDeclaration::isPropertyImplicit): Ditto.
3492         (WebCore::CSSStyleDeclaration::setProperty): Ditto.
3493         (WebCore::CSSStyleDeclaration::removeProperty): Ditto.
3494         (WebCore::CSSStyleDeclaration::isPropertyName): Ditto.
3495         * css/CSSStyleDeclaration.h: Removed unnecessary includes, unnecessary Noncopyable boilerplate,
3496         and the getPropertyID function declaration along with its associated apology comment.
3497
3498         * css/makevalues.pl: Generate constants instead of macros for CSS value numbers (but not an
3499         enumeration, like properties, since you rarely have any reason to handle all values, but
3500         often have a reason to handle all properties). Renamed the constant for the number of CSS
3501         value keywords from CSS_VAL_TOTAL to numCSSValueKeywords, and added maxCSSValueKeywordLength.
3502
3503         * platform/text/String.cpp:
3504         (WebCore::charactersToDouble): Made this function more efficient by using a stack buffer
3505         rather than a CString.
3506
3507 2008-02-18  Dan Bernstein  <mitz@apple.com>
3508
3509         Reviewed by Dave Hyatt.
3510
3511         - fix <rdar://problem/5736225> crash in svgFontAndFaceElementForFontData on digitalstrom.org/cms
3512
3513         Test: fast/css/font-face-multiple-remote-sources.html
3514
3515         * css/CSSFontFace.cpp:
3516         (WebCore::CSSFontFace::fontLoaded):
3517         * css/CSSSegmentedFontFace.cpp:
3518         (WebCore::CSSSegmentedFontFace::fontLoaded):
3519
3520 2008-02-18  Darin Adler  <darin@apple.com>
3521
3522         Reviewed by Sam.
3523
3524         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
3525         (WebCore::hasCSSPropertyNamePrefix): Added.
3526         (WebCore::cssPropertyName): Reimplement to not use DeprecatedString. Also made faster
3527         by using a Vector<UChar> and eliminating all the string operations.
3528
3529 2008-02-18  Stephanie Lewis  <slewis@apple.com>
3530
3531         Reviewed by Adam.
3532
3533         Remove workaround for <rdar://problem/5695848>.
3534         
3535         * platform/network/cf/ResourceResponseCFNet.cpp:
3536         (WebCore::ResourceResponse::doUpdateResourceResponse):
3537
3538 2008-02-18  Samuel Weinig  <sam@webkit.org>
3539
3540         Reviewed by Geoff Garen.
3541
3542         Fix for http://bugs.webkit.org/show_bug.cgi?id=17419
3543         Remove CompatMode from JavaScriptCore as it is never set to anything other than NativeMode
3544
3545         * bindings/js/kjs_proxy.cpp:
3546         (WebCore::KJSProxy::initScript):
3547
3548 2008-02-18  Alp Toker  <alp@atoker.com>
3549
3550         Reviewed by Mark Rowe.
3551
3552         http://bugs.webkit.org/show_bug.cgi?id=17381
3553         [CURL] Regression: data URL parsing broken after DeprecatedString removal (Acid2)
3554
3555         This patch resolves the regression for the GTK+ port.
3556
3557         * platform/network/curl/ResourceHandleManager.cpp:
3558         (WebCore::parseDataUrl):
3559
3560 2008-02-18  Darin Adler  <darin@apple.com>
3561
3562         Reviewed by Sam.
3563
3564         * platform/network/win/ResourceHandleWin.cpp:
3565         (WebCore::ResourceHandle::onHandleCreated): Use String instead of DeprecatedString.
3566         (WebCore::ResourceHandle::start): Ditto.
3567
3568 2008-02-18  Darin Adler  <darin@apple.com>
3569
3570         Reviewed by Sam.
3571
3572         * platform/network/win/CookieJarWin.cpp:
3573         (WebCore::setCookies): Use String instead of DeprecatedString.
3574         (WebCore::cookies): Ditto.
3575
3576 2008-02-18  Darin Adler  <darin@apple.com>
3577
3578         Reviewed by Sam.
3579
3580         - removed use of DeprecatedString in the Color class