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

44 Коммитов

Автор SHA1 Сообщение Дата
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
Jeff Gilbert 5b753da289 Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot
MozReview-Commit-ID: JtTcLL5OPF0
2018-06-26 17:05:01 -07: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 72f940dafe Bug 1429903 part 2. Stop using nsIDOMEventTarget in xpidl. r=mccr8
MozReview-Commit-ID: HQw7TyJUapY
2018-04-20 00:49:30 -04:00
Nika Layzell 3409141758 Bug 1414974 - Part 2: Switch many consumers to nsGlobalWindow{Inner,Outer}, r=smaug
This is a large patch which tries to switch many of the external consumers of
nsGlobalWindow to instead use the new Inner or Outer variants.

MozReview-Commit-ID: 99648Lm46T5
2017-11-09 10:44:47 -05:00
Andrew McCreight 298aa82710 Bug 1412125, part 2 - Fix dom/ mode lines. r=qdot
This was automatically generated by the script modeline.py.

MozReview-Commit-ID: BgulzkGteAL

--HG--
extra : rebase_source : a4b9d16a4c06c4e85d7d85f485221b1e4ebdfede
2017-10-26 15:08:41 -07:00
Nicholas Nethercote e3c9cbb969 Bug 1401813 - Rename Null[C]String() as Void[C]String(). r=erahm.
XPCOM's string API doesn't have the notion of a "null string". But it does have
the notion of a "void string" (or "voided string"), and that's what these
functions are returning. So the names should reflect that.

--HG--
extra : rebase_source : 4e3f982e0873877174a08a25413595ff66f7d20e
2017-09-22 14:35:46 +10:00
Chung-Sheng Fu df57f152fd Bug 1382533 - Disable Presentation API when privacy.resistFingerprinting = true r=arthuredelstein,smaug
MozReview-Commit-ID: IDKEqSqm9Ug

--HG--
extra : rebase_source : 2b908d9138157b198028aedffc344d102063c896
2017-08-09 17:38:30 +08:00
Andrew McCreight 78807d8776 Bug 1391005 - Eliminate NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED. r=peterv
Replace it with NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION, because it
has been the same for a while.

MozReview-Commit-ID: 5agRGFyUry1

--HG--
extra : rebase_source : 5388c56b2f6905c6ef969150f0c5b77bf247624d
2017-08-29 16:02:48 -07:00
Carsten "Tomcat" Book 4e00eff077 merge mozilla-inbound to mozilla-central a=merge 2017-06-27 10:56:41 +02:00
Bill McCloskey f115503a0b Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-26 14:19:58 -07:00
Masatoshi Kimura b515c9c804 Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14

--HG--
extra : rebase_source : fdae0046f882d47fb539a7f882364e5c5caafdcd
extra : source : 49249788c0dee331ac2989dc39f0505d965a7bd8
2017-06-18 20:37:50 +09:00
Sebastian Hengst dfc1ad2562 Backed out changeset 7235d05662b0 (bug 1373984) for Android bustage. r=backout on a CLOSED TREE 2017-06-25 18:30:13 +02:00
Masatoshi Kimura 2e04751921 Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14

--HG--
extra : rebase_source : a84ab644f52e68676b45f112ff69f868d89f6177
extra : source : 49249788c0dee331ac2989dc39f0505d965a7bd8
2017-06-18 20:37:50 +09:00
Wes Kocher e02435a31e Backed out changeset 77af189b5c49 (bug 1373984) for build bustage in nsHtml5Parser.cpp a=backout CLOSED TREE
MozReview-Commit-ID: 6kBmU71j2To
2017-06-25 05:10:14 -07:00
Masatoshi Kimura 241039fd97 Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen
MozReview-Commit-ID: GF0YXDwfA14

--HG--
extra : rebase_source : 09da1685795583513bf019d61c58230c2c4d298d
extra : source : 49249788c0dee331ac2989dc39f0505d965a7bd8
2017-06-18 20:37:50 +09:00
Carsten "Tomcat" Book 8a1350b5a6 Backed out changeset 4f6302a98ae4 (bug 1372405)
--HG--
extra : rebase_source : 41632f3158e88e692809731394a683d065a73dfb
2017-06-21 13:59:26 +02:00
Bill McCloskey 6b3e84ed5f Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-20 21:44:11 -07:00
Carsten "Tomcat" Book ea1b86680c Backed out changeset 9846de3bd954 (bug 1372405)
--HG--
extra : rebase_source : 5d4a48e8ec394c329994689d938d2a6e9b2752b0
2017-06-20 08:27:02 +02:00
Bill McCloskey 4592152411 Bug 1372405 - Provide names for all runnables in the tree (r=froydnj)
MozReview-Commit-ID: DKR6ROiHRS7
2017-06-19 22:25:47 -07:00
Ben Tian cda6ed446d Bug 1350459 - Remove the [Throws] annotation from Window.navigator, r=qdot
MozReview-Commit-ID: 8vjyVrfa3xT

