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

5358 Коммитов

Автор SHA1 Сообщение Дата
Wes Kocher a5fc391fdf Merge m-c to autoland a=merge
MozReview-Commit-ID: LsPv9Mdodvf
2017-08-11 13:39:17 -07:00
Wes Kocher 5a4357c768 Merge inbound to central, a=merge
MozReview-Commit-ID: GArkKmOFIVH
2017-08-11 13:15:33 -07:00
Michael Froman 830c799f81 Bug 1389256 - fix incomplete handling of RepairedRtpStreamId after webrtc.org backport of RtpStreamId. r=bwc
During my backport of RtpStreamId from webrtc.org, I missed a few
places where RepairedRtpStreamId was used or was not completely
implemented.  Also, the webrtc.org code used repairedStreamId,
which is not really correct per the spec (draft-ietf-avtext-rid)
so I fixed all occurances to use the correct repairedRtpStreamId
to avoid confusion later.

The RTP header extensions default IDs for RtpStreamId and
RepairedRtpStreamId were also adjusted to not collide with
PlayoutDelay's default ID.

MozReview-Commit-ID: HSlS8nsKQ29

--HG--
extra : rebase_source : f1bf7fc9ceec22de1c56ef3b7be22fccea01ecdb
2017-07-28 14:52:46 -05:00
Lennart Grahl c2ebc3e45e Bug 979417 - Implement EOR when receiving and explicit EOR when sending on data channels (including DCEP). r=drno,jesup
This allows sending and receiving arbitrarily (we limit to 1 GiB atm) sized
messages while not relying on the deprecated PPID fragmentation/reassembly
mode. The code already supports the ndata extension but it's not activated,
yet. Without the SCTP ndata extension, a large data channel message will
monopolise the SCTP association. While this is a problem, it is a temporary
solution until the extension is being activated. Keep in mind that every
application that uses data channels currently does fragmentation/reassembly on
application-level and it's unlikely that this will change until the popular
implementations (libwebrtc) implement EOR as well. Moreover, until the WebRTC
API specifies an API that hands over partial messages, doing application-level
fragmentation/reassembly is still useful for very large messages (sadly).

We fall back to PPID-based fragmentation/reassembly mode IFF a=max-message-size
is not set in the SDP and the negotiated amount of SCTP inbound streams is
exactly 256. Other implementations should avoid using this combination (to be
precise, other implementations should send a=max-message-size).

It also changes behaviour of RTCDataChannel.send which now raises TypeError in
case the message is too large for the other peer to receive. This is a
necessity to ensure that implementations that do not look at the EOR flag when
receiving are always able to receive our messages. Even if these
implementations do not set a=max-message-size, we use a safe default value (64
KiB, dictated by the spec) that every implementation should be able to receive,
with or without EOR support.

* Due to the use of explicit EOR, this required some major refactoring of all
  send-related and deferred sending functions (which is now a lot less
  complex). There's now only one place where `usrsctp_sendv` is being used.
