Граф коммитов

4128 Коммитов

Автор SHA1 Сообщение Дата
Andrea Marchesini b5118e1ddf Bug 1302449 - Remove the "referrer" directive in CSP, r=ckerschb 2018-05-09 13:15:08 +02:00
Chris Peterson 71422dcaa9 Bug 1457813 - Part 2: Replace non-asserting NS_PRECONDITIONs with MOZ_ASSERTs. r=froydnj
s/NS_PRECONDITION/MOZ_ASSERT/ and reindent

MozReview-Commit-ID: KuUsnVe2h8L

--HG--
extra : source : c14655ab3df2c9b1465dd8102b9d25683359a37b
2018-04-28 12:50:58 -07:00
Boris Zbarsky 6bf97b61c0 Bug 1455674 part 13. Remove remaining xpidl uses of nsIDOMElement. r=qdot 2018-04-26 23:37:29 -04:00
Emilio Cobos Álvarez a00f507b72 Bug 1456435: Make UpdateStyleSheet less bool-happy. r=heycam
MozReview-Commit-ID: FlTD390lMhg
2018-04-26 16:43:52 +02:00
Adrian Wielgosik b3c501adc4 Bug 1447389 - Remove nsIDOMNodeList. r=bz
MozReview-Commit-ID: 11szZP6dS6V

--HG--
extra : rebase_source : 9acfb352750e53d3b36684fa945a18e817c9b82e
2018-04-25 23:01:30 +02:00
Emilio Cobos Álvarez d8e55e4596 Bug 1454236: Remove nsINode::eDOCUMENT_FRAGMENT. r=bz
MozReview-Commit-ID: D2F3LbQ1pvw
2018-04-20 01:30:12 +02:00
Boris Zbarsky a517e45add Bug 1452183 part 4. Remove nsIDOMDocumentFragment. r=mccr8 2018-04-17 21:13:03 -04:00
Boris Zbarsky 38ecaf4bb7 Bug 1452183 part 3. Stop using nsIDOMDocumentFragment in C++. r=mccr8 2018-04-17 21:13:03 -04:00
Boris Zbarsky d49151ed50 Bug 1452183 part 1. Stop using nsIDOMDocumentFragment in IDL files. r=mccr8 2018-04-17 21:13:03 -04:00
Sebastian Hengst 0819f35e51 Backed out 4 changesets (bug 525063) on request from Andi. a=backout
Backed out changeset 516c4fb1e4b8 (bug 525063)
Backed out changeset 6ff8aaef2866 (bug 525063)
Backed out changeset bf13e4103150 (bug 525063)
Backed out changeset d7d2f08e051c (bug 525063)
2018-04-13 16:01:28 +03:00
Tristan Bourvon a3a77c0312 Bug 525063 - Initialize uninitialized class attributes in m-c. r=ehsan 2018-04-10 21:11:02 +02:00
Sylvestre Ledru 01abd7ce40 Bug 1447480 - Add a MOZ_ASSERT to make it clear that it can never fall through r=hsivonen
MozReview-Commit-ID: Hq9jG1CVwRK

--HG--
extra : rebase_source : 4c548c1ad0c74b2c810b435701b91bd4f7893cb1
2018-04-03 13:40:59 +02:00
Masatoshi Kimura c1aa340b7e Bug 1445541 - Enable the character encoding menu when the document is decoded as UTF-8 and an error is found, instead of disabling it when no errors are found. r=hsivonen
MozReview-Commit-ID: 1e6kQbAxcqm

--HG--
extra : rebase_source : 4c26e97255b4213b2f60855d8c9abc26fe812fa9
2018-04-06 06:20:28 +09:00
Tiberius Oros 1d7575065c Backed out 2 changesets (bug 1447480) for build bustages at dist/include/mozilla/Assertions.h:60 a=backout on a CLOSED TREE
Backed out changeset 5dfbd42ce515 (bug 1447480)
Backed out changeset a454ed4489f2 (bug 1447480)
2018-04-05 13:36:46 +03:00
Sylvestre Ledru 599ea080ac Bug 1447480 - Add a MOZ_ASSERT to make it clear that it can never fall through r=hsivonen
MozReview-Commit-ID: Hq9jG1CVwRK

