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

418 Коммитов

Автор SHA1 Сообщение Дата
Boris Zbarsky 64ae41821b Bug 1507540 part 6. Make nsIVariant's "type" a notxpcom attribute. r=froydnj 2018-11-19 20:20:05 -05:00
Ehsan Akhgari 49f92aabe5 Bug 1504551 - Remove the XPCOM registration for "@mozilla.org/exslt/regexp;1" r=qdot
Differential Revision: https://phabricator.services.mozilla.com/D10847

--HG--
extra : moz-landing-system : lando
2018-11-08 19:52:18 +00:00
Ehsan Akhgari 7e258df307 Bug 1504557 - Remove the XPCOM registration for nsErrorService; r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D10848
2018-11-05 09:44:58 -05:00
Gabriele Svelto 266ef73c96 Bug 1503207 - Remove nsWeakPtr.h and cleanup all files including weak reference-related headers r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D10251

--HG--
extra : moz-landing-system : lando
2018-10-31 20:39:03 +00:00
Sylvestre Ledru dd5741407b Bug 1498586 - Add clang-format off to avoid the reformatting of the data structures r=Ehsan
Too hard/impossible for the tool to format correctly these structs

Differential Revision: https://phabricator.services.mozilla.com/D8569

--HG--
extra : moz-landing-system : lando
2018-10-12 20:48:24 +00:00
Nicholas Nethercote 7c53c2d5e2 Bug 1451169 - Reduce indirection for static pointers in txCoreFunctionCall.cpp. r=erahm
--HG--
extra : rebase_source : 847baf81592f5ae87dc2eee09a74dddbf8d82162
2018-04-03 22:15:31 +10:00
Nicholas Nethercote 0979695a1a Bug 1489047 - Remove C++ support for, and testing of, the XPIDL DOMString type. r=nika
--HG--
extra : rebase_source : 21df3192cfff8f9d9254306a5be4f8ad84397eb7
2018-09-06 18:03:18 +10:00
Nicholas Nethercote 8478f8d66e Bug 1489047 - Change almost all DOMString occurrences in XPIDL files to AString. r=nika
Because they have almost identical semantics.

--HG--
extra : rebase_source : ea9074bcac2a1d190b88a5d1afc15997593659b7
2018-09-06 18:02:43 +10:00
Nathan Froyd e7b3b3140d Bug 1415980 - make hash keys movable and not copyable; r=erahm
Everything that goes in a PLDHashtable (and its derivatives, like
nsTHashtable) needs to inherit from PLDHashEntryHdr. But through a lack
of enforcement, copy constructors for these derived classes didn't
explicitly invoke the copy constructor for PLDHashEntryHdr (and the
compiler didn't invoke the copy constructor for us). Instead,
PLDHashTable explicitly copied around the bits that the copy constructor
would have.

The current setup has two problems:

1) Derived classes should be using move construction, not copy
   construction, since anything that's shuffling hash table keys/entries
   around will be using move construction.

2) Derived classes should take responsibility for transferring bits of
   superclass state around, and not rely on something else to handle that.

The second point is not a huge problem for PLDHashTable (PLDHashTable
only has to copy PLDHashEntryHdr's bits in a single place), but future
hash table implementations that might move entries around more
aggressively would have to insert compensation code all over the
place. Additionally, if moving entries is implemented via memcpy (which
is quite common), PLDHashTable copying around bits *again* is
inefficient.

Let's fix all these problems in one go, by:

1) Explicitly declaring the set of constructors that PLDHashEntryHdr
   implements (and does not implement). In particular, the copy
   constructor is deleted, so any derived classes that attempt to make
   themselves copyable will be detected at compile time: the compiler
   will complain that the superclass type is not copyable.

This change on its own will result in many compiler errors, so...

2) Change any derived classes to implement move constructors instead of
   copy constructors. Note that some of these move constructors are,
   strictly speaking, unnecessary, since the relevant classes are moved
   via memcpy in nsTHashtable and its derivatives.
2018-09-20 11:20:36 -04:00
Eric Rahm 0c061732bd Bug 1492204 - Part 1: Stop using deprecated string writing iterators. r=froydnj
This switches over the few remaining usages of the deprecated
BeginWriting/EndWriting(iterator&) functions to the more standard
BeginWriting/EndWriting() functions.

