Kyle Huey
9de7b7f765
Bug 795128: Add memory reporting for attribute maps and nodes. r=smaug
2012-09-30 09:43:47 -07:00
Kyle Huey
e5eb83ac5a
Bug 760331: Coalesce data for inline style across nodes. r=bz
...
This patch enables sharing of an nsAttrValue's MiscContainer between nodes for style rules. MiscContainers of type eCSSStyleRule are now refcounted (with some clever struct packing to ensure that the amount of memory allocated for MiscContainer remains unchanged on 32 and 64 bit). This infrastructure can be used to share most MiscContainer types in the future if we find advantages to sharing other types than just eCSSStyleRuley. A cache mapping strings to MiscContainers has been added to nsHTMLCSSStyleSheet. MiscContainers can be shared between nsAttrValues when one nsAttrValue is SetTo another nsAttrValue or when there is a cache hit in this cache. This patch also adds the ability to tell a style rule that it belongs to an nsHTMLCSSStyleSheet, with appropriate accessor functions to separate that from the existing case of belonging to an nsCSSStyleSheet.
The primary use case is to reduce memory use for pages that have lots of inline style attributes with the same value. This can happen easily with large pages that are automatically generated. An (admittedly pathological) testcase in Bug 686975 sees over 250 MB of memory savings with this change. Reusing the same MiscContainer for multiple nodes saves the overhead of maintaining separate copies of the string containing the serialized value of the style attribute and of creating separate style rules for each node. Eliminating duplicate style rules enables further savings in layout through style context sharing. The testcase sees the amount of memory used by style contexts go from over 250 MB to 10 KB.
Because the cache is based on the text value of the style attribute, it will not handle attributes that have different text values but are parsed into identical style rules. We also do not attempt to share MiscContainers when the node's base URI differs from the document URI. The effect of these limitations is expected to be low.
2012-09-30 09:40:24 -07:00
Mounir Lamouri
2cc12c0525
Bug 795136 - 1/2 - Add events notifying the window if upload/download happen on the system. r=smaug sr=sicking
2012-09-30 14:47:48 +01:00
Simon Montagu
a6d148a96d
Add vendor prefix to :dir selector. Bug 562169, r=dbaron
2012-09-29 13:41:10 -07:00
Phil Ringnalda
8aa24b1c1a
Merge last PGO-green changeset of mozilla-inbound to mozilla-central
2012-09-28 22:06:29 -07:00
Ed Morley
2d7f6e3528
Merge last PGO-green changeset of mozilla-inbound to mozilla-central
2012-09-29 00:08:58 +01:00
Olli Pettay
28eedfbe35
Bug 794694 - Make sure to trace all the gray GCthings, not only wrapper, r=mccr8
2012-09-29 01:29:37 +03:00
Isaac Aggrey
e496b51126
Bug 795351: Replace LL_MAXINT, LL_MININT, LL_MAXUINT with stdint versions; r=ehsan
2012-09-28 14:55:23 -05:00
Isaac Aggrey
997db4d142
Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan
2012-09-28 01:57:33 -05:00
Olli Pettay
0b22258827
Bug 794623 - Fewer virtual GetTargetForEventTargetChain calls, r=jst
...
--HG--
extra : rebase_source : db5b18e28b2ed362e0761370b21ef74e6231a476
2012-09-28 02:15:29 +03:00
Philipp von Weitershausen
611ab85c83
Bug 777508 - Notify parent if child processes are terminated through message manager. r=cjones
2012-09-27 22:43:24 -07:00
Philipp von Weitershausen
213e5bb81b
Bug 776832 - Add a scriptable API to assert app permissions through messagemanager. r=smaug
2012-09-27 22:43:12 -07:00
Ed Morley
ce41594120
Merge mozilla-central to mozilla-inbound
2012-09-28 16:01:22 +01:00
Ed Morley
9afe80f95c
Backout 52be204da1cf (bug 776663), 965397b043c0 (bug 777508), 182c763efa68 (bug 776832), a2a509184b07 & cba5ba69091f (bug 789973) for failures in test_child_process_shutdown_message.html and friends / conflicting with the backout on a CLOSED TREE
2012-09-28 14:08:04 +01:00
Philipp von Weitershausen
fa0bd2ad31
Bug 795061 - AssertAppProcessPermission: Kill any process that doesn't have the specified permission, not just app processes. r=cjones
2012-09-28 10:29:36 -07:00
Ed Morley
c863356300
Revert mozilla-inbound to e4dd1fa6d222 for crashes and test failures on a CLOSED TREE
2012-09-27 16:34:46 +01:00
Matt Woodrow
958ce7d98d
Bug 539356 - Part 9c - Remove old invalidation code. r=bz
2012-08-29 17:39:31 +12:00
Matt Woodrow
c73c0db2f1
Bug 539356 - Part 9 - Implement DLBI. r=roc,bz,jwatt
2012-08-29 17:38:58 +12:00
Masatoshi Kimura
4a9395eb5d
Bug 764234 - Implement StringEncoding API. r=dougt,smontagu
2012-09-28 11:19:18 +01:00
Philipp von Weitershausen
b2b0343f76
Bug 777508 - Notify parent if child processes are terminated through message manager. r=cjones
2012-09-27 22:43:24 -07:00
Philipp von Weitershausen
ce02d379ee
Bug 776832 - Add a scriptable API to assert app permissions through messagemanager. r=smaug
2012-09-27 22:43:12 -07:00
Phil Ringnalda
e587aae42c
Back out b24a73b2c617 for Windows build bustage and test_xhr_timeout.html failure
2012-09-27 21:24:42 -07:00
Andrea Marchesini
7f0785e84a
Bug 720083 - Workers: add support for transferable objects from HTML5 spec. r=sphink, r=bent
2012-09-27 23:05:59 -04:00
Aryeh Gregor
becd9525e8
Bug 779809 part 2 - Don't safe-forward [notxpcom] methods; r=khuey,bz
2012-08-09 11:33:38 +03:00
Paul Adenot
f7164ff403
Bug 730765 - Remove a copy of nsBlobProtocolHandler.h. r=khuey
2012-09-25 16:23:32 -07:00
Terrence Cole
68f1a7379e
Bug 791322 - Move Rooted to js:: namespace; r=billm
...
These should not be part of the public API.
--HG--
extra : rebase_source : 00a69ee54f06e3f557cd9ec2f3b059df10aa32df
2012-09-24 18:08:22 -07:00
Alexandre Dumont
d7aab8168c
Bug 596753: Flatten layout/svg/base/src into layout/svg. r=dholbert
...
--HG--
rename : layout/svg/base/src/Makefile.in => layout/svg/Makefile.in
rename : layout/svg/base/src/SVGFEContainerFrame.cpp => layout/svg/SVGFEContainerFrame.cpp
rename : layout/svg/base/src/SVGFEImageFrame.cpp => layout/svg/SVGFEImageFrame.cpp
rename : layout/svg/base/src/SVGFELeafFrame.cpp => layout/svg/SVGFELeafFrame.cpp
rename : layout/svg/base/src/SVGFEUnstyledLeafFrame.cpp => layout/svg/SVGFEUnstyledLeafFrame.cpp
rename : layout/svg/base/src/SVGViewFrame.cpp => layout/svg/SVGViewFrame.cpp
rename : layout/svg/base/src/nsISVGChildFrame.h => layout/svg/nsISVGChildFrame.h
rename : layout/svg/base/src/nsISVGGlyphFragmentNode.h => layout/svg/nsISVGGlyphFragmentNode.h
rename : layout/svg/base/src/nsISVGSVGFrame.h => layout/svg/nsISVGSVGFrame.h
rename : layout/svg/base/src/nsSVGAFrame.cpp => layout/svg/nsSVGAFrame.cpp
rename : layout/svg/base/src/nsSVGClipPathFrame.cpp => layout/svg/nsSVGClipPathFrame.cpp
rename : layout/svg/base/src/nsSVGClipPathFrame.h => layout/svg/nsSVGClipPathFrame.h
rename : layout/svg/base/src/nsSVGContainerFrame.cpp => layout/svg/nsSVGContainerFrame.cpp
rename : layout/svg/base/src/nsSVGContainerFrame.h => layout/svg/nsSVGContainerFrame.h
rename : layout/svg/base/src/nsSVGEffects.cpp => layout/svg/nsSVGEffects.cpp
rename : layout/svg/base/src/nsSVGEffects.h => layout/svg/nsSVGEffects.h
rename : layout/svg/base/src/nsSVGFilterFrame.cpp => layout/svg/nsSVGFilterFrame.cpp
rename : layout/svg/base/src/nsSVGFilterFrame.h => layout/svg/nsSVGFilterFrame.h
rename : layout/svg/base/src/nsSVGFilterInstance.cpp => layout/svg/nsSVGFilterInstance.cpp
rename : layout/svg/base/src/nsSVGFilterInstance.h => layout/svg/nsSVGFilterInstance.h
rename : layout/svg/base/src/nsSVGFilterPaintCallback.h => layout/svg/nsSVGFilterPaintCallback.h
rename : layout/svg/base/src/nsSVGForeignObjectFrame.cpp => layout/svg/nsSVGForeignObjectFrame.cpp
rename : layout/svg/base/src/nsSVGForeignObjectFrame.h => layout/svg/nsSVGForeignObjectFrame.h
rename : layout/svg/base/src/nsSVGGFrame.cpp => layout/svg/nsSVGGFrame.cpp
rename : layout/svg/base/src/nsSVGGFrame.h => layout/svg/nsSVGGFrame.h
rename : layout/svg/base/src/nsSVGGenericContainerFrame.cpp => layout/svg/nsSVGGenericContainerFrame.cpp
rename : layout/svg/base/src/nsSVGGenericContainerFrame.h => layout/svg/nsSVGGenericContainerFrame.h
rename : layout/svg/base/src/nsSVGGeometryFrame.cpp => layout/svg/nsSVGGeometryFrame.cpp
rename : layout/svg/base/src/nsSVGGeometryFrame.h => layout/svg/nsSVGGeometryFrame.h
rename : layout/svg/base/src/nsSVGGlyphFrame.cpp => layout/svg/nsSVGGlyphFrame.cpp
rename : layout/svg/base/src/nsSVGGlyphFrame.h => layout/svg/nsSVGGlyphFrame.h
rename : layout/svg/base/src/nsSVGGradientFrame.cpp => layout/svg/nsSVGGradientFrame.cpp
rename : layout/svg/base/src/nsSVGGradientFrame.h => layout/svg/nsSVGGradientFrame.h
rename : layout/svg/base/src/nsSVGImageFrame.cpp => layout/svg/nsSVGImageFrame.cpp
rename : layout/svg/base/src/nsSVGInnerSVGFrame.cpp => layout/svg/nsSVGInnerSVGFrame.cpp
rename : layout/svg/base/src/nsSVGInnerSVGFrame.h => layout/svg/nsSVGInnerSVGFrame.h
rename : layout/svg/base/src/nsSVGIntegrationUtils.cpp => layout/svg/nsSVGIntegrationUtils.cpp
rename : layout/svg/base/src/nsSVGIntegrationUtils.h => layout/svg/nsSVGIntegrationUtils.h
rename : layout/svg/base/src/nsSVGMarkerFrame.cpp => layout/svg/nsSVGMarkerFrame.cpp
rename : layout/svg/base/src/nsSVGMarkerFrame.h => layout/svg/nsSVGMarkerFrame.h
rename : layout/svg/base/src/nsSVGMaskFrame.cpp => layout/svg/nsSVGMaskFrame.cpp
rename : layout/svg/base/src/nsSVGMaskFrame.h => layout/svg/nsSVGMaskFrame.h
rename : layout/svg/base/src/nsSVGOuterSVGFrame.cpp => layout/svg/nsSVGOuterSVGFrame.cpp
rename : layout/svg/base/src/nsSVGOuterSVGFrame.h => layout/svg/nsSVGOuterSVGFrame.h
rename : layout/svg/base/src/nsSVGPaintServerFrame.cpp => layout/svg/nsSVGPaintServerFrame.cpp
rename : layout/svg/base/src/nsSVGPaintServerFrame.h => layout/svg/nsSVGPaintServerFrame.h
rename : layout/svg/base/src/nsSVGPathGeometryFrame.cpp => layout/svg/nsSVGPathGeometryFrame.cpp
rename : layout/svg/base/src/nsSVGPathGeometryFrame.h => layout/svg/nsSVGPathGeometryFrame.h
rename : layout/svg/base/src/nsSVGPatternFrame.cpp => layout/svg/nsSVGPatternFrame.cpp
rename : layout/svg/base/src/nsSVGPatternFrame.h => layout/svg/nsSVGPatternFrame.h
rename : layout/svg/base/src/nsSVGStopFrame.cpp => layout/svg/nsSVGStopFrame.cpp
rename : layout/svg/base/src/nsSVGSwitchFrame.cpp => layout/svg/nsSVGSwitchFrame.cpp
rename : layout/svg/base/src/nsSVGTSpanFrame.cpp => layout/svg/nsSVGTSpanFrame.cpp
rename : layout/svg/base/src/nsSVGTSpanFrame.h => layout/svg/nsSVGTSpanFrame.h
rename : layout/svg/base/src/nsSVGTextContainerFrame.cpp => layout/svg/nsSVGTextContainerFrame.cpp
rename : layout/svg/base/src/nsSVGTextContainerFrame.h => layout/svg/nsSVGTextContainerFrame.h
rename : layout/svg/base/src/nsSVGTextFrame.cpp => layout/svg/nsSVGTextFrame.cpp
rename : layout/svg/base/src/nsSVGTextFrame.h => layout/svg/nsSVGTextFrame.h
rename : layout/svg/base/src/nsSVGTextPathFrame.cpp => layout/svg/nsSVGTextPathFrame.cpp
rename : layout/svg/base/src/nsSVGTextPathFrame.h => layout/svg/nsSVGTextPathFrame.h
rename : layout/svg/base/src/nsSVGUseFrame.cpp => layout/svg/nsSVGUseFrame.cpp
rename : layout/svg/base/src/nsSVGUtils.cpp => layout/svg/nsSVGUtils.cpp
rename : layout/svg/base/src/nsSVGUtils.h => layout/svg/nsSVGUtils.h
rename : layout/svg/base/src/resources/content/svgBindings.xml => layout/svg/resources/content/svgBindings.xml
rename : layout/svg/base/src/svg.css => layout/svg/svg.css
2012-09-24 23:01:21 +02:00
Ed Morley
36027dea2c
Backout be95f234ff6e (bug 776832) for various mochitest-1 failures
2012-09-26 10:31:19 +01:00
Philipp von Weitershausen
0154a7b0b8
Bug 776832 - Add a scriptable API to assert app permissions of apps through messagemanager. r=smaug
2012-09-26 00:41:51 -07:00
Sid Stamm
59b413b8c8
Bug 768029 - Apply CSP Policy to trusted and certified apps. Temporarily using a overly permissive policy for certified apps until Gaia is updated to handle the desired policy. r=sicking Parts by sicking, r=mounir
2012-09-25 16:28:17 -07:00
Fabrice Desré
43f63c647e
Backout Bug 768029 because that breaks Gaia (see https://github.com/mozilla-b2g/gaia/issues/5177 )
2012-09-25 15:32:20 -07:00
Sid Stamm
e00d2f38e0
bug 768029 - Apply CSP Policy to trusted and certified apps. r=sicking. Parts by sicking, r=mounir.
2012-08-02 12:13:53 -07:00
Antonio Manuel Amaya Calvo
8dfda6c87c
Bug 773886: Prevent loading resources from app:// URIs from outside that app. r=sicking
2012-09-25 12:33:01 -07:00
Fernando Rodríguez Sela
475246df32
Bug 744700 - B2G 3G: Notify connection errors in the WebMobileConnection API (part 2), r=philikon
2012-09-25 12:22:38 -07:00
Tanvi Vyas
9a52450250
Bug 792101 - security.mixed_content.block_active_content causes crash in nsMixedContentBlocker::ShouldLoad (r=smaug)
2012-09-25 10:51:51 -07:00
Honza Bambas
41c12a706a
Bug 756717 - Implement 'appcache jar' for apps, r=tlee+jduell
2012-07-31 02:36:00 -04:00
Henri Sivonen
9bc15d1691
Test for bug 750096 - Make sure nsIParserUtils::parseFragment does not dereference <embed src=javascript:...>. r=bzbarsky.
2012-09-25 10:29:23 +03:00
Phil Ringnalda
a74c209e3e
Back out 8bd13443d0bc (bug 579517) to get a clean backout
...
--HG--
extra : rebase_source : 63c8087f0a6de5adeddb8762ff9e410b2b818e22
2012-09-24 21:21:10 -07:00
Ehsan Akhgari
2f19f537bf
Bug 579517 follow-up: Remove NSPR types that crept in
2012-09-24 17:55:10 -04:00
Bobby Holley
9f03f90fb7
Bug 792036 - Automated fixups. r=mccr8
...
find /files/mozilla/build/d/_tests/testing/mochitest/tests/ | egrep "\.(xhtml|html|xml|js)$" | grep -v SimpleTest | grep -vi mochikit | grep -v simpleThread | grep -v test_ipc_messagemanager_blob.html | grep -v "indexedDB/test" | xargs grep -l Components | xargs grep -L enablePrivilege | perl -pe 's#.*mochitest/tests/##' | xargs perl -p -i.bakkk -e 's/Components\.interfaces(\s|;|\.|\[)/SpecialPowers\.Ci$1/g, s/SpecialPowers\.wrap\(Components\)\.(.)(lasses|tils|nterfaces|esults)/SpecialPowers.C$1/g, s/(?<![\.a-zA-Z])Components/SpecialPowers\.Components/g, s/window\.Components/window\.SpecialPowers\.Components/g'
2012-09-24 14:46:29 +02:00
Bobby Holley
7f912ddc79
Bug 792036 - Fix up tests to avoid relying on the existence of window.Components (MANUAL). r=mccr8
...
These are the manual fixes that the ensuing auto-generation can't deal with. Some of them
just fix up formatting (such as Components.\nFoo, so that subsequent auto-generation can
work better).
2012-09-24 14:46:28 +02:00
Boris Zbarsky
e755953b68
Bug 793196. Speed up hasAttribute string munging of the attr name. r=sicking
2012-09-22 22:04:54 -04:00
Diogo Golovanevsky Monteiro
4637fae255
Bug 784402 - Pointer Lock must respect iframe sandbox flag. r=smaug
2012-09-22 20:56:55 -04:00
Jim Mathies
efdf204165
Bug 726615 - Completely remove MozTouch event support from mc. r=smaug
2012-09-22 14:28:08 -05:00
Ms2ger
30e928961e
Bug 783878 - Followup: s/uint64/uint64_t/.
2012-09-22 18:40:28 +02:00
Josh Matthews
566e597159
Bug 783878 - Part 1: Make nsXMLHttpRequest aware of the length of uploads. r=sicking
2012-09-19 18:15:32 -04:00
Matt Brubeck
03785bab72
Bug 716575 (4/4) - Tests for GetViewportInfo [r=dbaron]
2012-09-10 18:53:24 -07:00
Matt Brubeck
8fb68b79fb
Bug 716575 (3/4) - Move viewport pixel ratio calculations into the platform [r=dbaron,jwir3,mfinkle,roc]
2012-08-22 13:18:10 -07:00
Matt Brubeck
24c6d5e17e
Bug 716575 (1/4) - Add a scriptable interface to GetViewportInfo [r=dbaron]
2012-08-22 13:17:20 -07:00
Ray Cheung
800d34a6c9
Bug 779500 - WebFM, r=jlebar,glandium sr=jonas
2012-09-19 11:23:33 -04:00