--HG--
extra : rebase_source : 4c548c1ad0c74b2c810b435701b91bd4f7893cb1
2018-04-03 13:40:59 +02:00
Margareta Eliza Balazs a06f511cc5 Backed out changeset fa109105e4ea (bug 1447480) for B failures in /build/build/src/parser/html/nsHtml5TreeBuilder.cpp(402) on a CLOSED TREE 2018-04-04 16:05:06 +03:00
Sylvestre Ledru 40fe59d2a8 Bug 1447480 - Add a MOZ_ASSERT to make it clear that it can never fall through r=hsivonen
MozReview-Commit-ID: Hq9jG1CVwRK

--HG--
extra : rebase_source : 4c548c1ad0c74b2c810b435701b91bd4f7893cb1
2018-04-03 13:40:59 +02:00
Nicholas Nethercote 4b941e22d0 Bug 1449395 - Remove unnecessary nsStaticAtom.h includes. r=froydnj
For nsCSSAnonBoxes.cpp, nsCSSPseudoElements.cpp, nsDirectoryService.cpp, the
corresponding .h file includes nsStaticAtom.h. For the other files in this
patch, nsStaticAtom.h is not needed at all.

MozReview-Commit-ID: IpMmbXwZHhu

--HG--
extra : rebase_source : 46d0a6b40a41ee233adad7c205cf907fa27de34a
2018-03-29 09:08:54 +11:00
Nicholas Nethercote 1ab829482c Bug 1449064 (attempt 2) - Convert view_source.editor.external to a StaticPref. r=hsivonen
MozReview-Commit-ID: AxssCop2WH
2018-03-29 15:29:00 +11:00
Gurzau Raul 1eff9c341d Backed out changeset 614181fad27a (bug 1449064) for assertion failures on workspace/build/src/modules/libpref/Preferences.cpp 2018-03-29 05:59:44 +03:00
Nicholas Nethercote 941243b466 Bug 1449064 - Convert view_source.editor.external to a StaticPref. r=hsivonen
MozReview-Commit-ID: EKVI5KAtXdJ

--HG--
extra : rebase_source : 070d5651758c9173e3d9c3c4bfbbc3d797d16c3c
2018-03-27 12:04:02 +11:00
Nicholas Nethercote 085f110fa2 Bug 1449064 - Convert html.* prefs to StaticPrefs. r=hsivonen
MozReview-Commit-ID: 7sBOuzBJ1Pa

--HG--
extra : rebase_source : 5f2f64e889cae4be66e9c408b07385f68c972e9c
2018-03-27 11:59:48 +11:00
Boris Zbarsky cd4761ffdb Bug 1449404 part 2. Get rid of nsIContent::AppendText. r=mccr8 2018-03-28 18:01:46 -04:00
Boris Zbarsky 9bdcd1eca8 Bug 1444872. Remove support for the 'type' parameter to document.open. r=qdot 2018-03-28 18:01:46 -04:00
Tom Ritter 449237fc51 Bug 1378552 - Reduce the liklihood of inadvertently misusing NullPrincipal::Create(). r=ckerschb
NullPrincipal::Create() (will null OA) may cause an OriginAttributes bypass.
We change Create() so OriginAttributes is no longer optional, and rename
Create() with no arguments to make it more explicit about what the caller is doing.

MozReview-Commit-ID: 7DQGlgh1tgJ
2018-03-22 13:36:20 -05:00
Tom Ritter e5134dc41c Bug 1448010 Remove unused nsSAXXML IDL methods r=Gijs
MozReview-Commit-ID: GFdx6Sjuq36

--HG--
extra : rebase_source : fa1061c2df67e4eaa8e01bf18ac87fe38ef79dd3
2018-03-21 11:52:57 -05:00
Nicholas Nethercote bac452f9ad Bug 1411469 - Statically allocate static atoms. r=froydnj
Currently static atoms are stored on the heap, but their char buffers are
stored in read-only static memory.

This patch changes the representation of nsStaticAtom (thus making it a
non-trivial subclass of nsAtom). Instead of a pointer to the string, it now has
an mStringOffset field which is a 32-bit offset to the string. (This requires
placement of the string and the atom within the same object so that the offset
is known to be small. The docs and macros in nsStaticAtom.h handle that.)