--HG--
extra : rebase_source : d63942141b562e0e69611f3cbc1da4e9ee522efc
2017-04-14 10:40:03 +08:00
Andrea Marchesini 359ae91eac Bug 1328653 - Merging all the various *OriginAttributes to just one, r=huseby 2017-01-12 17:38:48 +01:00
Shih-Chiang Chien 7f0bead091 Bug 1311375 - promise reject when there is an unsettled presentation start procedure. r=smaug
MozReview-Commit-ID: AL0QeyXBwzb

--HG--
extra : rebase_source : 4a80f8589a5f497747b754b6246ebecbf046ae2b
2016-10-31 15:49:32 +08:00
Chun-Min Chang 1aa09604f6 Bug 1306210 - Expose the principal of the device request. r=smaug
MozReview-Commit-ID: ihzebnIUUU

--HG--
extra : rebase_source : c7e5b989bb44170b680dd174648b5afc8cc9054d
2016-10-04 14:27:05 +08:00
Kershaw Chang 5bb5c52b40 Bug 1299040 - Implement transport builder constructor. r=smaug 2016-09-16 08:59:00 -04:00
Phil Ringnalda 069b27b0aa Backed out changeset e684bf18e5d9 (bug 1299040) for bad implicit conversion constructor bustage
CLOSED TREE
2016-09-15 19:31:32 -07:00
Kershaw Chang 048198ad45 Bug 1299040 - Implement transport builder constructor. r=smaug 2016-09-15 07:09:00 -04:00
Chun-Min Chang 50ceb41bab Bug 1299061 - Expose the browser that the request was originated in; r=smaug
MozReview-Commit-ID: 2iFQiYeoxBh

--HG--
extra : rebase_source : c516a7d8cc70c85c0303e27d07854808fe9192aa
2016-08-31 20:56:17 +08:00
Kershaw Chang 4317633349 Bug 1288297 - Construct PresentationRequest with multiple URLs, r=smaug 2016-09-05 01:17:00 +02:00
Shih-Chiang Chien 035755489b Bug 1228508 - Part 2, maintain the set of availability objects. r=smaug
MozReview-Commit-ID: 8JNWvnfsMU7

--HG--
extra : rebase_source : 004360c49a899273cc582ad4a2e886be167e9cac
2016-08-17 16:15:32 +08:00
Shih-Chiang Chien 1a4ed0c6e5 Bug 1228508 - Part 1, create new availability object for each getAvailability(). r=smaug.
MozReview-Commit-ID: 8DjlW3C58Tz