--HG--
extra : rebase_source : 3c54621d4921eb45157ec4edce0b693bdd7f02d5
2018-09-18 09:44:57 -07:00
Ehsan Akhgari 7387a420d9 Bug 1492142 - Remove the XPCOM registrations for the document classes; r=baku
Differential Revision: https://phabricator.services.mozilla.com/D6149
2018-09-18 11:22:23 -04:00
Henri Sivonen 0b01108591 Bug 1489098 - Remove useless use of PromiseFlatString. r=peterv
MozReview-Commit-ID: 10JE4PRp8i0

Differential Revision: https://phabricator.services.mozilla.com/D5237

--HG--
extra : moz-landing-system : lando
2018-09-11 17:17:05 +00:00
Nicholas Nethercote 2ba33e19ff Bug 1486690 - Remove an unnecessary NS_FREE_XPCOM_ISUPPORTS_POINTER_ARRAY call. r=glandium
--HG--
extra : rebase_source : 9efdbd32f91c6059acc3379b610f4843cbe09222
2018-08-28 16:00:05 +10:00
Nicholas Nethercote ac5efebb4b Bug 1486690 - Remove unnecessary checks after moz_xmalloc() calls. r=glandium
There are surprisingly many of them.

(Plus a couple of unnecessary checks after `new` calls that were nearby.)

--HG--
extra : rebase_source : 47b6d5d7c5c99b1b50b396daf7a3b67abfd74fc1
2018-08-28 15:56:01 +10:00
Henri Sivonen 3edc601325 Bug 1402247 - Use encoding_rs for XPCOM string encoding conversions. r=Nika,erahm,froydnj.
Correctness improvements:

 * UTF errors are handled safely per spec instead of dangerously truncating
   strings.

 * There are fewer converter implementations.

Performance improvements:

 * The old code did exact buffer length math, which meant doing UTF math twice
   on each input string (once for length calculation and another time for
   conversion). Exact length math is more complicated when handling errors
   properly, which the old code didn't do. The new code does UTF math on the
   string content only once (when converting) but risks allocating more than
   once. There are heuristics in place to lower the probability of
   reallocation in cases where the double math avoidance isn't enough of a
   saving to absorb an allocation and memcpy.

 * Previously, in UTF-16 <-> UTF-8 conversions, an ASCII prefix was optimized
   but a single non-ASCII code point pessimized the rest of the string. The
   new code tries to get back on the fast ASCII path.

 * UTF-16 to Latin1 conversion guarantees less about handling of out-of-range
   input to eliminate an operation from the inner loop on x86/x86_64.

 * When assigning to a pre-existing string, the new code tries to reuse the
   old buffer instead of first releasing the old buffer and then allocating a
   new one.

 * When reallocating from the new code, the memcpy covers only the data that
   is part of the logical length of the old string instead of memcpying the
   whole capacity. (For old callers old excess memcpy behavior is preserved
   due to bogus callers. See bug 1472113.)

 * UTF-8 strings in XPConnect that are in the Latin1 range are passed to
   SpiderMonkey as Latin1.

New features:

 * Conversion between UTF-8 and Latin1 is added in order to enable faster
   future interop between Rust code (or otherwise UTF-8-using code) and text
   node and SpiderMonkey code that uses Latin1.

MozReview-Commit-ID: JaJuExfILM9
2018-08-14 14:43:42 +03:00
Valentin Gosu 7937c7c4cc Bug 1476928 - Remove nsIURI.CloneIgnoringRef and nsIURI.CloneWithNewRef r=JuniorHsu
The patch introduces NS_GetURIWithNewRef and NS_GetURIWithNewRef which perform the same function.

Differential Revision: https://phabricator.services.mozilla.com/D2239

--HG--
extra : moz-landing-system : lando
2018-07-23 11:28:47 +00:00
Brian Birtles 5d13151cb9 Bug 1471814 - Add a preference for Web Animations timelines; r=bz,hiro
We don't intend to ship this in the near future until the integration with
AnimationWorklet is clear (although we might ship a read-only version).

That said, we use this feature extensively internally (e.g. in DevTools etc.) so
we enable this feature for system callers.