Static and dynamic atoms now store their chars in different ways: nsStaticAtom
stores them inline, nsDynamicAtom has a pointer to separate storage. So
`mString` and GetStringBuffer() move from nsAtom to nsDynamicAtom.

The change to static atoms means they can be made constexpr and stored in
read-only memory instead of on the heap. On 64-bit this reduces the per-process
overhead by 16 bytes; on 32-bit the saving is 12 bytes. (Further reductions
will be possible in follow-up patches.)

The increased use of constexpr required multiple workarounds for MSVC.
- Multiple uses of MOZ_{PUSH,POP}_DISABLE_INTEGRAL_CONSTANT_OVERFLOW_WARNING to
  disable warnings about (well-defined!) overflow of unsigned integer
  arithmetic.
- The use of -Zc:externConstexpr on all files defining static atoms, to make
  MSVC follow the C++ standard(!) and let constexpr variables have external
  linkage.
- The use of -constexpr:steps300000 to increase the number of operations
  allowed in a constexpr value, in order to handle gGkAtoms, which requires
  hashing ~2,500 atom strings.

The patch also changes how HTML5 atoms are handled. They are now treated as
dynamic atoms, i.e. we have "dynamic normal" atoms and "dynamic HTML5 atoms",
and "dynamic atoms" covers both cases, and both are represented via
nsDynamicAtom. The main difference between the two kinds is that dynamic HTML5
atoms still aren't allowed to be used in various operations, most notably
AddRef()/Release(). All this also required moving nsDynamicAtom into the header
file.

There is a slight performance cost to all these changes: now that nsStaticAtom
and nsDynamicAtom store their chars in different ways, a conditional branch is
required in the following functions: Equals(), GetUTF16String(),
WeakAtom::as_slice().

Finally, in about:memory the "explicit/atoms/static/atom-objects" value is no
longer needed, because that memory is static instead of heap-allocated.

MozReview-Commit-ID: 4AxPv05ngZy
2018-03-26 11:18:31 +02:00
Boris Zbarsky 29d232e53f Bug 1447098 part 1. Rename FromContent on various DOM classes to FromNode. r=mystor
MozReview-Commit-ID: 202nkbmkwfR
2018-03-21 17:39:04 -04:00
Miko Mynttinen 65c6bee9d6 Bug 1445302 - Replace TArray.RemoveElementAt(TArray.Length() - 1) pattern with TArray.RemoveLastElement() or TArray.PopLastElement() r=froydnj
MozReview-Commit-ID: rGjabnP2iz