--HG--
extra : rebase_source : 076e26f256faed64f44c035d2a1b8e317052af63
2016-08-31 10:31:15 +08:00
Kershaw Chang b542f5170c Bug 1254488 - Run the the prohibits mixed security contexts algorithm and check a priori unauthenticated URL in PresentationRequest, r=smaug 2016-08-10 23:01:00 +02:00
Shih-Chiang Chien 2abb975dbb Bug 1254484 - resolve relative presentation URL. r=smaug.
MozReview-Commit-ID: CF3WNGorwH1
2016-08-03 15:35:36 +08:00
Kershaw Chang 4f5b2c7d11 Bug 1197690 - Part2: Implement reconnect, r=smaug
--HG--
extra : rebase_source : b40f774b3af223910da37094b2f82bfc5b8b92d2
2016-08-02 19:11:00 +02:00
Kershaw Chang baf1057b0d Bug 1268758 - Part1: Implement allow-presentation sandboxing flag, r=smaug 2016-07-14 02:44:00 +02:00
Junior Hsu fce48d6554 Bug 1148307 - Part 4, use data channel in substitution for TCP session transport (in-process), r=smaug
--HG--
rename : dom/presentation/tests/mochitest/test_presentation_receiver.html => dom/presentation/tests/mochitest/test_presentation_tcp_receiver.html
rename : dom/presentation/tests/mochitest/test_presentation_receiver_establish_connection_error.html => dom/presentation/tests/mochitest/test_presentation_tcp_receiver_establish_connection_error.html
rename : dom/presentation/tests/mochitest/test_presentation_receiver_establish_connection_timeout.html => dom/presentation/tests/mochitest/test_presentation_tcp_receiver_establish_connection_timeout.html
rename : dom/presentation/tests/mochitest/test_presentation_receiver_oop.html => dom/presentation/tests/mochitest/test_presentation_tcp_receiver_oop.html
rename : dom/presentation/tests/mochitest/test_presentation_sender.html => dom/presentation/tests/mochitest/test_presentation_tcp_sender.html
rename : dom/presentation/tests/mochitest/test_presentation_sender_default_request.html => dom/presentation/tests/mochitest/test_presentation_tcp_sender_default_request.html
rename : dom/presentation/tests/mochitest/test_presentation_sender_disconnect.html => dom/presentation/tests/mochitest/test_presentation_tcp_sender_disconnect.html
rename : dom/presentation/tests/mochitest/test_presentation_sender_establish_connection_error.html => dom/presentation/tests/mochitest/test_presentation_tcp_sender_establish_connection_error.html
extra : rebase_source : 01a976ea5c73abcc15b86594b97eed7aff57a95b
2016-04-11 11:20:55 +08:00
Sebastian Hengst 3e646cbd97 Backed out changeset 3cb658c3e3f9 (bug 1148307)
--HG--
rename : dom/presentation/tests/mochitest/test_presentation_tcp_receiver.html => dom/presentation/tests/mochitest/test_presentation_receiver.html
rename : dom/presentation/tests/mochitest/test_presentation_tcp_receiver_establish_connection_error.html => dom/presentation/tests/mochitest/test_presentation_receiver_establish_connection_error.html
rename : dom/presentation/tests/mochitest/test_presentation_tcp_receiver_establish_connection_timeout.html => dom/presentation/tests/mochitest/test_presentation_receiver_establish_connection_timeout.html
rename : dom/presentation/tests/mochitest/test_presentation_tcp_receiver_oop.html => dom/presentation/tests/mochitest/test_presentation_receiver_oop.html
rename : dom/presentation/tests/mochitest/test_presentation_tcp_sender.html => dom/presentation/tests/mochitest/test_presentation_sender.html
rename : dom/presentation/tests/mochitest/test_presentation_tcp_sender_default_request.html => dom/presentation/tests/mochitest/test_presentation_sender_default_request.html
rename : dom/presentation/tests/mochitest/test_presentation_tcp_sender_disconnect.html => dom/presentation/tests/mochitest/test_presentation_sender_disconnect.html
rename : dom/presentation/tests/mochitest/test_presentation_tcp_sender_establish_connection_error.html => dom/presentation/tests/mochitest/test_presentation_sender_establish_connection_error.html
2016-04-11 13:12:13 +02:00
Junior Hsu a8a1aaba30 Bug 1148307 - Part 4 - use data channel in substitution for TCP session transport (in-process), r=smaug
--HG--
rename : dom/presentation/tests/mochitest/test_presentation_receiver.html => dom/presentation/tests/mochitest/test_presentation_tcp_receiver.html
rename : dom/presentation/tests/mochitest/test_presentation_receiver_establish_connection_error.html => dom/presentation/tests/mochitest/test_presentation_tcp_receiver_establish_connection_error.html
rename : dom/presentation/tests/mochitest/test_presentation_receiver_establish_connection_timeout.html => dom/presentation/tests/mochitest/test_presentation_tcp_receiver_establish_connection_timeout.html
rename : dom/presentation/tests/mochitest/test_presentation_receiver_oop.html => dom/presentation/tests/mochitest/test_presentation_tcp_receiver_oop.html
rename : dom/presentation/tests/mochitest/test_presentation_sender.html => dom/presentation/tests/mochitest/test_presentation_tcp_sender.html
rename : dom/presentation/tests/mochitest/test_presentation_sender_default_request.html => dom/presentation/tests/mochitest/test_presentation_tcp_sender_default_request.html
rename : dom/presentation/tests/mochitest/test_presentation_sender_disconnect.html => dom/presentation/tests/mochitest/test_presentation_tcp_sender_disconnect.html
rename : dom/presentation/tests/mochitest/test_presentation_sender_establish_connection_error.html => dom/presentation/tests/mochitest/test_presentation_tcp_sender_establish_connection_error.html
2016-04-11 11:20:55 +08:00
Kyle Huey 91efc5a86c Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Shih-Chiang Chien 8d4c9a3ae8 Bug 1239242 - support PresentationRequest.startWithDevice(). r=smaug. 2016-01-13 19:21:25 +08:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Sean Lin 734f22b0e0 Bug 1212702 - [Presentation WebAPI] Rename to PresentationConnection. Part 1 - WebIDL bindings. r=smaug
--HG--
rename : dom/presentation/PresentationSession.cpp => dom/presentation/PresentationConnection.cpp
rename : dom/presentation/PresentationSession.h => dom/presentation/PresentationConnection.h
rename : dom/webidl/PresentationSession.webidl => dom/webidl/PresentationConnection.webidl
rename : dom/webidl/PresentationSessionConnectEvent.webidl => dom/webidl/PresentationConnectionAvailableEvent.webidl
2015-10-12 10:36:31 +08:00
Sean Lin 97f0121975 Bug 1192101 - Part 2 - Support PresentationRequest / PresentationAvailability / getSession(s). Part 2 - Change notification & event dispatching. r=smaug 2015-09-10 16:29:08 +08:00
Sean Lin 702df0ae17 Bug 1192101 - Part 1 - Support PresentationRequest / PresentationAvailability / getSession(s). Part 1 - WebIDL Bindings. r=smaug 2015-09-14 10:39:57 +08:00