MozReview-Commit-ID: AhB7ZmU1Xzw

--HG--
extra : rebase_source : 630d7dc56b44a9261bb34aa5417cb9b7050efba4
2018-07-14 09:23:03 +09:00
Boris Zbarsky baa09fe66a Bug 1465907 part 2. Remove nsIAttribute. r=mccr8 2018-07-12 15:51:52 -07:00
Andrea Marchesini 14d462eeb3 Bug 1418246 - Return valid columnNumber value in CSP violation events, r=ckerschb 2018-07-05 08:21:04 +02:00
Jeff Gilbert 5b753da289 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07:00
Chris Peterson 2afd829d0f Bug 1469769 - Part 6: Replace non-failing NS_NOTREACHED with MOZ_ASSERT_UNREACHABLE. r=froydnj
This patch is an automatic replacement of s/NS_NOTREACHED/MOZ_ASSERT_UNREACHABLE/. Reindenting long lines and whitespace fixups follow in patch 6b.

MozReview-Commit-ID: 5UQVHElSpCr

--HG--
extra : rebase_source : 4c1b2fc32b269342f07639266b64941e2270e9c4
extra : source : 907543f6eae716f23a6de52b1ffb1c82908d158a
2018-06-17 22:43:11 -07:00
Andi-Bogdan Postelnicu abdb963f55 Bug 1453795 - DOM/XSLT - Initialize member fields in classes/ structures. r=peterv
--HG--
extra : rebase_source : 3c9d507876da521ece3a562a57263210a5136542
2018-06-15 13:59:04 +03:00
Issei Horie f6771ab5b5 Bug 1426426 - Stop shipping communicator.css. r=gijs 2018-06-12 08:08:35 +09:00
Emilio Cobos Álvarez fffb25b74f Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Boris Zbarsky bea3100e53 Bug 1455676 part 14. Remove most use of nsIDOMNode in dom/. r=qdot 2018-05-29 22:58:49 -04:00
Adrian Wielgosik 7c753ae8e0 Bug 1460940 - Remove nsIDOMDocument uses in dom/xslt/. r=bz
MozReview-Commit-ID: Ap0TrNI9eqC

--HG--
extra : rebase_source : cce34c86acb40d5929314e7add1564e267e61440
2018-05-11 19:46:15 +02:00
Adrian Wielgosik b3a78c6c93 Bug 1460940 - Convert nsSyncLoadService::LoadDocument to use nsIDocument. r=bz
MozReview-Commit-ID: LtFdEVXDvLw

--HG--
extra : rebase_source : 9fe20ccaa54525b8b10b6fbad74968a497929193
2018-05-11 19:46:15 +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
Kris Maglione a259026c9d Bug 1456035: Part 4 - Convert callers of XPCOMUtils.generateQI to ChromeUtils.generateQI. r=mccr8
This also removes any redundant Ci.nsISupports elements in the interface
lists.

This was done using the following script:

acecb401b7/processors/chromeutils-generateQI.jsm

MozReview-Commit-ID: AIx10P8GpZY

--HG--
extra : rebase_source : a29c07530586dc18ba040f19215475ac20fcfb3b
2018-04-22 20:55:06 -07:00
Boris Zbarsky 25aa42d9a4 Bug 1455674 part 16. Remove most use of nsIDOMElement in dom. r=qdot 2018-04-26 23:37:34 -04:00
Emilio Cobos Álvarez 8239c1300e Bug 1386840: Defer loading and don't block rendering for non-matching stylesheets. r=bz,heycam
MozReview-Commit-ID: 24UJZDooGmn
2018-04-26 16:44:03 +02: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
Eric Rahm ec9d567f14 Bug 1451908 - Check for infinite value in txFormatNumberFunctionCall. r=peterv a=abillings 2018-04-17 11:22:04 -07:00
Eric Rahm f17fbddf9a Bug 1451908 - Check for infinite value in txFormatNumberFunctionCall. r=peterv
--HG--
extra : rebase_source : d62467b2d010506e4cec724ac89476b56ad5d536
2018-04-17 11:22:04 -07:00
Dorel Luca 3409e8f9fb Merge mozilla-central to autoland
--HG--
rename : testing/mochitest/tests/SimpleTest/SpawnTask.js => testing/mochitest/tests/SimpleTest/AddTask.js
rename : testing/mozharness/mozharness/mozilla/testing/verify_tools.py => testing/mozharness/mozharness/mozilla/testing/per_test_base.py
extra : rebase_source : 6f474049dab2c2979e13ea87114b82d2b04715d0
2018-04-21 02:03:27 +03:00
Brian Grinstead 37febf2987 Bug 1455680 - Notify document-element-inserted in XUL documents;r=bz
We'll want to use this event to inject scripts before other scripts run
in XUL documents. It already fires in HTML documents.