--HG--
extra : rebase_source : 1ef6c5ce028ac9ebd9f3176d57835c43fe46bada
2018-03-13 14:51:33 +01:00
Tooru Fujisawa 1adba8c1fc Bug 1442465 - Part 4.2: Stop unnecessarily awaiting on BrowserTestUtils.removeTab (simple part). r=dao 2018-03-19 11:16:45 +09:00
Boris Zbarsky 4e402f9b99 Bug 1445983. <bdi> should be an HTMLElement, not HTMLUnknownElement. r=hsivonen
MozReview-Commit-ID: 9eJ45uXRDfR
2018-03-16 11:26:09 -04:00
Boris Zbarsky 46fc331568 Bug 1446097. Switch to "set" as the canonical nsGkAtoms name of the string "set", so it matches the actual tag name "set" in SVG. r=hsivonen,njn
Most of the noise is from the fact that clang-format on parser/html/*.{h,cpp}
reformatted all sorts of stuff.  Not running it caused lots of format changes
from the generator... I guess we changed the format rules since the last time
this got run?

MozReview-Commit-ID: IA2G87zUIKN
2018-03-16 11:26:06 -04:00
Adrian Wielgosik 43a3ada8a9 Bug 1418077 - Remove nsIDOMHTMLFormElement. r=bz
MozReview-Commit-ID: 9eQxvfIMB22

--HG--
extra : rebase_source : f75e043da542b567e31d15db25791c738b275a09
2018-03-14 21:42:25 +01:00
Nicholas Nethercote 991955fad8 Bug 1445079 - Remove nsHTMLTags::sTagAtomTable[]. r=froydnj
The atoms in nsHTMLTags are a subset of nsGkAtoms, which means that
sTagAtomTable[] currently ends up holding duplicate pointers to the same static
atoms.

This patch removes sTagAtomTable[]. The only place that used sTagAtomTable[]
was nsHTMLTags::AddRefTable(). It now instead calls NS_GetStaticAtom() to get
the static atoms registered by nsGkAtoms.

The patch also moves some checking of sTagNames from RegisterAtoms() (which is
removed) to AddRefTable().

All this reduces the number of duplicate static atoms from 148 to 12.

MozReview-Commit-ID: 14qXYeoorFr
* * *
[mq]: foo

MozReview-Commit-ID: AgQbXlcvWrt
2018-03-14 09:56:14 +11:00
Nicholas Nethercote d967055f0b Bug 1445079 - Rename nsHTMLTags::sTagUnicodeTable[] as sTagNames[]. r=froydnj
It's just an array of names, not a hash table.

MozReview-Commit-ID: 3rWNNec64UJ
2018-03-14 09:54:43 +11:00
Boris Zbarsky 633cf0f02a Bug 1445140 part 1. Remove the XPCOM-ish version of NS_NewDOMDocumentType. r=mystor
MozReview-Commit-ID: 6sEFIfMgqet
2018-03-13 16:24:01 -04:00
Nicholas Nethercote 8ac9830be0 Bug 1444031 - Rename Is{Static,Dynamic,HTML5}Atom. r=froydnj
By removing the "Atom" suffix, which is redundant.

MozReview-Commit-ID: 4MCX9Icfjrw

--HG--
extra : rebase_source : c3c759a508a8938b59d36dbb20448d2964b98c91
2018-03-07 15:17:34 +11:00
Eric Rahm 916d8bacc7 Bug 1442760 - Switch nsHTMLTags hashtables to nsDataHashtable. r=hsivonen
This converts nsHTMLTags hashtables from PLHash to nsDataHashtable which
gives us both type safety and simpler code. Addtionally `gTagTable` now holds
a nsString instead of a raw char16_t pointer, this has the benefit of the
strings knowing their sizes allowing for more efficient comparisons. We avoid
heap allocations in the nsString by using `AssignLiteral` with the string from
the static string array.

--HG--
extra : rebase_source : 3ab6409de5e933beb868a0b371dff81e56df0810
2018-03-06 17:27:17 -08:00
Florian Quèze c714053d73 Bug 1433175 - scripted patch to replace Components.classes[, Components.interfaces.nsI, Components.utils. and Components.results. with Cc, Ci, Cu and Cr, r=Mossop. 2018-02-28 18:51:33 +01:00
Emilio Cobos Álvarez 9f26540cc4 Bug 1441547: Make character data change notifications use a const reference for the info parameter. r=smaug
It's not intended to be mutated.

MozReview-Commit-ID: 5nkD1YkidlV

--HG--
extra : rebase_source : 810d429208fa3eaf30e220e77a7d27107cb77346
2018-02-27 15:30:27 +01:00
Emilio Cobos Álvarez c03ffd9c62 Bug 1425759: Simplify the style backend type setup. r=bholley
Now that what we use to decide whether a document is styled by Servo are only
prefs and the doc principal, we don't need to inherit the style backend type,
since unless the pref has changed, the result will be the same.

MozReview-Commit-ID: KBmeBn1cRne
2018-02-27 12:39:20 +01:00
Hiroyuki Ikezoe 1b0cba9367 Bug 1417354 - Introduce nsIDocument::GetPresContext(). r=smaug
It would be convenient to get nsPresContext from nsIDocument.

MozReview-Commit-ID: Ei6V3UE8XGr

--HG--
extra : rebase_source : 8d2a917eb62cf341e4e1810451fd01c01dbc3bad
2018-02-21 07:00:10 +09:00
Gijs Kruitbosch bfee896494 Bug 1437147 - report warnings when the sanitizer removes stuff for chrome documents, r=bz
MozReview-Commit-ID: Lx1JjpYrLpD

--HG--
extra : rebase_source : fcd98b67a194a59e2d4e6d44a5442e359ce22255
2018-02-15 16:03:19 +00:00
Nathan Froyd 0f56acaf26 Bug 1437604 - remove NS_INTERFACE_MAP_END_THREADSAFE; r=mystor
This macro is identical to NS_INTERFACE_MAP_END and encourages the
reader to think that there's something extra-special threadsafe about QI
implementations that use the macro, when in reality there's nothing of
the sort.
2018-02-12 14:36:46 -05:00
Boris Zbarsky c61fc860fe Bug 1436508 part 14. Remove nsIDOMMutationEvent. r=masayuki
MozReview-Commit-ID: Gf59kFSIuaK
2018-02-09 11:17:10 -05:00
Andrew McCreight 5dec0e0beb Bug 1432992, part 1 - Remove definitions of Ci, Cr, Cc, and Cu. r=florian
This patch was autogenerated by my decomponents.py

It covers almost every file with the extension js, jsm, html, py,
xhtml, or xul.

It removes blank lines after removed lines, when the removed lines are
preceded by either blank lines or the start of a new block. The "start
of a new block" is defined fairly hackily: either the line starts with
//, ends with */, ends with {, <![CDATA[, """ or '''. The first two
cover comments, the third one covers JS, the fourth covers JS embedded
in XUL, and the final two cover JS embedded in Python. This also
applies if the removed line was the first line of the file.

It covers the pattern matching cases like "var {classes: Cc,
interfaces: Ci, utils: Cu, results: Cr} = Components;". It'll remove
the entire thing if they are all either Ci, Cr, Cc or Cu, or it will
remove the appropriate ones and leave the residue behind. If there's
only one behind, then it will turn it into a normal, non-pattern
matching variable definition. (For instance, "const { classes: Cc,
Constructor: CC, interfaces: Ci, utils: Cu } = Components" becomes
"const CC = Components.Constructor".)

MozReview-Commit-ID: DeSHcClQ7cG

--HG--
extra : rebase_source : d9c41878036c1ef7766ef5e91a7005025bc1d72b
2018-02-06 09:36:57 -08:00
Jan Henning 9c467e7e8d Bug 1392996 - Part 1 - Add meta viewport tag to view-source document. r=hsivonen
Adding <meta name="viewport" content="width=device-width"/> to the view-source
document achieves two things when used in a mobile browser, such as Fennec:
1. When word-wrapping is turned off, the page displays at a more readable
   initial zoom level.
2. As of now, font inflation (when enabled) kicks in on the document when word-
   wrapping is turned on, which leads to the line numbers appearing in a
   noticeably smaller font size than the rest of the page.
   Adding the above meta viewport header marks the document as "mobile-friendly"
   and suppresses font inflation, which means that line numbers will appear
   normally even with word-wrapping enabled.

getMathMLSelection() in browser-content.js isn't actually used in Fennec at the
moment, but for consistency we add the meta viewport tag there as well.

MozReview-Commit-ID: K9KVHh7g7TF

--HG--
extra : rebase_source : 1054f712f5420efcd89daeaa2c8c200129544b2a
2018-01-23 22:25:09 +01:00
Sylvestre Ledru 9e661550b7 Bug 1426997 - Add MOZ_FALLTHROUGH_ASSERT to make it clear that it can never fall through r=hsivonen
MozReview-Commit-ID: KZvVGnlJZtr

--HG--
extra : rebase_source : 0596528de97d4ae42c13f56d264099c7654d90f1
2018-01-29 09:11:08 +01:00
Edgar Chen 084a83413d Bug 1430951 - Avoid element name atomizing to improve performance of LookupCustomElementDefinition; r=smaug
Since we are dealing with the element (nodeInfo->LocalName() and NameAtom() are the same value),
we could use nodeInfo->NameAtom() instead.

MozReview-Commit-ID: 4vIBDEM1Nwv

--HG--
extra : rebase_source : 150d5ea982363eb2ef4c5039fae67be1e08884ba
2018-01-17 14:55:13 +08:00
Boris Zbarsky f60fd673d6 Bug 1432186 part 19. Remove the nsIDOMNode::*_NODE constants. r=mccr8
MozReview-Commit-ID: KvKjeKIOB9K
2018-01-29 23:10:53 -05:00