* All data channel messages and DCEP messages will be sent without copying them
  first. Only in case this fails (e.g. usrsctp's buffer is full), the message
  will be copied and added to a buffer queue.
* Queued data channel messages will now be re-sent fairly (round-robin).
* Maximum message size and the PPID-based fragmentation are configurable using
  about:config (media.peerconnection.sctp.force_ppid_fragmentation and
  media.peerconnection.sctp.force_maximum_message_size).
* Enable interleaving of incoming messages for different streams (preparation
  for SCTP ndata, has no effect until it is enabled).
* Enable interleaving of outgoing messages (disabled if SCTP ndata has not been
  negotiated).
* Add pending messages flag to reduce performance impact from frequent calls to
  SendDeferredMessages.
* Handle partial delivery events (for cases where a partially delivered message
  is being aborted).
* Close a data channel/the connection in case the message is too large to be
  handled (this is only applied in cases where the remote peer ignores our
  announced local maximum message size).
* Various size_t to uint32_t conversions (message length) and back should be
  safe now.
* Remove aUsingDtls/mUsingDtls from DataChannelConnection.
* Set maximum message size in SDP and in the data channel stack.
* Replace implicit NS_ENSURE_*'s with explicit NS_WARN_IF's.
* Add SetMaxMessageSize method for late-applying those signalling parameters
  when a data channel has been created before the remote SDP was available.
* Limit remote maximum message size and add a GetMaxMessageSize method for a
  future implementation of RTCSctpTransport.maxMessageSize.

MozReview-Commit-ID: FlmZrpC5zVI

--HG--
extra : rebase_source : 54e1b838c788a3abbded4fb32fe7c2788f8a9bc0
2017-07-26 13:18:54 +02:00
Wes Kocher cff9e9b197 Merge m-c to autoland, a=merge
MozReview-Commit-ID: 2YvHbITn9w3
2017-08-10 18:25:34 -07:00
Sebastian Hengst 51d351f567 merge mozilla-central to mozilla-inbound. r=merge a=merge 2017-08-10 17:41:11 +02:00
Sylvestre Ledru 756cf62eca Bug 1372839 - SkipString; Exit early if sym is not found r=gerald
MozReview-Commit-ID: GnqPuW8FL5F

--HG--
extra : rebase_source : b3c44c8daecc5341957d5953a525af82afba705a
2017-08-10 09:34:34 +02:00
Sylvestre Ledru 9ce875d87a Bug 1387002 - Replace .size() by .empty() when applicable in gmp r=cpearce
MozReview-Commit-ID: HhYJ6BK4oOG

--HG--
extra : rebase_source : 8177ad33ebafafc27ba2f809743cfd2c223a10d7
2017-08-04 09:09:38 +02:00
Sylvestre Ledru d938e24c4c Bug 1387002 - Replace .size() by .empty() when applicable in webrtc & mtransport r=jesup
MozReview-Commit-ID: 4DyftBRDEcU

--HG--
extra : rebase_source : 92b00b313060c0631e087216c6a30b421b58199d
2017-08-04 09:36:19 +02:00
Mike Hommey 66d4d80b03 Bug 1388681 - Disable -Wformat-security where -Wformat is disabled. r=bwc
--HG--
extra : rebase_source : b303f70c2900b8dff538083a6b406545170356c2
2017-08-09 18:45:16 +09:00
Matthew Gregan 2f8cc7804c Bug 1388236 - Remove B2G-only AudioChannel code from MSG. r=padenot 2017-08-10 13:00:08 +12:00
Matthew Gregan b359c3ce6d Bug 1388229 - Update libcubeb to revision d59010139. r=kamidphish 2017-08-10 13:00:07 +12:00
Chris Peterson 801d7c7d38 Bug 1388978 - Suppress some more clang warnings in media/ffvpx. r=rillian
Since I am already poking around in ffvpxcommon.mozbuild's CFLAGS, also suppress these clang -Wvisibility and -Wstring-conversion warnings:

media/ffvpx/libavutil/dummy_funcs.c:83:34 [-Wvisibility] declaration of 'struct AVBufferRef' will not be visible outside of this function
media/ffvpx/libavutil/dummy_funcs.c:83:67 [-Wvisibility] declaration of 'struct AVFrame' will not be visible outside of this function
media/ffvpx/libavutil/utils.c:119:26 [-Wstring-conversion] implicit conversion turns string literal into bool: 'char [19]' to '_Bool'

And remove -Wno-logical-op-parentheses because clang does not currently report any -Wlogical-op-parentheses warnings for ffvpx.

MozReview-Commit-ID: 1kEwEHeD1PC

--HG--
extra : rebase_source : 133fa139f5389467919b88b96b8cbbf632bf002d
2017-08-10 09:55:42 -07:00
Chris Peterson 8107e99d4c Bug 1388978 - Fix -Wunknown-warning-option warnings in media/ffvpx. r=rillian
clang doesn't support gcc warning options -Wdiscarded-qualifiers or -Wmaybe-uninitialized in media/ffvpxcommon.mozbuild (added in bug 1369791), so only suppress those warnings for real gcc.

warning: unknown warning option '-Wno-discarded-qualifiers'; did you mean '-Wno-ignored-qualifiers'? [-Wunknown-warning-option]
warning: unknown warning option '-Wno-maybe-uninitialized'; did you mean '-Wno-uninitialized'? [-Wunknown-warning-option]

MozReview-Commit-ID: JUEqa6AN59x

--HG--
extra : rebase_source : 45e3c43d57e58119170700f7a339d1f2dfacff2c
extra : source : ee4a75aeb3585719700e1700746ce55984eba6fa
2017-07-29 11:05:34 -07:00
Paul Adenot 09ca1b1297 Bug 1384655 - Remove obsolete latency measuring macros in downstream code we don't use anymore. r=jesup
MozReview-Commit-ID: ARAWGe7yFM4

--HG--
extra : amend_source : b1b3f4f33c9c2b15465ac5670a3639b8527a16a3
2017-08-08 10:00:37 +02:00
Sylvestre Ledru 289b4ecd71 Bug 1387376 - Reserve memory before using push_back with vector r=jesup
MozReview-Commit-ID: CrSFN0Ov1B4

--HG--
extra : rebase_source : 9863893841abcc1c7ef35932160cdbddaa535e45
2017-08-04 21:28:50 +02:00
Makoto Kato d2130a3810 Bug 1386164 - Part 2. Use MOZ_SYSTEM_LIBEVENT for webrtc. r=jesup
GYP of WebRTC should reference MOZ_SYSTEM_LIBEVENT values if available.

MozReview-Commit-ID: CshsPrRidM8

--HG--
extra : rebase_source : 9e619c2f49e7c2b3f680814b95b823996773fa6c
2017-08-03 13:28:25 +09:00
Makoto Kato b2458fa168 Bug 1386164 - Part 1. Use libevent2 headers instead of deprecated event.h. r=jesup
libevent uses event.h header that is fuzzy name.  Since our in-tree libevent is libevent2, we should use libevent2 headers instead of deprecated event.h

MozReview-Commit-ID: 6DjW9JEkNWL

--HG--
extra : rebase_source : b774e177b137bf7427122253a3e4c698689e08a4
2017-08-03 13:22:26 +09:00
Matthew Gregan b680d61073 Bug 1386957 -Update libcubeb to revision 0e103884. r=achronop
MozReview-Commit-ID: HFkJ6TPLIfv

--HG--
extra : rebase_source : 19225466d283f999a99589f6afba1315dc1ec041
2017-08-03 18:46:49 +12:00
Masatoshi Kimura f143125cc2 Bug 1326520 - Rename nsIURI.path to pathQueryRef. r=valentin.gosu
MozReview-Commit-ID: DqJdTGopR9G

--HG--
extra : rebase_source : e8c9eb03468c075b79013b6e0bd8b367229c24cd
2017-07-29 20:50:21 +09:00
Jan Beich 5c4a94b509 Bug 1385115 - Unbreak build on Tier3 after bug 1382883. r=cpearce
MozReview-Commit-ID: ISTOw1qfxiy

--HG--
extra : rebase_source : 4444849c190f7128d67c53483866ac59c73b2eb9
2017-07-28 11:48:56 +00:00
Nicholas Nethercote 581214bd8b Bug 1384835 (part 1, attempt 2) - Use nsA[C]String references instead of pointers for outparams of Get*String() pref functions. r=froydnj.
--HG--
extra : rebase_source : fe566945a55c281d8290634a5b55bed19415c839
2017-07-31 10:52:51 +10:00
Alex Chronopoulos ad2bcf909e Bug 1385481 - Update cubeb from upstream to 42da8d2. r=kinetik
MozReview-Commit-ID: HOrC5Iwd92L
2017-07-29 02:45:33 +03:00
Glenn Randers-Pehrson 8e5226d344 Bug 1377118 - Update in-tree libpng to version 1.6.31. r=jrmuizel
--HG--
extra : rebase_source : 72613717bc7380d217f64ea6ae1191563bdedf4a
2017-07-27 11:42:00 -04:00
Sebastian Hengst d7527a414d Backed out changeset 07b534f44740 (bug 1384835) for failing xpcshell's security/manager/ssl/tests/unit/test_cert_sha1.js checkCertErrorGenericAtTime on Linux x64 debug. r=backout 2017-07-28 10:30:29 +02:00
Nicholas Nethercote f314cbcbe5 Bug 1384835 (part 1) - Use nsA[C]String references instead of pointers for outparams of Get*String() pref functions. r=froydnj.
This is basically a cosmetic change; references are the normal way to do string
outparams.

--HG--
extra : rebase_source : ffc5945f269bdcd3d4116755b56713e87a44b6cd
2017-07-25 19:12:56 +10:00
Wes Kocher 7dc0b363c1 Merge m-c to inbound, a=merge
MozReview-Commit-ID: 1JlPbFMKbJZ
2017-07-27 16:17:40 -07:00
Wes Kocher 7149e44594 Merge autoland to m-c a=merge
MozReview-Commit-ID: 4MCb0ASsMxe
2017-07-27 16:09:49 -07:00
Dan Minor 460bb5228f Bug 1382681 - Remove java.lang.RuntimeException in VideoCaptureAndroid; r=jesup
There does not seem to be any bad effects from calling stop twice, so just log that
it has happened rather than throwing an exception.

--HG--
extra : rebase_source : 0d92bad7b33010f50f41de8498b8406c3521c9e7
2017-07-25 11:31:26 -04:00
Dan Minor c6d57aa7de Bug 1384874 - Fix build failure on OSX 10.11.6 after Bug 1368030 landed; r=mjf
--HG--
extra : rebase_source : 36569545916cd2a201908ca835efc601ffb49f4d
2017-07-27 09:38:49 -04:00
Carsten "Tomcat" Book c4e7d0a39e merge mozilla-central to autoland
--HG--
extra : rebase_source : 0f0f666839de9bee40c2d469fd8dd7e63b266f69
2017-07-27 11:38:15 +02:00
Carsten "Tomcat" Book d360d49d2a merge mozilla-inbound to mozilla-central a=merge 2017-07-27 10:57:25 +02:00
Alex Chronopoulos 0335e95f16 Bug 1384053 - Update cubeb from upstream to 09aeb59. r=kinetik
MozReview-Commit-ID: KQRqIGv021z

--HG--
extra : rebase_source : e024379549aa71c831a56dc91b41389838970550
2017-07-25 18:00:35 +03:00
Wes Kocher ad35031103 Merge m-c to inbound, a=merge
MozReview-Commit-ID: LhiAcCiFBus
2017-07-26 18:33:18 -07:00
Dan Minor 01192ea8bd Bug 1368030 - Fix race condition in ScreenCapturerMac. r=jesup
The race condition is between ~ScreenCapturerMac and the ScreenRefresh and
ScreenUpdateMove callbacks. The destructor calls
UnregisterRefreshAndMoveHandlers but a callback may still occur after the
destruction of the object.

Rather than passing a pointer to ScreenCapturerMac into the callback, this
adds a separate object which keeps a pointer to ScreenCapturerMac guarded
by a CriticalSection. The destructor sets the ScreenCapturerMac to nullptr.
In the next callback, the handler unregisters the callbacks and deletes
the object.

The downside to this approach is that if the ScreenCapturerMac
object is allocated and deallocated before a callback occurs, the memory
for the separate object will be leaked.
2017-07-19 14:49:05 -04:00
Carsten "Tomcat" Book 8a74dfa905 Merge mozilla-central to autoland 2017-07-26 11:18:21 +02:00
Jean-Yves Avenard f1021e0d6d Bug 1384026 - Reduce memory usage. r=gerald
We dynamically allocate the memory we need and abort if OOM.

MozReview-Commit-ID: FMGWbOXoN8P

--HG--
extra : rebase_source : d6a28017b7c261d2c8acf2321cd30266bd8d5a35
2017-07-25 18:36:52 +02:00
Alfredo Yang 925ef43dd9 Bug 1359275 - use get() or get_mut()to avoid out of vector boundary. r=kinetik
MozReview-Commit-ID: J4fO0Ynv4WC

--HG--
extra : rebase_source : bbfe10945a2f00bf9173d3fa2d77bc7d6b2af7f5
2017-07-27 10:31:01 +08:00
Nathan Froyd ffa6f2f3c0 Bug 1377959 - fix compiler warning about varargs functions; r=jesup 2017-07-25 16:52:56 -04:00
Carsten Book 115784405b Backed out changeset 0a60cc198321 for browser_devices_get_user_media_screen.js | application crashed [@ mozalloc_abort(char const*)] 2017-07-25 17:40:59 +02:00
Dan Minor 6e3ccd3e2a Bug 1368030 - Fix race condition in ScreenCapturerMac. r=jesup
The race condition is between ~ScreenCapturerMac and the ScreenRefresh and
ScreenUpdateMove callbacks. The destructor calls
UnregisterRefreshAndMoveHandlers but a callback may still occur after the
destruction of the object.

Rather than passing a pointer to ScreenCapturerMac into the callback, this
adds a separate object which keeps a pointer to ScreenCapturerMac guarded
by a CriticalSection. The destructor sets the ScreenCapturerMac to nullptr.
In the next callback, the handler unregisters the callbacks and deletes
the object.

The downside to this approach is that if the ScreenCapturerMac
object is allocated and deallocated before a callback occurs, the memory
for the separate object will be leaked.
2017-07-19 14:49:05 -04:00
Nicholas Nethercote ac3e6bddb4 Bug 1382099 - Remove MOZ_WIDGET_GONK from media/, uriloader/, widget, /xpfe/. r=snorp.
--HG--
extra : rebase_source : 75fe5b8320d52c7316ca547f706b64f30250d28c
2017-07-24 10:08:55 +10:00
Sebastian Hengst f16a7f8371 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: 4EWdTlEncz7
2017-07-22 11:38:42 +02:00
Wes Kocher d45eb771f0 Merge m-c to inbound, a=merge
MozReview-Commit-ID: Ah48RzFU8Mt
2017-07-21 18:20:46 -07:00
Wes Kocher 051dc17e6c Merge inbound to central, a=merge CLOSED TREE
MozReview-Commit-ID: GYc8r8gnS0j
2017-07-21 18:12:55 -07:00
Ryan VanderMeulen f4e3a91992 Merge m-c to inbound. a=merge 2017-07-21 09:40:28 -04:00
Sebastian Hengst 367f0ac5a2 merge mozilla-inbound to mozilla-central. r=merge a=merge
MozReview-Commit-ID: IWRTFZdtzaE
2017-07-21 12:56:44 +02:00
Wes Kocher 61354cf6c0 Merge m-c to autoland, a=merge CLOSED TREE
MozReview-Commit-ID: 9pPsy8McMun
2017-07-21 18:18:35 -07:00
Sylvestre Ledru 7c0ae251cd Bug 1381253 - Remove redundant control flow declarations rs=ehsan
MozReview-Commit-ID: FFxP4aMCbOL

--HG--
extra : amend_source : 3aec108430b11048f47ffe19d5da7ac5034770a9
2017-07-15 19:03:04 +02:00
Michael Froman ab82f57025 Bug 1383272 - fixing incorrect comparison in RtpStreamId::Parse(...) r=bwc
When adding the length check for parsing RtpStreamId, I incorrectly used
the '<=' operator instead of the '>' operator.

MozReview-Commit-ID: 46XZBqWxkBc

--HG--
extra : rebase_source : 6290aeed489770070308aafacad01ce5b63a60a1
2017-07-21 15:54:11 -05:00