MozReview-Commit-ID: 7FW0R8r9o9G

--HG--
extra : rebase_source : 28fe9b6a4bcbb6ecf8966a0c059d867bf66285bf
2018-04-20 13:55:51 -07: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
Andrew McCreight 3f7472aec1 Bug 1449670, part 1 - Convert IsNodeOfType(nsINode::eTEXT) to IsText(). r=bz
This method is not a virtual call, and also looks nicer.

This patch was mostly generated by a Python script, but I manually
cleaned up the code in a few places where statements didn't need to be
split across multiple lines any more.

MozReview-Commit-ID: 8JExxqSRc59

--HG--
extra : rebase_source : df6330a89e8d65dfe7a6fda0c8cb9f9732302efc
2018-04-12 15:41:00 -07: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
Ciure Andrei 873d562bc3 Backed out 8 changesets (bug 1451169) on request from njn a=backout
Backed out changeset b92f856e15a8 (bug 1451169)
Backed out changeset 348e825756fa (bug 1451169)
Backed out changeset 624d82428726 (bug 1451169)
Backed out changeset 4d51610ca08e (bug 1451169)
Backed out changeset bb76a9589717 (bug 1451169)
Backed out changeset c145fbd03947 (bug 1451169)
Backed out changeset 6d36289e0f54 (bug 1451169)
Backed out changeset 914fb7cd9fc3 (bug 1451169)

--HG--
extra : histedit_source : 94de6631919f895dec422bc0e564f5baf885ba4a%2C18f52c6c11d3064d3137a6847575effb7d407894
2018-04-11 11:22:05 +03:00
Nicholas Nethercote 1ad4d0e314 Bug 1451169 - Reduce indirection for static pointers in txCoreFunctionCall.cpp. r=erahm
The patch also adds more `const` to txCoreFunctionDescriptor.

MozReview-Commit-ID: 6VFyAcjD98F

--HG--
extra : rebase_source : db054286e7e236775d686e406c6e05a18d5b5f35
2018-04-03 22:15:31 +10:00
Peter Van der Beken edd705b1ca Bug 1444119 - Remove XPCOM extensibility of XSLT functions. r=bz.
--HG--
extra : rebase_source : 7ee56e82624d401f62dccd1180ce07b531ae816e
2018-02-27 19:08:46 +01:00
Boris Zbarsky 4370006c40 Bug 1449404 part 3. Get rid of nsIContent::AppendTextTo. r=mccr8 2018-03-28 18:01:47 -04:00
Boris Zbarsky 693169e324 Bug 1449404 part 1. Get rid of nsIContent::SetText. r=mccr8 2018-03-28 18:01:46 -04:00
Henri Sivonen 828fac8d2c Bug 1448588 - Assume contiguous XPCOM strings in txDouble. r=peterv.
MozReview-Commit-ID: 9gDx13PNFWr

--HG--
extra : rebase_source : aeee559d77cab127a4f52a6e83455f6f41454f72
2018-03-24 21:24:25 +02:00
Cosmin Sabou c39c079687 Backed out 2 changesets (bug 1444119) for build bustages on dom/xslt/xslt/txEXSLTFunctions.cpp. CLOSED TREE
Backed out changeset bca28a3a066a (bug 1444119)
Backed out changeset 3181f8c1a539 (bug 1444119)
2018-03-23 13:16:32 +02:00
Peter Van der Beken 613c30d626 Bug 1444119 - Remove XPCOM extensibility of XSLT functions. Fix build bustage on a CLOSED TREE.
--HG--
extra : rebase_source : 00586d43ad09241f3a27431b9af0b3848ed6ac46
2018-03-23 11:39:53 +01:00