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

14830 Коммитов

Автор SHA1 Сообщение Дата
Wilmer Paulino 99af515866 Bug 1237668 - Remove nsSimpleUnicharStreamFactory r=froydnj 2016-01-11 19:31:29 -05:00
Eric Rahm 1828042c1f Bug 1174972 - Add basic mozilla logging backend. r=froydnj,r=bwc,r=jduell 2016-01-05 13:05:19 -08:00
Xidorn Quan f569fa65f9 Bug 1238404 - Use 'using' directive instead of having separate Dispatch impl in subclasses of nsIEventTarget. r=froydnj
--HG--
extra : source : 76255b192a7d6dae74f19c68653537d5f8f39775
2016-01-12 15:18:47 +11:00
Phil Ringnalda 52aade6b43 Back out 3e168e5a04bf (bug 1174972) for build bustage
CLOSED TREE
2016-01-11 20:04:40 -08:00
Eric Rahm f8d0e8949c Bug 1174972 - Add basic mozilla logging backend. r=froydnj,r=bwc,r=jduell 2016-01-05 13:05:19 -08:00
Mike Hommey 8810bde2ef Bug 1235099 - Remove the NS_APP_BOOKMARKS_50_FILE directory service key. r=dolske
Nothing in mozilla-central uses the NS_APP_BOOKMARKS_50_FILE/BMarks key except
tests. It's also not been very useful since the switch to places in ... Firefox
3? so even if addons use it, it's not doing them much good.
BookmarkHTMLUtils.defaultPath returns the same thing anyways for those that
really do insist on getting the equivalent thing (but I'd argue
BookmarkHTMLUtils.defaultPath, as well as the browser.bookmarks.file pref could
just go away as well).

Seamonkey does use NS_APP_BOOKMARKS_50_FILE/BMarks, but they really only need
the #define, which they can add in their source.
2016-01-12 08:01:52 +09:00
Christoph Kerschbaumer 71921c1eac Bug 1232803 - Convert JS callsites to use open2 within xpcom/ (r=sicking) 2016-01-11 12:17:10 -08:00
Mike Hommey 63439e34f6 Bug 1234012 - Remove the NS_APP_PROFILE_DEFAULTS_{NLOC_,}50_DIR directory keys. r=bsmedberg
Nothing apart the code that was just removed uses those keys, so remove them.
Actually, there is a use in Seamonkey, but considering they're shipping with
omnijar, the code expecting the directory has not been working as designed for
a while, so they can fixup and remove that use as well.
2016-01-09 07:30:32 +09:00
Michael Layzell d7f055a623 Bug 1226376 - Part 2: Annotate StaticMutex with MOZ_ONLY_USED_TO_AVOID_STATIC_CONSTRUCTORS, r=nfroyd 2016-01-08 15:34:24 -05:00
Terrence Cole fd0fcea703 Bug 1235923 - Part 2: Use new Root tracing APIs in Gecko; r=smaug 2015-12-30 11:31:16 -08:00
Nicholas Nethercote ec89bbf7f2 Bug 1237151 (part 3) - Remove ignored qualifiers in all remaining code. r=froydnj. 2016-01-05 17:08:45 -08:00
Chris Manchester a58dc78ade Bug 1237447 - Disable the crashreporter when crashing intentionally in TestPLDHash. r=njn
--HG--
extra : commitid : BIAIgGAkCYL
2016-01-07 12:27:10 -08:00
Eric Rahm 03ab641f88 Bug 1223222 - Part 3: Remove usage of PR_NewLogModule in mozilla LogModule code. r=froydnj 2016-01-05 12:16:03 -08:00
Eric Rahm 77c03426ad Bug 1223222 - Part 2: Add tests for NSPRLogModulesParser. r=froydnj 2016-01-05 12:15:59 -08:00
Eric Rahm b22e370676 Bug 1223222 - Part 1: Add NSPRLogModulesParser. r=froydnj
Adds basic parser for handling of the NSPR log module env var format.
2015-12-21 17:10:26 -08:00
Eric Rahm 9664d9a74d Bug 1233881 - Support dynamically setting log levels at runtime via prefs. r=froydnj
Adds support for changing log levels at runtime via 'logging.*' preferences.
2015-12-22 15:09:41 -08:00
Aaron Klotz 007abcfb31 Bug 1218473: Add check for presence of NVIDIA Optimus drivers to WindowsNopSpacePatcher; r=ehsan
--HG--
extra : rebase_source : 69a2905a9cb631b3f66418d46dcfc6fbd189baaa
2016-01-06 12:54:48 -07:00
Eugen Sawin c927fec54a Bug 1073224 - [1.2] Use SENSOR_ROTATION_VECTOR for DOM DeviceOrientation events on Android. r=vlad 2016-01-07 15:23:33 +01:00
Shu-yu Guo 1768759efb Bug 1220564 - Update chrome code uses of genexprs and legacy comprehensions. (r=billm) 2016-01-06 16:02:16 -08:00
Nicholas Nethercote 5a752050c8 Bug 1237169 (follow-up) - Fix static analysis bustage. r=me. 2016-01-06 15:31:46 -08:00
Nicholas Nethercote 3074545c18 Bug 1237169 - Remove some unused parameters in and around xpcom/base/. r=mccr8.
--HG--
extra : rebase_source : a3fd151aaecc1a21d14d51ce85c25413a6c3df5f
2016-01-05 19:32:28 -08:00
Terrence Cole 97c4c6520f Backout 7621c3ea95cb11e1c376a9f705accc0f90057c0a (bug 1235923) for build bustage on a CLOSED TREE.
--HG--
extra : rebase_source : 6c54aa7e1af75c270ab2b6833b56c780c537e297
2016-01-06 12:05:06 -08:00
Terrence Cole d38e840e6f Bug 1235923 - Part 2: Use new Root tracing APIs in Gecko; r=smaug 2015-12-30 11:31:16 -08:00
Wes Kocher 9b5c90690e Merge inbound to m-c a=merge
--HG--
extra : commitid : I44HufYdnXT
2016-01-05 16:02:49 -08:00
Carsten "Tomcat" Book d92e3c9113 Merge mozilla-central to b2g-inbound 2016-01-05 12:03:29 +01:00
Gabriele Svelto c7edb0ffaf Bug 1234176 - Introduce and use the WriteSysFile() helper function. r=dhylands
--HG--
extra : rebase_source : c976b7434f660bc7b5fdc19bce800990c96443cb
2015-12-29 11:49:50 +01:00
Terrence Cole bb224242a8 Bug 1235598 - Part 2: Use TraceEdge exclusively in Gecko; r=smaug
--HG--
extra : rebase_source : 27afd7eecd5a13f8d28b888b64d5e44b3c4a74a5
2015-12-30 08:52:14 -08:00
Felix Janda c40483da3d Bug 1203272 - Fix build of nsMemoryReporterManager on linux systems without mallinfo(). r=glandium,njn.
--HG--
extra : rebase_source : 704d0eb36b63810b890361b1785b5bf3f6e8e324
2016-01-01 11:10:54 +01:00
Bogdan Postelnicu a2071162e7 Bug 1234542 - Don't use fallible Add in SetStringProperty. r=froydnj
--HG--
extra : rebase_source : 697c493e0150953f6a8fb152109ef228673f15a0
2016-01-04 07:14:00 -05:00
Nicholas Nethercote a9f31c44eb Bug 1232219 (part 4) - Enable -Wunused for C code, except where it's too annoying. r=glandium.
--HG--
extra : rebase_source : febc9aac7ec5e3699742e728065c370dcee4f0f3
2015-12-16 22:59:42 -08:00
Nathan Froyd cedf0dc1a3 No bug - remove tab from xpcom/test/gtest/moz.build file; r=me
DONTBUILD because whitespace only changes are always green.
2016-01-04 16:17:53 -05:00
Mike Conley e62894147e Bug 1221846 - Get Task Tracer building on desktop r=cyu.
--HG--
extra : rebase_source : 0666526a249c106274a4c764e325cd9810e9a2e7
2015-12-02 20:55:38 -05:00
Nathan Froyd 0fe98fa9ef Bug 1234860 - move win32 NS_InvokeByIndex implementation to a separate assembly file; r=aklotz,ted.m
On win32, NS_InvokeByIndex is implemented with inline assembly.  This
inline assembly assumes that it is wrapped by the compiler with the
standard x86 prologue and epilogue:

    push ebp
    mov ebp, esp
    [inline assembly that manipulates the stack pointer]
    pop ebp
    ret

In particular, the last instruction of the inline assembly is:

    mov esp, ebp

which cancels out the effects of the stack manipulation performed by all
the inline assembly that proceeds the instruction.

When compiling with clang-cl, however, the above assumption does not
hold, as clang-cl inserts a more complex prologue and epilogue,
something like:

    push ebp
    mov ebp, esp
    sub esp, frame_size
    [save registers into stack frame]
    [inline assembly that manipulates the stack pointer]
    [restore registers from stack frame]
    add esp, frame_size
    mov esp, ebp
    pop ebp
    ret

Combining this more extensive prologue and epilogue with the assumptions
of the inline assembly leads to interesting crashes when
NS_InvokeByIndex is called: the inline assembly effectively deallocates
the stack allocated by the inline assembly *and* the stack frame
allocated by the compiler itself.  The compiler-generated code then
attemptes to deallocate the stack frame, leading to the crash, as the
code now returns to an unspecified address.

To avoid these sorts of problems in clang-cl and make the code more
robust generally, let's move the NS_InvokeByIndex implementation to a
separate assembly file.  We can then write exactly what we need to have
happen, safe from any manipulations of the compiler.

Since we don't compile much (any?) code in Gecko with MASM, we need to
add the /SAFESEH flag to the assembler invocation so that the object
file with be appropriately marked as not containing exception handlers;
the linker (which is invoked with the /SAFESEH flag itself) will then
consent to link it into libxul.
2015-12-23 11:45:38 -05:00
Wes Kocher a69ea37914 Backed out 2 changesets (bug 1235598) for linux reftest bustage
Backed out changeset 3bcd3c276785 (bug 1235598)
Backed out changeset 80cd10a8b3d7 (bug 1235598)

--HG--
extra : commitid : DZRlFy6bH2m
extra : rebase_source : 3479cd1146e58115883f2329861647a962d162cc
2015-12-31 15:51:13 -08:00
Terrence Cole 9d97726f6c Bug 1235598 - Part 2: Use TraceEdge exclusively in Gecko; r=smaug
--HG--
extra : rebase_source : c18f7e97d09f0cd91d0d837d2cdc65926cd3de64
2015-12-30 08:52:14 -08:00
Olli Pettay 5ca565690e Bug 1120016 - Allocate short lived JS wrappers in the Nursery, r=mccr8,terrence 2015-12-31 15:21:49 +02:00
Makoto Kato 41219d5981 Bug 1208944 - Part 4. nsWindowsDllInterceptor supports IMM32 API hook. r=ehsan 2015-12-29 22:57:38 +09:00
Wes Kocher 792ca14825 Backed out changeset 0d55a6e4e98e (bug 1120016) for 980 b2g hazards
--HG--
extra : commitid : 27OIHVsa17S
2015-12-30 16:34:18 -08:00
Terrence Cole 2d98949f4f Backout Bug 1235598 Part 2 because of merge bustage on a CLOSED TREE 2015-12-30 15:05:24 -08:00
Terrence Cole 4710ce6d97 Bug 1235598 - Part 2: Use TraceEdge exclusively in Gecko; r=smaug
--HG--
extra : rebase_source : fba9dbd3f6bc7b36074f58d11c411deb84c1ff1e
2015-12-30 08:52:14 -08:00
Jeff Walden 5be7be38a1 Bug 1235615 - Split JS::CompartmentOptions into JS::CompartmentCreationOptions that are immutable characteristics of a compartment, and JS::CompartmentBehaviors that may be changed after the compartment's been created. r=terrence
--HG--
extra : rebase_source : f08c380ae247d3308d4c36788ac765de1b75af50
2015-12-28 16:15:52 -06:00
Olli Pettay 2066f6d7b3 Bug 1120016 - Allocate short lived JS wrappers in the Nursery, r=mccr8,terrence
--HG--
extra : rebase_source : 3d51b7fc9962a93eb6071328db84b5b327225246
2015-12-30 19:16:13 +02:00
Sebastian Hengst e082884d78 Backed out 15 changesets (bug 1208944) for failing tests M(2,5) on OSX. r=backout
Backed out changeset c29de223de2f (bug 1208944)
Backed out changeset 3d99da255be1 (bug 1209844)
Backed out changeset 3c915942af38 (bug 1209844)
Backed out changeset 759b425b5503 (bug 1208944)
Backed out changeset bf73cf8f0fda (bug 1208944)
Backed out changeset 0e337d912b7d (bug 1208944)
Backed out changeset 31c47f2980b5 (bug 1208944)
Backed out changeset 3e0d70a6e809 (bug 1208944)
Backed out changeset 7685dcb63e5f (bug 1208944)
Backed out changeset 3c2b9372dd36 (bug 1208944)
Backed out changeset 18160d306493 (bug 1208944)
Backed out changeset 4974e397b655 (bug 1208944)
Backed out changeset fde7e439844d (bug 1208944)
Backed out changeset 4213a355fbdc (bug 1208944)
Backed out changeset 33cfddbbf5f2 (bug 1208944)
2015-12-29 17:42:02 +01:00
Makoto Kato a4309e941a Bug 1208944 - Part 4. nsWindowsDllInterceptor supports IMM32 API hook. r=ehsan 2015-12-29 22:57:38 +09:00
Sebastian Hengst 5a0c92b331 Backed out changeset 6daddfb64d72 (bug 1228437) for timing out in test_NuwaProcessCreation.html on B2G ICS emulator debug. r=backout 2015-12-27 23:33:02 +01:00
Vladan Djeric 8a014a7505 Bug 1228437 - Add BHR stats from e10s child process. r=nchen 2015-12-26 19:34:11 -05:00
Jeff Muizelaar e041883a02 Bug 1234618. Fix misdetected BHR hangs. r=jchen
A bunch of threads have their wait time set to PR_INTERVAL_NO_TIMEOUT and so
we divide this by 4 and set waitTime to that. This causes us to wait a very
long but not PR_INTERVAL_NO_TIMEOUT amount of time and so we still update
mIntervalNow and think that we've been hung for a long time when comparing
to the mInterval in the current thread which is set to the previous value of
mIntervalNow.
2015-12-22 18:33:51 -05:00
Chris Peterson 72a9d3bf1f Bug 1234126 - Add Chaos Mode support for setting thread affinity on OS X and Windows. r=froydnj 2015-11-30 19:16:40 -08:00
Geoff Brown c0573a940f Bug 1144393 - Use /storage/sdcard in preference to /sdcard for adb device root and enable test_file_equality.js; r=jmaher 2015-12-21 14:24:08 -07:00
Kit Cambridge 1c0dc1a969 Bug 1205137 - Add a `PushSubscription` serializer. r=mt,smaug
--HG--
extra : commitid : F5xjqIFcach
extra : rebase_source : 61b0a0cbae318f7afc51752fc31a7133b8abd15c
2015-12-14 16:28:19 -08:00
Andrew McCreight 84e0c59589 Bug 1231964 - Move CC participant code that touches JS out of mozglue. r=smaug
The JS engine does not export symbols outside of XUL, so having these
defined inside mozglue apparently causes linking errors on some
platforms with the patches in bug 1120016.

This patch moves enough methods outside of mozglue that the patch in
that other bug will still link on all platforms, without moving so
much out that there are other linking errors.

--HG--
rename : xpcom/glue/nsCycleCollectionParticipant.cpp => xpcom/base/nsCycleCollectorTraceJSHelpers.cpp
2015-12-18 14:22:01 -08:00
Birunthan Mohanathas 1cc56207d5 Bug 1227569 - Remove unsupported OpenVMS code. r=mccr8 2015-12-18 15:02:50 +02:00
Andrea Marchesini f2f6c3be20 Bug 901097 - FileReader API in workers, r=sicking, r=nfroyd
--HG--
rename : dom/base/test/fileapi_chromeScript.js => dom/workers/test/fileapi_chromeScript.js
2015-12-18 08:44:00 +00:00
Daniel Holbert 31284e2a5e Bug 1233566: Drop unnecessary newline character from NS_WARNING in nsPersistentProperties. r=froydnj 2015-12-17 15:07:08 -08:00
Sebastian Hengst fe800f661e Backed out changeset 30839ee209e8 (bug 901097) for mochitest failures on Android and Mulet. r=backout 2015-12-17 14:13:59 +01:00
Andrea Marchesini 35ff8e160c Bug 901097 - FileReader API in workers, r=sicking, r=nfroyd
--HG--
rename : dom/base/test/fileapi_chromeScript.js => dom/workers/test/fileapi_chromeScript.js
2015-12-17 12:00:35 +00:00
Makoto Kato 385785d472 Bug 1233283 - Remove unless tmp from ReadDir in nsLocalFileWin. r=froydnj 2015-12-17 13:55:38 +09:00
Aaron Klotz ce7e5fad6d Bug 1233208: Disable IOInterposer on Beta and Release; r=froydnj
--HG--
extra : rebase_source : 9b82f5eaf56f5952d85488a39b872643e684190f
2015-12-16 14:36:44 -07:00
Wes Kocher e23593462a Backed out changeset 84c8783b8518 (bug 901097) for test_fileReader.html crashes CLOSED TREE
--HG--
extra : commitid : crWlUUwg6J
2015-12-16 09:43:42 -08:00
Andrea Marchesini 7a681c85f9 Bug 901097 - FileReader API in workers, r=sicking, r=nfroyd
--HG--
rename : dom/base/test/fileapi_chromeScript.js => dom/workers/test/fileapi_chromeScript.js
2015-12-16 12:37:31 +00:00
Carsten "Tomcat" Book af9ca82bf2 Backed out changeset d74d1e794421 (bug 901097) for bustage on a CLOSED TREE 2015-12-16 11:48:40 +01:00
Andrea Marchesini 97ccffac37 Bug 901097 - FileReader API in workers, r=sicking, r=nfroyd
--HG--
rename : dom/base/test/fileapi_chromeScript.js => dom/workers/test/fileapi_chromeScript.js
2015-12-16 10:15:03 +00:00
ffxbld 1d2b3f2fb6 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2015-12-14 15:15:51 -05:00
Jim Mathies 114d93fb4c Bug 1198459 - Prevent accessibility from initializing in content processes when e10s is running. r=tbsaunde
--HG--
extra : transplant_source : %A0R%E2Nhk%25%F7%BE%9D%E1%96W_%AD%27%DEC%F2%AC
2015-12-10 14:28:33 -05:00
Carsten "Tomcat" Book 8431613ae5 Backed out changeset bcb4ebf6ffac (bug 1198459) for bustage 2015-12-10 11:14:27 +01:00
Jim Mathies 33f95db847 Bug 1198459 - Prevent accessibility from initializing in content processes when e10s is running. r=tbsaunde
--HG--
extra : transplant_source : %BA%D2uF7%D5%C1jg%0E%BA%9B%84u%3D%10n%C0%93%8B
2015-12-09 08:35:06 -05:00
Andrea Marchesini c2230f21f8 Bug 1231100 - Get rid of nsIDOMFileReader - patch 1, r=sicking 2015-12-09 15:52:15 -05:00
Jonathan Kew 19215680b3 Backout changeset aad9086f8efd (bug 1226376) for breaking Opt static-analysis build. 2015-12-09 13:21:42 -05:00
Michael Layzell 872327c4ab Bug 1226376 - Annotate StaticMutex with MOZ_ONLY_USED_TO_AVOID_STATIC_CONSTRUCTORS, r=nfroyd 2015-12-09 11:34:29 -05:00
Andrea Marchesini ebc5b1a50f iBug 1122788 - patch 2 - nsMultiplexInputStream should not use Tell() in debug builds, r=bz 2015-12-05 09:36:51 +00:00
Andrea Marchesini c018e81125 Bug 1122788 - patch 1 - nsMultiplexInputStream should not use Tell() in debug builds, r=bz 2015-12-05 09:35:49 +00:00
Mike Hommey 6e154bf9b9 Bug 1227023 - Include the Gtk+3 version in update URL if available on Gtk+2 builds. r=karlt
Instead of giving the Gtk+2 version.
2015-12-05 11:04:21 +09:00
Wes Kocher 18c24e60a0 Backed out changeset d271b9e473fd (bug 1122788) for being a possible cause of test_fileapi.html bustage CLOSED TREE
--HG--
extra : commitid : JtZfexvrBDK
2015-12-04 15:21:24 -08:00
Andrea Marchesini 17ff0fc26a Bug 1122788 - nsMultiplexInputStream should not use Tell() in debug builds, r=bz 2015-12-04 21:17:44 +00:00
Chris Peterson 46bb7c80dd Bug 1228947 - Replace mfbt/Constants.h with math.h. r=roc
--HG--
extra : rebase_source : 4ab2c4a917ea90055e48bd6adcb53904f2266ee0
2015-11-27 20:49:55 -08:00
Nathan Froyd c381a6b86c Bug 1218454 - part 2 - don't #include nsContentUtils.h from CallbackObject.h; r=bz
We used to need nsContentUtils.h here for nsCxPusher, but since that got
moved to ScriptSettings.h, we no longer need nsContentUtils.h for
anything.
2015-10-26 12:14:47 -04:00
Boris Zbarsky 29345faced Bug 1229664. Drop the concept of inner exceptions from Exception/DOMException. r=bholley 2015-12-02 13:52:59 -05:00
Lars T Hansen f6742410f9 Bug 1176214 - Part 15: Changes to xpcom. r=nfroyd
--HG--
extra : rebase_source : 661ab7ca0fe93d626257525cb7b6f4663a3d19ba
2015-11-13 15:08:30 +01:00
Nicholas Nethercote ddc78c3b0c Bug 1229458 - Remove SizeOfIncludingThisMustBeUnshared() from string classes. r=mccr8.
The patch changes all uses of SizeOfIncludingThisMustBeUnshared() to
SizeOfIncludingThisIfUnshared(). This incurs the (tiny) cost of an unnecessary
IsReadonly() check for guaranteed-unshared strings, but avoids the possible
assertion failures that would occur when MustBeUnshared() was used incorrectly
on shared strings, which is an easy mistake to make.

--HG--
extra : rebase_source : b1e91f1c19bcbe0521b0ce461d6c90512ca938ef
2015-12-01 15:36:26 -08:00
Jean-Yves Avenard b9f3760d8a Bug 1229299: Use tail dispatch to notify the mirror of new value. r=bholley
This ensures that tasks are run in the proper order.
2015-12-02 10:41:17 +11:00
Nathan Froyd 8a2948e596 Bug 1225923 - part 1 - convert all needs-to-copy instances of AppendElement(nsDependentString(...)); r=erahm
When people write:

  array.AppendElement(nsDependentString(...));

(resp. nsDependentCString), it's not clear whether they expect the newly
constructed dependent string to live in the array, or whether they're
just making a nsString-like holder whose contents can be freely copied
into the array's newly-created nsString.  Sometimes the latter is what
you prefer, and sometimes the former.  In all cases, however, the latter
behavior is what you get.

Let's try to make that behavior more explicit by pre-constructing
nsString elements and then using Assign to show that copying is taking
place.  This patch involves no functional change in behavior (it ought
to be epsilon faster due to using AppendElements, rather than repeatedly
calling AppendElement).
2015-11-18 10:25:19 -05:00
Nathan Froyd 319ac39f93 Bug 1229099 - use snprintf instead of JS_snprintf in xpcom/; r=mccr8 2015-11-30 13:54:03 -05:00
Nicholas Nethercote d180cd4a92 Bug 1181444 (part 1) - Remove nsBaseHashtable::EnumerateRead(). r=froydnj.
--HG--
extra : rebase_source : c07a83a2984ca4e67f3441d9e18b6bbac772495d
2015-11-22 14:39:01 -08:00
Phil Ringnalda 2ad5117d1a Back out a25efba616ac (bug 1218473) on suspicion of causing Windows 8 shutdown crashes "with exit code 3221225477" 2015-11-29 12:38:30 -08:00
Aaron Klotz 9162a0feda Bug 1218473: Add check for presence of NVIDIA Optimus drivers to WindowsNopSpacePatcher; r=ehsan
--HG--
extra : rebase_source : f179d1f950faccf71415c9a694160bc65d014fbb
2015-11-27 13:01:23 -07:00
Mike Hommey 0cc838448f Backout changeset 0104f1c911ca (bug 1223530) because it breaks running on Windows XP on a CLOSED TREE
--HG--
rename : toolkit/components/maintenanceservice/Makefile.in => xpcom/windbgdlg/Makefile.in
2015-11-26 08:38:16 +09:00
Ted Mielczarek 879065de9d bug 1223530 - Move MOZ_WINCONSOLE to configure. r=glandium
This patch moves the logic for selecting MOZ_WINCONSOLE out of individual
Makefile.in files and into configure. It also changes config.mk to only
pass -SUBSYSTEM:CONSOLE if MOZ_WINCONSOLE=1. The MSDN docs state that
in the absence of -SUBSYSTEM, the linker will select the proper subsystem
based on whether the program contains [w]main or [w]WinMain, so let it
do that.

One program (windbgdlg) needed a tweak to add a wmain for when MOZ_WINCONSOLE
is defined.

This patch leaves one instance in security/sandbox/win/wow_helper/Makefile.in,
that Makefile has its own separate bug.

--HG--
extra : commitid : 8acDjmfKivj
extra : rebase_source : 03b4fa4c8ae077a894b08f3762ef93541e34ac1a
2015-11-11 06:24:39 -05:00
Mike Hommey 70a5b9589d Bug 1227388 - Finish removing dehydra support. r=mshal
Dehydra/Treehydra is unmaintained, broken (iirc), and obsoleted by clang
static analysis. We've removed parts of the build system support for it, but
not all. This is meant to remove the remains.
2015-11-25 08:23:25 +09:00
Nick Fitzgerald b8340cdc7c Bug 1225618 - Do not capture stacks for cycle collection timeline markers; r=vporof 2015-11-23 16:50:56 +01:00
Nicholas Nethercote d63cd22524 Bug 1221376 - Remove PL_DHASH_STOP. r=froydnj.
All uses of it have been removed.
2015-11-03 17:22:15 -08:00
Francois Marier 67506f65a6 Bug 1216723 - Add a new -forbid- Safe Browsing list type. r=gcp,r=smaug 2015-11-20 20:24:50 -08:00
Gijs Kruitbosch 161662dac8 Bug 1191468 - always load app dir add-ons irrespective of enabledScopes, r=Mossop,froydnj
--HG--
extra : commitid : 4O0JNbchonb
extra : rebase_source : f218722dd70f74a45e4dbb461a7faaa3ef1d1d81
extra : amend_source : 538b86815da89ccf5b3e7e42412019064123ccfe
2015-11-17 13:55:31 +00:00
Randell Jesup edaa76fc23 Bug 1211602: Never timeout if timeout == UINT32_MAX r=jib,froydnj 2015-11-18 15:03:17 -05:00
Valentin Gosu 67b179e6f9 Bug 412457 - should unescape hostname first, then perform IDNA r=mcmanus 2015-11-18 15:25:27 +01:00
Nicholas Nethercote 4e44ab2954 Bug 1225365 - Fix assertion in the nsScriptNameSpaceManager memory reporter. r=bz.
Also, use a fatal assertion in
nsStringBuffer::SizeOfIncludingThisMustBeUnshared().

--HG--
extra : rebase_source : ba35e67fa00dab55e509970e567116f52aee17ee
2015-11-17 14:46:46 -08:00
Eric Rahm 0ac3743813 Bug 1224685 - Add |resident-unique| measurement to Windows. r=njn 2015-11-13 13:44:48 -08:00
Wes Kocher 187dd319f1 Merge m-c to inbound, a=merge
--HG--
extra : commitid : DGwcWNlrDUA
2015-11-16 17:27:08 -08:00
Wes Kocher c4f40f5dfc Merge inbound to m-c a=merge
--HG--
extra : commitid : 8FO2ow49CX2
2015-11-16 17:20:42 -08:00
Cameron McCormack fa1a36783a Bug 1225004 - Record reason for NS_ERROR_FILE_CORRUPTED in nsLayoutStylesheetCache::LoadSheet in crash reports. r=roc 2015-11-16 19:18:45 +11:00
Chris H-C f474e96ad9 Bug 1223800 - Accept BHR reports from 50% of beta clients. Up from 1%. r=vladan 2015-11-13 12:09:54 -05:00
Wes Kocher 12532a74a8 Backed out changeset 4efb6cc4fd5d (bug 1225004) for build bustage CLOSED TREE
--HG--
extra : commitid : 4eYsywoFekg
2015-11-16 14:51:17 -08:00
Chris H-C 68d9730223 Bug 1198196 - rework EVENTLOOP_UI_LAG_EXP_MS to record all lag. r=vladan
Previously we were only logging if we accumulated 50ms of lag. Start logging
all lag so we can use this measure to compare smaller changes in UI
responsiveness.
2015-11-11 14:01:00 +01:00
Nigel Babu ef1ce5e989 Backed out changeset 6d47b0590988 (bug 1225004) for ASAN build bustage on a CLOSED TREE
--HG--
extra : amend_source : e082a4a17e47eac5922bcec3059999fae6798cb1
2015-11-16 14:46:58 +05:30
Cameron McCormack fa99a8cc59 Bug 1225004 - Record reason for NS_ERROR_FILE_CORRUPTED in nsLayoutStylesheetCache::LoadSheet in crash reports. r=roc 2015-11-16 19:18:45 +11:00
sajitk 8eb3a68c9e Bug 1201997 - Part 4 - Change size and offset variables to size_t.r=froydn 2015-11-15 14:48:08 +01:00
sajitk e97680a76a Bug 1201997 - Part 3 - Make internally used methods private. r=froydn 2015-11-15 14:48:02 +01:00
sajitk fa8035029e Bug 1201997 - Part 2 - Removing unused methods from the nsDeque class. r=froydn 2015-11-15 14:47:55 +01:00
sajitk 6418c52357 Bug 1201997 - Part 1 - Converted compiled test to gtest for nsDeque class. Added tests to test untested methods. r=froydn
--HG--
rename : xpcom/tests/TestDeque.cpp => xpcom/glue/tests/gtest/TestNsDeque.cpp
2015-11-15 14:47:49 +01:00
Nathan Froyd 4acd4505dd Bug 1217047 - try harder in IsContractIDRegistered to return a reasonable answer; r=bsmedberg,f=yury 2015-10-20 15:06:42 -04:00
Cameron McCormack 6087c6d62a Bug 1225004 - Record reason for NS_ERROR_FILE_CORRUPTED in nsLayoutStylesheetCache::LoadSheet in crash reports. r=roc 2015-11-16 19:18:45 +11:00
Eric Rahm 53da6e4ad3 Bug 1223927 - Add resident-unique measurement to OS X. r=njn 2015-11-11 14:07:30 -08:00
Gijs Kruitbosch 463f87d708 Bug 1223142 - make XPIDL set default nullptrs for optional out parameters, r=bz
--HG--
extra : commitid : 8pSPKD5AdOY
extra : transplant_source : %F2%8D%0D%20D4%98%7C%2A%16L%04%C0%88%24%AB%19%19%B2s
2015-11-05 22:45:25 +00:00
Gijs Kruitbosch 35bed1c0ce Bug 1209591 - allow loadURI consumers to expose whether an error page was immediately loaded as result of an error, r=smaug,mak
--HG--
extra : commitid : 9tlkWrUKl12
extra : rebase_source : bb5b476dc28cebc66a99d23934a5214530e9a008
extra : amend_source : f62e5a91df5af9eea893fbb9a13980e9fdd56a38
2015-10-27 16:44:24 +01:00
Boris Zbarsky 2c6c586ca9 Bug 1219749. Add a way to faithfully propagate the "exception is already on JSContext" state through an ErrorResult. r=peterv 2015-11-09 20:47:05 -05:00
Wes Kocher e943bc8e33 Merge m-c to inbound a=merge
--HG--
extra : commitid : IcbfYN5aCjt
2015-11-06 15:13:35 -08:00
Carsten "Tomcat" Book f2961bc526 Merge mozilla-central to b2g-inbound 2015-11-06 14:00:33 +01:00
Fabrice Desré a76d9cfc62 Bug 1220344 - remote some of nsSystemInfo to make it e10s ready on Android r=nchen,froydnj 2015-11-04 11:08:14 -08:00
Carsten "Tomcat" Book 8bb69a1d1d Backed out changeset 8d3ff1d1a809 (bug 1220344) for failing android tests
--HG--
extra : rebase_source : a1d9f59c12c44ccf24af88566c6531e08a11db4e
2015-11-05 11:48:06 +01:00
Botond Ballo 5bf85e9f9d Bug 1220923 - Make nsIntRegion a typedef for IntRegionTyped<UnknownUnits>. r=nical
--HG--
extra : source : 1f371f014048ed4c3c25095233fea927311a7e23
2015-11-04 11:49:49 -05:00
Mike Hommey 762aba02cd Bug 1221453 - Use ObjDirPaths for GENERATED_INCLUDES and merge with LOCAL_INCLUDES. r=gps 2015-11-06 09:59:21 +09:00
Fabrice Desré 04ce4a4632 Bug 1220344 - remote some of nsSystemInfo to make it e10s ready on Android r=nchen,froydnj 2015-11-04 11:08:14 -08:00
Kit Cambridge 1a2d174fbf Bug 1206302 - Use `DOMException` for Push errors. r=mt
--HG--
extra : commitid : 12nCKPtERml
extra : rebase_source : 1d59f113235a98ca30653d2c935e0cc2e7bc8931
2015-11-05 10:38:35 -08:00
Jan de Mooij a84c33ecb0 Bug 1125423 part 1 - Attach WindowProxies to globals instead of using innerObject/outerObject hooks. r=bz,luke 2015-11-06 19:03:51 +01:00
Chris Peterson 4a9be99fc7 Bug 1220544 - Fix -Wunreachable-code warnings in xpcom. r=mccr8
xpcom/glue/PLDHashTable.cpp:471:10 [-Wunreachable-code-return] 'return' will never be executed
xpcom/tests/TestAutoPtr.cpp:324:9 [-Wunreachable-code] code will never be executed
xpcom/tests/TestBlockingProcess.cpp:6:11 [-Wunreachable-code-return] 'return' will never be executed
2015-11-02 21:03:03 -08:00
Nathan Froyd a5557d1390 Bug 1219246 - use UniquePtr instead of nsAuto*Ptr in xpcom/; r=erahm 2015-10-31 13:47:14 -04:00
Valentin Gosu f4d3791247 Bug 1163030 - URL: stop escaping ` in query r=mcmanus 2015-11-02 13:55:24 +01:00
Valentin Gosu e96a491a5d Bug 1163028 - URL: stop escaping [ and ] in path r=mcmanus 2015-11-02 13:54:10 +01:00
Birunthan Mohanathas e968844794 Bug 968520 - Always use fallible allocator with nsTArray_base::ShrinkCapacity. r=froydnj
We don't need infallible allocation here because failure to shrink the
capacity will leave the array unchanged.
2015-11-02 07:53:27 +02:00
Birunthan Mohanathas c6fdc8821b Bug 968520 - Explicitly use infallible allocator for ShiftData call in nsTArray::RemoveElementsAt. r=froydnj
This call will never fail so this merely makes the intent clear.
2015-11-02 07:53:27 +02:00
Birunthan Mohanathas d72daf8147 Bug 1185763 - Part 7: Add test for r-value nsTArray::AppendElements. r=froydnj 2015-11-02 07:53:26 +02:00
Birunthan Mohanathas ec6faa8712 Bug 1185763 - Part 6: Add fallible variant of r-value nsTArray::AppendElements. r=froydnj 2015-11-02 07:53:26 +02:00
Birunthan Mohanathas 9985829ecc Bug 1219392 - Capitalize mozilla::unused to avoid conflicts. r=froydnj 2015-11-02 07:53:26 +02:00
Jeff Walden 790d87d4be Bug 1208808 - Move time zone adjustment information out of JSRuntime, into global state protected by a spinlock. r=till
--HG--
extra : rebase_source : b412e298217a2857bf34b73b1128c97cc047e6af
2015-10-30 16:14:32 -07:00
Nathan Froyd 78c64c0cde Backout 5649b6b8cec3 (bug 1219246) for Linux xpcshell bustage 2015-10-31 13:34:06 -04:00
Nathan Froyd a5bf910f3f Bug 1219246 - use UniquePtr instead of nsAutoArrayPtr in xpcom/; r=erahm 2015-10-28 09:50:29 -04:00
Phil Ringnalda b79efb4eaf Back out changeset 6e21339a66ed (bug 1208808) for bustage in the mislabelled and deceptive arm64 simulator
CLOSED TREE
2015-10-31 01:44:22 -07:00
Jeff Walden 1b692c0c1a Bug 1208808 - Move time zone adjustment information out of JSRuntime, into global state protected by a spinlock. r=till
--HG--
extra : rebase_source : 1c59ffd1509c52791ab737df338962cf2c68dbc0
2015-10-30 16:14:32 -07:00
Chris Peterson 4cbe614b32 Bug 1220035 - Fix -Wimplicit-fallthrough warnings in xpcom. r=mccr8
xpcom/base/nsDebugImpl.cpp:458:5 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
xpcom/ds/nsCheapSets.h:139:5 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
xpcom/ds/nsPersistentProperties.cpp:232:9 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
xpcom/ds/nsVariant.cpp:360:5 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
xpcom/ds/nsVariant.cpp:766:5 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
xpcom/ds/nsVariant.cpp:1658:9 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
xpcom/ds/nsVariant.cpp:1661:5 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
xpcom/glue/nsTextFormatter.cpp:355:5 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
xpcom/glue/nsTextFormatter.cpp:362:5 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
xpcom/io/nsWildCard.cpp:85:7 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
xpcom/io/nsWildCard.cpp:401:7 [-Wimplicit-fallthrough] unannotated fall-through between switch labels
2015-10-29 21:31:32 -07:00
Wes Kocher d31ed2617b Merge inbound to central, a=merge
--HG--
extra : commitid : GwjoFY5dx7Q
2015-10-30 16:35:46 -07:00
Alessio Placitelli 756ef8e1ff Bug 1219751 - Change the the depth limit of the thread hangs stack to use the 99th percentile. r=gfritzsche 2015-10-29 08:05:00 +01:00
Carsten "Tomcat" Book 6d8a42769f Backed out changeset d84d5faa4852 (bug 1201997) for m2 perma failures
--HG--
rename : xpcom/glue/tests/gtest/TestNsDeque.cpp => xpcom/tests/TestDeque.cpp
extra : rebase_source : 689453beeca1b317d9b2f57889ba1b133b628821
2015-10-30 15:53:22 +01:00
Carsten "Tomcat" Book c6da644f91 Backed out changeset 9390b1ece0ad (bug 1201997)
--HG--
extra : rebase_source : 68e7e60c942c44905f4c9bd5f36977a9e8a9c5b0
2015-10-30 15:52:23 +01:00
Carsten "Tomcat" Book eb7db9ff93 Backed out changeset 91536bfeff0f (bug 1201997)
--HG--
extra : rebase_source : 6f11d67034e876738ecda6f1e32c8e655252660f
2015-10-30 15:52:21 +01:00
Carsten "Tomcat" Book 4c0ed54e29 Backed out changeset 9093e927a247 (bug 1201997)
--HG--
extra : rebase_source : c47b13e37a7756243a68cf15555bf176c0de8600
2015-10-30 15:52:18 +01:00
Honza Bambas ba03a4f818 Bug 1219726 - Nit: Tokenizer.ShortcutChecks gtest should use nsDependentCSubstring. r=nfroyd 2015-10-29 05:58:00 +01:00
sajitk fe2a36f981 Bug 1201997 - Part 4 - Change size and offset variables to size_t.r=froydn
--HG--
extra : rebase_source : 0fd59eb6513e1af0162a9a02c6041182e556b9e7
2015-10-29 19:58:00 +01:00
sajitk 346dbc9c43 Bug 1201997 - Part 3 - Make internally used methods private. r=froydn
--HG--
extra : rebase_source : 0cf8b2f60b98f6853d495b8caad87117b3e5b9cb
2015-10-29 19:57:00 +01:00
sajitk c6255f9679 Bug 1201997: Part 2 - Removing unused methods from the nsDeque class. r=froydn
--HG--
extra : rebase_source : 1e6115ce85d19a25f59310863365586e669affef
2015-10-29 19:56:00 +01:00
sajitk d4bc9904dc Bug 1201997: Part 1 - Converted compiled test to gtest for nsDeque class. Added tests to test untested methods. r=froydn
--HG--
rename : xpcom/tests/TestDeque.cpp => xpcom/glue/tests/gtest/TestNsDeque.cpp
extra : rebase_source : 76fe6e0468ad1e0402a536bcb313bd4bb83f9c17
2015-10-29 19:55:00 +01:00
Ben Kelly a4dd10345e Bug 1215140 P8 Remove now unnecessary interception values from ErrorList.h. r=bz 2015-10-29 19:53:25 -07:00
Wes Kocher 76452b103c Merge m-c to fx-team, a=merge CLOSED TREE
--HG--
extra : commitid : 7i8epxLlM7z
2015-10-29 15:30:24 -07:00
Alessio Placitelli 24467c91c6 Bug 1219216 - Fix a wrong comment in BackgroundHangMonitor.h. r=gfritzsche 2015-10-28 05:47:00 +01:00
ffxbld ec6c8fefef Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2015-10-29 07:45:54 -04:00
Makoto Kato e5153e1c2b Bug 1218315 - Use L"..." instead of MOZ_UTF16(...) for MSVS2015. r=nfroyd 2015-10-28 22:36:40 +09:00
Makoto Kato 0298c31d73 Bug 1218315 - Replace NS_LITERAL_STRING(...).get() with MOZ_UTF16(...) on xpcom. r=nfroyd 2015-10-28 14:29:49 +09:00
Birunthan Mohanathas 44936aabb2 Bug 1217320 - Remove more XPIDL signature comments in .cpp files. r=froydnj
Comment-only, DONTBUILD.
2015-10-27 06:54:25 +02:00
Nathan Froyd 4c29b7694f Bug 1217940 - remove BindingUtils.h from CycleCollectedJSRuntime.cpp; r=mccr8 2015-10-23 14:01:02 -04:00
Tooru Fujisawa 1619a85fbf Bug 1217424 - Remove for-each from xpcom/. r=bholley
--HG--
extra : commitid : 6mnwhyI2pYK
2015-10-19 05:43:45 +09:00
Cameron McCormack 235db06383 Bug 1208951 - Part 9: Implement KeyframeEffectReadOnly constructor. r=bzbarsky r=birtles 2015-10-22 19:22:38 +11:00
Nathan Froyd 9a687fd23b Bug 1217125 - remove pointless includes from nsTHashtable.h; r=mccr8 2015-10-03 00:47:14 -04:00
Eric Rahm 5b38c55967 Bug 1174785 - Part 2: Convert xpcom over to LogModule. r=froydnj
--HG--
extra : rebase_source : 58d3b32bd0174f2540512cef810cafdd3556ef6b
2015-10-19 12:50:14 -07:00
Eric Rahm e6f7a67577 Bug 1174785 - Part 1: Add LogModule, LogModuleManager, and LazyLogModule. r=froydnj
The logging interface is moved to xpcom/base, a LogModule wrapper for PR_Log is
added, a thread-safe LogModuleManager is added, and a LazyLogModule class used
to lazily load log modules in a thread-safe manner is added.

--HG--
rename : xpcom/glue/Logging.h => xpcom/base/Logging.h
extra : rebase_source : 89b76664d9477e2c894448cdea4dae1c61f8ca24
2015-10-19 12:22:11 -07:00
Eric Rahm c0ca405938 Bug 1215629 - Remove nsDebug logger. r=froydnj 2015-10-16 16:23:49 -07:00
Ehsan Akhgari ecda739d3e Bug 1216177 - Remove the remaining nsRefPtr forward declarations; r=froydnj 2015-10-19 12:02:14 -04:00
Cervantes Yu 072315fb98 Bug 1213795, Part 1: Don't fire timers in the Nuwa process to fix test case test_NuwaProcessDeadlock.html. r=khuey 2015-10-19 14:32:12 +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
Nathan Froyd 583afa0965 Bug 1207245 - part 3 - switch all uses of mozilla::RefPtr<T> to nsRefPtr<T>; r=ehsan
This commit was generated using the following script, executed at the
top level of a typical source code checkout.

 # Don't modify select files in mfbt/ because it's not worth trying to
 # tease out the dependencies currently.
 #
 # Don't modify anything in media/gmp-clearkey/0.1/ because those files
 # use their own RefPtr, defined in their own RefCounted.h.
find . -name '*.cpp' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    grep -v 'mfbt/RefPtr.h' | \
    grep -v 'mfbt/nsRefPtr.h' | \
    grep -v 'mfbt/RefCounted.h' | \
    grep -v 'media/gmp-clearkey/0.1/' | \
    xargs perl -p -i -e '
 s/mozilla::RefPtr/nsRefPtr/g; # handle declarations in headers
 s/\bRefPtr</nsRefPtr</g; # handle local variables in functions
 s#mozilla/RefPtr.h#mozilla/nsRefPtr.h#; # handle #includes
 s#mfbt/RefPtr.h#mfbt/nsRefPtr.h#;       # handle strange #includes
'

 # |using mozilla::RefPtr;| is OK; |using nsRefPtr;| is invalid syntax.
find . -name '*.cpp' -o -name '*.mm' | xargs sed -i -e '/using nsRefPtr/d'

 # RefPtr.h used |byRef| for dealing with COM-style outparams.
 # nsRefPtr.h uses |getter_AddRefs|.
 # Fixup that mismatch.
find . -name '*.cpp' -o -name '*.h'| \
    xargs perl -p -i -e 's/byRef/getter_AddRefs/g'
2015-10-18 00:40:10 -04:00
Phil Ringnalda 9ea53214d8 Merge f-t to m-c, a=merge 2015-10-17 11:19:46 -07:00
Wes Kocher 1662b03a4f Merge m-c to inbound, a=merge 2015-10-16 12:30:35 -07:00
Wes Kocher 3d38a5df68 Merge b2ginbound to central, a=merge 2015-10-16 12:27:10 -07:00
Wes Kocher cdd2c2c263 Merge m-c to fx-team, a=merge 2015-10-16 12:31:52 -07:00
Alessio Placitelli cf4ad8cd56 Bug 1211411 - Limit the number of thread hang stats reported to Telemetry. r=vladan 2015-10-16 07:04:00 +02:00
Nathan Froyd 932187b05a Bug 1212027 - part 6 - add an IsEmpty method to nsTHashtable; r=erahm
It's a little more convenient than checking Count(), and also gives
nsTHashtable the same interface as nsTArray (for this operation, at
least), which seems worthwhile.
2015-10-07 23:31:17 -04:00
Shih-Chiang Chien e50f7091ee Bug 1199592 - support TV device type in UA string. r=fabrice.
--HG--
extra : rebase_source : 7999c1a81fd7e297b88d3b780c252b70bf265d23
2015-10-05 19:58:00 +02:00
Eric Rahm 80fca20565 Bug 1194555 - Part 6: Run reporters asynchronously. r=njn,jld,ted 2015-10-14 16:52:59 -07:00
Eric Rahm e93f0f86a3 Bug 1194555 - Part 5: Add option for async memory reporters. r=njn 2015-10-14 16:52:58 -07:00
Eric Rahm 9feffe31c7 Bug 1194555 - Part 4: Rename GetReportsState PendingProcessesState. r=njn 2015-10-14 16:52:57 -07:00
Eric Rahm b257c6378a Bug 1194555 - Part 3: Remove |getReportsForThisProcess| from the nsIMemoryReporterManager interface. r=njn
|getReportsForThisProcess| differs from |getReports| in that it is limited to current process and is synchronous. When asynchronous memory reporters are added the function will no longer be able tobe synchronous. There isn't much utility in only measuring the current process, so we can remove the function and switch existing users to |getReports|.
2015-10-14 16:52:55 -07:00
Eric Rahm acd4358a2a Bug 1194555 - Part 2: Remove |explicit| attribute from nsIMemoryReporterManager. r=njn
The calculation of |explicit| relies on the synchronous |getReportsForThisProcess|, once we have asynchronous reporters this will no longer work. As it is currently referenced in the about::memory tests we can just remove it.
2015-10-14 16:52:54 -07:00
Eric Rahm 61d0f893cd Bug 1194555 - Part 1: Remove RunReportersForThisProcess. r=njn
RunReportersForThisProcess is no longer used and will no longer work once we have async reporters.
2015-10-14 16:52:53 -07:00
Eric Rahm 45097b163a Bug 1194555 - Part 0: Cleanup GetReportsState constructor. r=njn
Move GetReportsState ctor to the impl so that mChildrenPending doesn't have
to be heap allocated.
2015-10-14 16:52:52 -07:00
sajitk b564e1db32 Bug 996105 - Added tests for registry access. Fixed wrong condition in ReadStringValue code. r=bsmedberg
--HG--
extra : amend_source : 8b78a62b071a515f3652e77c2abd37561ebf3380
2015-10-14 11:17:07 +05:30
Mike Hommey 9af046b5b4 Bug 1211765 - Remove remnants from --with-libxul-sdk. r=bsmedberg
The configure option has explicitly thrown an error for more than a year now,
and it happens that the remaining way to still forcefully use it has been
broken for more than 8 months.
2015-10-14 08:02:34 +09:00
Nathan Froyd 0a799593e9 Bug 1207245 - part 5 - rename template parameters for nsRefPtrHashtable; r=ehsan
Having a template parameter conflict with a global name is terribly
inconvenient, so let's try to avoid that by renaming the 'RefPtr'
template parameter to something else.
2015-10-12 22:40:08 -04:00
Nigel Babu 640106b762 Backed out changeset 7077589b174c (bug 996105) for failing its own tests ON A CLOSED TREE 2015-10-13 16:10:39 +05:30
sajitk 5491f00db4 Bug 996105 - Added tests for registry access. Fixed wrong condition in ReadStringValue code. r=bsmedberg 2015-09-27 17:16:00 +02:00
Aryeh Gregor c48c61128c Bug 1213862 - Align nsString whitespace handling with web specs; r=froydnj 2015-10-12 20:47:57 +03:00
Hiroyuki Ikezoe 00b0491dd0 Bug 1167627 - Part 3: Use mozinfo in xpcom/. r=bsmedberg 2015-10-11 21:48:00 +02:00
Xidorn Quan 6ab3d4ccd1 Bug 1213130 - Make several string function to accept char16ptr_t instead of char16_t*, and remove redundant overloads. rs=froydnj
--HG--
extra : source : d2dbd4e5316efb888335c92950d32ce77abc41e5
2015-10-10 12:19:23 +11:00
Boris Zbarsky af065c06f0 Bug 1213289 part 3. Add a way to throw a DOMException with a custom message on ErrorResult. r=bkelly 2015-10-09 16:48:10 -04:00
Andrew McCreight c97953414d Bug 931283, part 3 - Implement a cycle collected version of nsVariant. r=froydnj
Also, use this class for the component manager etc. in XPCOM.
2015-10-09 10:24:23 -07:00
Andrew McCreight 642c4344e2 Bug 931283, part 2 - Split out nsVariant into a subclass. r=froydnj 2015-10-09 10:24:23 -07:00
Andrew McCreight 747f1dd47c Bug 931283, part 1 - Rename nsVariant to nsVariantBase. r=froydnj
Leave a typedef for compatibility. nsVariant will be defined as a
separate class in the next patch.

Also, remove an obsolete comment and fix some whitespace.
2015-10-09 10:24:23 -07:00
c947ee6806 Bug 1126295 - Move TestAtoms.cpp to gtest and enable it; r=froydnj
commit 7d4543037c618cc0e95b6f1801c2187e3361c82a (HEAD, explicit)
Author: Ehsan Akhgari <ehsan@mozilla.com>
    Bug 1126295 - Move TestAtoms.cpp to gtest and enable it; r=froydnj

--HG--
rename : xpcom/tests/TestAtoms.cpp => xpcom/tests/gtest/TestAtoms.cpp
2015-01-27 09:28:45 -05:00
Ehsan Akhgari 1869e89340 Bug 1212636 - Add a better error message for the content corrupcted error caused by the Promise being passed to FetchEvent.respondWith; r=bkelly 2015-10-07 18:06:26 -04:00
Carsten "Tomcat" Book 08997000eb Backed out 2 changesets (bug 1202902) to recking bug 1202902 to be able to reopen inbound on a CLOSED TREE
Backed out changeset 647025383676 (bug 1202902)
Backed out changeset d70c7fe532c6 (bug 1202902)
2015-10-07 14:03:21 +02:00
Carsten "Tomcat" Book e7ef778c9d Backed out 1 changesets (bug 1202902) for causing merge conflicts to mozilla-central
Backed out changeset cfc1820361f5 (bug 1202902)

--HG--
extra : rebase_source : 5d3db72337754bc7ab0ed0c30b2896100411ff92
2015-10-07 12:13:45 +02:00
Wes Kocher a69f1f52e7 Backed out 7 changesets (bug 1194555) for xpcshell failures
Backed out changeset e77be333f4fb (bug 1194555)
Backed out changeset 11951462a37c (bug 1194555)
Backed out changeset 99b27aa952c5 (bug 1194555)
Backed out changeset 70a8ed3b6a45 (bug 1194555)
Backed out changeset 748bfebe81e7 (bug 1194555)
Backed out changeset cbaac05a2934 (bug 1194555)
Backed out changeset fcbfd1379fcd (bug 1194555)
2015-10-06 14:40:51 -07:00
Shu-yu Guo d06b6030f6 Bug 1202902 - Scripted fix the world. 2015-10-06 14:00:31 -07:00
Eric Rahm f2e4cb7dfe Bug 1194555 - Part 6: Run reporters asynchronously. r=njn,jld 2015-10-06 11:23:36 -07:00
Eric Rahm d3e60f2da6 Bug 1194555 - Part 5: Add option for async memory reporters. r=njn 2015-10-06 11:23:35 -07:00
Eric Rahm 6fd2bbb5e8 Bug 1194555 - Part 4: Rename GetReportsState PendingProcessesState. r=njn 2015-10-06 11:23:34 -07:00
Eric Rahm 16b67b6d6c Bug 1194555 - Part 3: Remove |getReportsForThisProcess| from the nsIMemoryReporterManager interface. r=njn
|getReportsForThisProcess| differs from |getReports| in that it is limited to current process and is synchronous. When asynchronous memory reporters are added the function will no longer be able tobe synchronous. There isn't much utility in only measuring the current process, so we can remove the function and switch existing users to |getReports|.
2015-10-06 11:23:33 -07:00
Eric Rahm 57bd025868 Bug 1194555 - Part 2: Remove |explicit| attribute from nsIMemoryReporterManager. r=njn
The calculation of |explicit| relies on the synchronous |getReportsForThisProcess|, once we have asynchronous reporters this will no longer work. As it is currently referenced in the about::memory tests we can just remove it.
2015-10-06 11:23:32 -07:00
Eric Rahm e15a1912e0 Bug 1194555 - Part 1: Remove RunReportersForThisProcess. r=njn
RunReportersForThisProcess is no longer used and will no longer work once we have async reporters.
2015-10-06 11:23:31 -07:00
Eric Rahm dc17e5a1b8 Bug 1194555 - Part 0: Cleanup GetReportsState constructor. r=njn
Move GetReportsState ctor to the impl so that mChildrenPending doesn't have
to be heap allocated.
2015-10-06 11:23:30 -07:00
Xidorn Quan 7ba467bc22 Bug 1186745 part 6 - Fix event leak when using NS_DispatchToCurrentThread. r=froydnj
--HG--
extra : source : c8159664670c96e6cfa4c856d6eb14bb9495cd6f
2015-10-06 13:00:59 +11:00
Xidorn Quan c5703449ed Bug 1186745 part 5 - Make nsThread::Dispatch() always leak the event if it fails. r=froydnj
--HG--
extra : source : 969aedd9d9b6ee25b679954228f26c043969a29e
2015-10-06 13:00:59 +11:00
Xidorn Quan e573430f7d Bug 1186745 part 4 - Make TracedRunnable accept an already_AddRefed instead of a raw pointer. r=froydnj
--HG--
extra : source : 0a748a541a5425602ed0af670ffdb031c11dd627
2015-10-06 13:00:59 +11:00
Xidorn Quan 0c51f5c14f Bug 1186745 part 3 - Make nsThreadSyncDispatch leak the sync task by default when Run() is not called. r=froydnj
--HG--
extra : source : 7eda5d8e2da47a0ff4f15e6a4d20f1ca108e5931
2015-10-06 13:00:59 +11:00
Xidorn Quan d98cc8899a Bug 1186745 part 2 - Move nsThreadSyncDispatch class to its own header file. r=froydnj
--HG--
extra : source : ec17a3b46e134cbf99a74d581a89d7dea10f0af0
2015-10-06 13:00:59 +11:00
Xidorn Quan 98d15627f8 Bug 1186745 part 1 - Add LeakRefPtr for pointer leaking by default. r=froydnj
This class can be used instead of raw pointer for a sound leaking-by-default
behavior. Also it could take advantage of move semantic check in the future.

--HG--
extra : source : 6bf72b4eaa92b13d42b547d8aeee677489a4d3e2
2015-10-06 13:00:59 +11:00
Nicholas Nethercote f72bee4d5f Bug 1209351 (part 1) - Add an overloading of nsTHashTable::RemoveEntry() that takes an already-found entry. r=froydnj.
--HG--
extra : rebase_source : 9e48b42e9bd59732e2c2a6c436e9ee258d5c1cd9
2015-09-24 16:12:38 -07:00
Andrew McCreight e2ebefc242 Bug 1207368 - Use swap() instead of forget() to remove MessageElement::mMessage. r=froydnj
Using forget() to extract mMessage from MessageElement ends up going
from nsCOMPtr<T> to already_AddRefed<T> to nsCOMPtr<T>. For the second
step, the compiler can't tell that the already_AddRefed<T> came from a
canonical nsCOMPtr, so it calls Assert_NoQueryNeeded() in debug
builds. This in turn causes a QI, which does an AddRef. That is bad
because we're not on the main thread, and mMessage is
main-thread-only, so we get an assertion.

This patch works around that by using swap directly between two
nsCOMPtr<>, which avoids the Assert_NoQueryNeeded().

I called the method "swapMessage" rather than "swap" to emphasize that
we are not swapping the whole MessageElement, but just one part of
it. I find the existing forget() name to be confusing.
2015-10-02 14:47:13 -07:00
Nathan Froyd b98e01e02a Bug 1210871 - don't use reinterpret_cast in nsTHashtable.h; r=erahm
We don't need to reinterpret_cast when casting from void*, and we don't
need to reinterpret_cast when we're casting up and down a class
hierarchy.  static_cast takes care of those cases just fine, and doesn't
scare the reader into thinking that nsTHashtable is doing something
unusual.
2015-10-02 20:32:15 -04:00
Wes Kocher 1d312920f4 Backed out 6 changesets (bug 1186745) for android Cpp failures
Backed out changeset 237a6acf0709 (bug 1186745)
Backed out changeset 7b530871783a (bug 1186745)
Backed out changeset 73f73b531fc8 (bug 1186745)
Backed out changeset e36909748ddf (bug 1186745)
Backed out changeset 3a31df8787f0 (bug 1186745)
Backed out changeset df9cb8f5f0a5 (bug 1186745)
2015-10-02 10:35:09 -07:00
Xidorn Quan 863594b840 Bug 1186745 part 6 - Fix event leak when using NS_DispatchToCurrentThread. r=froydnj
--HG--
extra : source : a0baaf79582846e447014b2e933266c3150941aa
2015-10-03 00:18:24 +10:00
Xidorn Quan e660a06960 Bug 1186745 part 5 - Make nsThread::Dispatch() always leak the event if it fails. r=froydnj
--HG--
extra : source : 5ae98bb877bc7be5f48f79c88c4b70340786dfee
2015-10-03 00:18:24 +10:00
Xidorn Quan d148f6ae66 Bug 1186745 part 4 - Make TracedRunnable accept an already_AddRefed instead of a raw pointer. r=froydnj
--HG--
extra : source : 343cc4075627fb4dc7c78e8cef590a82e8ef044c
2015-10-03 00:18:24 +10:00
Xidorn Quan 12865b3d6a Bug 1186745 part 3 - Make nsThreadSyncDispatch leak the sync task by default when Run() is not called. r=froydnj
--HG--
extra : source : 897260be14effa39b648fc4a07a9e727b527edab
2015-10-03 00:18:24 +10:00
Xidorn Quan 21fa30d414 Bug 1186745 part 2 - Move nsThreadSyncDispatch class to its own header file. r=froydnj
--HG--
extra : source : c92a7df2cc4043cb2795a0c4b085283165287973
2015-10-03 00:18:24 +10:00
Xidorn Quan 4dad63f727 Bug 1186745 part 1 - Add LeakRefPtr for pointer leaking by default. r=froydnj
This class can be used instead of raw pointer for a sound leaking-by-default
behavior. Also it could take advantage of move semantic check in the future.

--HG--
extra : source : 47cd2c22bafc8d4bb1c7e1dce3b45517aaec199f
2015-10-03 00:18:24 +10:00
Andrew McCreight 7cbb87eb31 Bug 1210463 - part 3 - Remove the very obsolete NS_IMPL_MOZILLA192_NSGETMODULE. r=froydnj 2015-10-01 15:53:38 -07:00
Andrew McCreight 637dbab1bc Bug 1210463 - part 2 - Use some smart pointers in ModuleUtils.h. r=froydnj 2015-10-01 15:53:38 -07:00
Andrew McCreight 12128fc9ad Bug 1210463 - part 1 - Remove some unneeded null checks on new in ModuleUtils. r=froydnj 2015-10-01 15:53:38 -07:00
Jean-Yves Avenard 181f3f61e0 Bug 1207312: P1. Prevent crash when more than one promise is rejected. r=bholley 2015-10-01 19:07:36 +10:00
Nick Fitzgerald 30e17cfd82 Bug 1196461 - De-duplicate strings in heap snapshot core dumps; r=shu,jimb
This changeset replaces all of the

    // char16_t[]
    optional bytes someProperty = 1;

one- and two-byte string properties in the CoreDump.proto protobuf definition
file with:

    oneof {
        // char16_t[]
        bytes  someProperty    = 1;
        uint64 somePropertyRef = 2;
    }

The first time the N^th unique string is serialized, then someProperty is used
and the full string is serialized in the protobuf message. All following times
that string is serialized, somePropertyRef is used and its value is N.

Among the other things, this also changes JS::ubi::Edge::name from a raw pointer
with commented rules about who does or doesn't own and should and shouldn't free
the raw pointer to a UniquePtr that enforces those rules rather than relying on
developers reading and obeying the rules in the comments.
2015-09-30 16:03:31 -07:00
Nathan Froyd b62a707f2b Bug 1209969 - remove prlock.h include from nsBaseHashtable.h; r=erahm
nsBaseHashtable.h doesn't use PRLock.
2015-09-30 00:51:28 -04:00
Tooru Fujisawa 5d153352bf Bug 1207499 - Part 13: Remove use of expression closure from xpcom/. r=froydnj
--HG--
extra : commitid : DVEzMkDSqJL
extra : rebase_source : 6d705caf89dfde999ed144d702c8d9173844e86a
2015-09-23 18:42:20 +09:00
Jason Orendorff deb2270515 Bug 1054756, part 5 - Remove Class::convert.
--HG--
extra : commitid : 6KCxWrCseSZ
extra : rebase_source : 63f3cd6ec1ade43c732ffd9b661fe6f2dca9eb4b
2015-03-20 16:28:59 -05:00
Phil Ringnalda c096566a7e Back out 6 changesets (bug 1186745) for cpptest failure in runnable_utils_unittest, nrappkit_unittest, test_nr_socket_unittest
Backed out changeset c6142b815de0 (bug 1186745)
Backed out changeset d8f740ef2430 (bug 1186745)
Backed out changeset edc0b56d81fa (bug 1186745)
Backed out changeset 383f8ac033ea (bug 1186745)
Backed out changeset ce960a661987 (bug 1186745)
Backed out changeset 3e9783023fb2 (bug 1186745)

--HG--
extra : rebase_source : 4681d6abaaa927ddb863f944efc87e6c6f6c2e26
2015-09-28 19:05:02 -07:00
Xidorn Quan e26e72c529 Bug 1186745 part 6 - Fix event leak when using NS_DispatchToCurrentThread. r=froydnj
--HG--
extra : source : 839c394ca2362db534c9a12b14be3a9f3f5d6ff5
2015-09-29 09:28:22 +10:00
Xidorn Quan d6ed2bb25e Bug 1186745 part 5 - Make nsThread::Dispatch() always leak the event if it fails. r=froydnj
--HG--
extra : source : 9647b16628882dc9908e4a9cff084fc1d53c7df6
2015-09-29 09:28:22 +10:00
Xidorn Quan 33369f9d5f Bug 1186745 part 4 - Make TracedRunnable accept an already_AddRefed instead of a raw pointer. r=froydnj
--HG--
extra : source : 8ed5530cadd2199943b073f372d6568ee5d88267
2015-09-29 09:28:22 +10:00
Xidorn Quan 8de4cf8292 Bug 1186745 part 3 - Make nsThreadSyncDispatch leak the sync task by default when Run() is not called. r=froydnj
--HG--
extra : source : 3e192a3bcd8686bfc49c58012f4b17ed8fdc7c45
2015-09-29 09:28:22 +10:00
Xidorn Quan 5a61756f88 Bug 1186745 part 2 - Move nsThreadSyncDispatch class to its own header file. r=froydnj
--HG--
extra : source : ae110eaaa626064dd81188d4f587a2df1f439bd2
2015-09-29 09:28:22 +10:00
Xidorn Quan 661f0a0891 Bug 1186745 part 1 - Add LeakRefPtr for pointer leaking by default. r=froydnj
This class can be used instead of raw pointer for a sound leaking-by-default
behavior. Also it could take advantage of move semantic check in the future.

--HG--
extra : source : 3dbd000739dc0ea214a2292e3983469e41e99686
2015-09-29 09:28:22 +10:00
Carsten "Tomcat" Book 363e40e298 merge mozilla-inbound to mozilla-central a=merge 2015-09-28 14:13:24 +02:00
Dave Townsend fd7f1eb306 Bug 1207287: Move the app-shipped system add-ons somewhere where they will be included in up date MARs. r=froydnj r=rhelmer
This moves the app-shipped system add-ons into <appdir>/features. I've created
a new directory provider location for this since it allows us to override the
location without allowing external apps to do so as would be the case with
prefs.

--HG--
extra : commitid : 9lzIzbjvCpK
extra : rebase_source : 1f1f319eac2142ffbe6714289e6fb4e40cfd6088
2015-09-24 16:03:01 -07:00
Ted Mielczarek c669bcf3d2 bug 681602 - Implement xptcall for arm iOS. r=glandium
xptcstubs_arm mostly works on iOS but Apple's assembler is ridiculous so
the inline assembly for the SharedStub and the stub methods needs judicious
preprocessor use.

--HG--
extra : commitid : ChAcktTzVX0
extra : rebase_source : 11fbaa4940fd9aaeba51e2477d4c8b1a7851791e
2015-09-23 09:57:10 -04:00
Wes Kocher b19d88b060 Backed out 7 changesets (bug 1206168, bug 1177318, bug 1054756) for hazard build failures CLOSED TREE
Backed out changeset e892727a373a (bug 1206168)
Backed out changeset 6c93d1044b7e (bug 1054756)
Backed out changeset 105433ce195b (bug 1054756)
Backed out changeset 13128a88f2b9 (bug 1054756)
Backed out changeset c250abf4fd17 (bug 1054756)
Backed out changeset fc9fef646a97 (bug 1054756)
Backed out changeset c8897f109a08 (bug 1177318)
2015-09-23 12:31:19 -07:00
Andrew McCreight d4e3c0e2c4 Bug 1208157, part 2 - Make the fields of nsCycleCollector private. r=smaug
These are accidentally exposed by the NS_DECL.
2015-09-25 10:43:21 -07:00
Andrew McCreight f288f83204 Bug 1208157, part 1 - Add and use nsCycleCollector::IsIdle() predicate. r=smaug 2015-09-25 10:43:21 -07:00
Andrew McCreight adf56106da Bug 1202670 - Move most of nsCycleCollector::RemoveObjectFromGraph into CCGraph. r=smaug 2015-09-25 10:43:21 -07:00
Jason Orendorff 54e92d9beb Bug 1054756, part 5 - Remove Class::convert.
--HG--
extra : commitid : KrjkP1flM3c
extra : rebase_source : 8c367e3158528e92ac8ebc51521d32472f1e5bb1
2015-03-20 16:28:59 -05:00
James Cheng a73837f641 Bug 1206598 - Use universal reference to reduce the redundant copy. r=nfroyd
--HG--
extra : rebase_source : b8feaad38dd7731f8a838b82324b3953af21ff78
2015-09-20 23:30:00 +02:00
Chris Peterson 71920a9550 Bug 1207030 - Enable -Wshadow flag in more directories that have no -Wshadow warnings. r=glandium 2015-09-22 21:39:03 -07:00
Chris Peterson 9911646ce8 Bug 1207031 - Suppress -Wshadow warnings from google-breakpad headers in xpcom/threads. r=froydnj 2015-09-21 22:41:52 -07:00
Nathan Froyd 8bb05ee37e Bug 1202497 - follow-up - fix static analysis bustage; r=me 2015-09-22 19:25:37 -04:00
Nathan Froyd 3eae8069d0 Bug 1202497 - part 7 - make nsEventQueue use external locking; r=gerald
We want to ensure that nsThread's use of nsEventQueue uses locking done
in nsThread instead of nsEventQueue, for efficiency's sake: we only need
to lock once in nsThread, rather than the current situation of locking
in nsThread and additionally in nsEventQueue.  With the current
structure of nsEventQueue, that would mean that nsThread should be using
a Monitor internally, rather than a Mutex.

Which would be well and good, except that DOM workers use nsThread's
mutex to protect their own, internal CondVar.  Switching nsThread to use
a Monitor would mean that either:

- DOM workers drop their internal CondVar in favor of nsThread's
  Monitor-owned CondVar.  This change seems unlikely to work out well,
  because now the Monitor-owned CondVar is performing double duty:
  tracking availability of events in nsThread's event queue and
  additionally whatever DOM workers were using a CondVar for.  Having a
  single CondVar track two things in such a fashion is for Experts Only.

- DOM workers grow their own Mutex to protect their own CondVar.  Adding
  a mutex like this would change locking in subtle ways and seems
  unlikely to lead to success.

Using a Monitor in nsThread is therefore untenable, and we would like to
retain the current Mutex that lives in nsThread.  Therefore, we need to
have nsEventQueue manage its own condition variable and push the
required (Mutex) locking to the client of nsEventQueue.  This scheme
also seems more fitting: external clients merely need synchronized
access to the event queue; the details of managing notifications about
events in the event queue should be left up to the event queue itself.

Doing so also forces us to merge nsEventQueueBase and nsEventQueue:
there's no way to have nsEventQueueBase require an externally-defined
Mutex and then have nsEventQueue subclass nsEventQueueBase and provide
its own Mutex to the superclass.  C++ initialization rules (and the way
things like CondVar are constructed) simply forbid it.  But that's OK,
because we want a world where nsEventQueue is externally locked anyway,
so there's no reason to have separate classes here.

One casualty of this work is removing ChaosMode support from
nsEventQueue.  nsEventQueue had support to delay placing events into the
queue, theoretically giving other threads the chance to put events there
first.  Unfortunately, since the thread would have been holding a lock
(as is evident from the MutexAutoLock& parameter required), sleeping in
PutEvent accomplishes nothing but delaying the thread from getting
useful work done.  We should support this, but it's complicated to
figure out how to reasonably support this right now.

A wrinkle in this overall pleasant refactoring is that nsThreadPool's
threads wait for limited amounts of time for new events to be placed in
the event queue, so that they can shut themselves down if no new events
are appearing.  Setting limits on the number of threads also needs to be
able to wake up all threads, so threads can shut themselves down if
necessary.

Unfortunately, with the transition to nsEventQueue managing its own
condition variable, there's no way for nsThreadPool to perform these
functions, since there's no Monitor to wait on.  Therefore, we add a
private API for accessing the condition variable and performing the
tasks nsThreadPool needs.

Prior to all the previous patches, placing items in an nsThread's event
queue required three lock/unlock pairs: one for nsThread's Mutex, one to
enter nsEventQueue's ReentrantMonitor, and one to exit nsEventQueue's
ReentrantMonitor.  The upshot of all this work is that we now only
require one lock/unlock pair in nsThread itself, as things should be.
2015-09-20 05:13:09 -04:00
Nathan Froyd c6238d0d96 Bug 1202497 - part 6 - make the locking requirements of nsEventQueue explicit; r=gerald
Like the previous patch, this patch is a no-op change in terms of
functionality.  It does, however, pave part of the way for forcing
clients of nsEventQueue to provide their own locking.
2015-09-21 04:34:51 -04:00
Nathan Froyd 2c79a08dbd Bug 1202497 - part 5 - make the locking requirements of nsChainedEventQueue explicit; r=gerald
This patch is a no-op in terms of functionality.  It ensures that we're
always holding nsThread's mutex when we touch mEvents, as dictated by
the comments.  Putting this addition into its own patch will help make
the change to having nsEventQueue by guarded by a Mutex, rather than a
Monitor, somewhat clearer.
2015-09-20 04:59:56 -04:00
Nathan Froyd 2851bffa03 Bug 1202497 - part 4 - lock around call to nsChainedEventQueue::HasPendingEvent; r=gerald
This is another case of an access to mEvents not being protected by
mLock.  Future patches will make this locking requirement explicit in
nsChainedEventQueue, so we won't have problems like this.  (Since
nsEventQueue has its own locking at this point, this omission didn't
matter much, but the omission will most certainly matter later.)
2015-09-20 04:47:10 -04:00
Nathan Froyd 90bdddcda8 Bug 1202497 - part 3 - remove nsThread::GetEvent; r=gerald
GetEvent was only called from one place, so it wasn't terribly useful as
an abstraction.  It also broke the invariant that we protect accesses to
mEvents with mLock, as documented in nsThread.h.  While upcoming patches
could have just updated GetEvent to do the necessary locking on its own,
it seemed just as easy to make the locking requirements at the callsite,
as will be done for other accesses to mEvents.
2015-09-20 04:44:51 -04:00
Nathan Froyd 556c7604e5 Bug 1202497 - part 2 - remove ReentrantMonitor specializations for nsEventQueueBase; r=gerald
Now that nsEventQueue no longer depends on ReentrantMonitors, we can get
rid of these unused specializations.
2015-09-20 04:17:05 -04:00
Nathan Froyd 5593d06e9c Bug 1202497 - part 1 - switch nsEventQueue to use a non-reentrant Monitor; r=gerald
nsEventQueue's monitor does not require re-entrancy now that the monitor
is not externally visible.  Since ReentrantMonitors require two separate
mutex lock/unlock pairs (one on entry, and one on exit), this cuts the
amount of locking nsEventQueue's methods do by half.
2015-09-14 21:52:08 -04:00
Nicholas Nethercote cb3685d2fb Bug 1205941 - Make TimerFirings logging output post-processible with fix_linux_stack.py. r=glandium. 2015-09-21 17:13:51 -07:00
Daniel Holbert 0318c5f137 Bug 1087488: Remove some SPROP macro usages in Omnijar.cpp, to avoid triggering -Wtautological-compare clang warning. r=glandium 2015-09-21 16:36:40 -07:00
ffxbld 875e811e58 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2015-09-21 10:15:23 -04:00
Mike Hommey 538706caba Bug 1203840 - Trigger dirty pages purge after CC. r=njn,r=smaug,r=mccr8
Jemalloc 4 purges dirty pages regularly during free() when the ratio of dirty
pages compared to active pages is higher than 1 << lg_dirty_mult.  We set
lg_dirty_mult in jemalloc_config to limit RSS usage, but it also has an impact
on performance.

So instead of enforcing a high ratio to force more pages being purged, we keep
jemalloc's default ratio of 8, and force a regular purge of all dirty pages,
after cycle collection.

Keeping jemalloc's default ratio avoids cycle-collection-triggered purge to
have to go through really all dirty pages when there are a lot, in which case
the normal jemalloc purge during free() will already have kicked in. It also
takes care of everything that doesn't run the cycle collector still having
a level of purge, like plugins in the plugin-container.

At the same time, since jemalloc_purge_freed_pages does nothing with jemalloc 4,
repurpose the MEMORY_FREE_PURGED_PAGES_MS telemetry probe to track the time
spent in this cycle-collector-triggered purge.
2015-09-20 17:43:43 +09:00
Peter Van der Beken 6b175b5c02 Fix for bug 527558 (Crash [@ xul.dll\!nsDependentCSubstring::nsDependentCSubstring]). r=sicking.
--HG--
extra : rebase_source : f90ade60ba73a7cfd8fc2137f5d14e26c3382b76
2009-11-15 14:50:09 +01:00
Nathan Froyd 8108bffcc3 Bug 1121216 - disable BackgroundHangMonitor for TSan builds; r=jchen 2015-08-04 00:27:59 -04:00
Jim Chen 5d85f6dea6 Bug 1196381 - Eliminate breakpad dependency in ThreadStackHelper; r=nfroyd r=snorp
The breakpad dependency in ThreadStackHelper is preventing us from
upgrading our in-tree copy to a newer version (bug 1069556). This patch
gets rid of that dependency. This makes native stack frames not work
for BHR, but because of the ftp.m.o decommissioning, native
symbolication was already broken and naive stack frames already don't
work, so we don't really lose anything from this patch.

Eventually we want to make ThreadStackHelper use other means of
unwinding, such as LUL for Linux

I added | #if 0 | around the code to fill the thread context, but left
the code in because I think we'll evenually want to reuse some of that
code.
2015-09-18 09:17:10 -04:00
Andrew McCreight ac5e9c32f9 Bug 1205348 - Always do shutdown CCs when NS_FREE_PERMANENT_DATA is defined. r=smaug 2015-09-16 10:10:00 +02:00
Nicholas Nethercote 647b520991 Bug 1201135 - Rename pldhash.{h,cpp} to PLDHashTable.{h,cpp}. r=mccr8.
--HG--
rename : xpcom/glue/pldhash.cpp => xpcom/glue/PLDHashTable.cpp
rename : xpcom/glue/pldhash.h => xpcom/glue/PLDHashTable.h
extra : rebase_source : 06b9d30db96ed78500fd44d9c0b51609103508a3
2015-09-15 20:49:53 -07:00
Nicholas Nethercote 0d5b7b370d Bug 1203427 (part 6) - Add link to MDN docs about TimerFirings logging. r=me.
DONTBUILD because comment-only change.

--HG--
extra : rebase_source : 0f94403df66f19ad4382d89655fac0da6ccaf294
2015-09-16 21:49:24 -07:00
Nicholas Nethercote f429eae6a5 Bug 1203427 (part 5) - Add logging of timer firings. r=froydnj. 2015-09-10 00:50:51 -07:00
Nicholas Nethercote f2c0ec4c11 Bug 1203427 (part 4) - Remove trailing whitespace from nsITimer.idl. r=froydnj.
IGNORE IDL because whitespace only changes.
2015-09-14 15:57:17 -07:00
Nicholas Nethercote 886074f2e3 Bug 1203427 (part 3) - Change order of InitCommon() arguments. r=froydnj.
This makes the order of |aDelay| and |aType| match those of the InitWith*()
functions.

I've made this change because the inconsistency tripped me up during the
development of part 4.

--HG--
extra : rebase_source : 7d49f3f643e76955ea3de57e0954deb22cda3ddf
2015-09-14 15:57:17 -07:00
Nicholas Nethercote 6f036921dc Bug 1203427 (part 1) - Add nsExpirationTracker::mName. r=froydnj.
There are many sub-classes of nsExpirationTracker. In order to distinguish them
nicely in the logging of timer firings, it's necessary to manually name each
one. (This wouldn't be necessary if there was a way to stringify template
parameters, but there isn't.)

--HG--
extra : rebase_source : 89b99e9dbb2a806bd21145d04a5e023794643b61
2015-09-09 21:07:07 -07:00
Chris Peterson 0dbaae1ce2 Bug 1204403 - Fix -Wshadow warnings in xpcom. r=mccr8 2015-09-07 23:56:16 -07:00
Kan-Ru Chen 28c419dcc1 Bug 1123237 - Part 10. Expose SwapElements from nsBaseHashtable. r=nfroyd 2015-09-16 10:31:13 +08:00
Nicholas Nethercote 2ee4fd783b Bug 1121760 (part 6) - Move all remaining PL_DHash*() functions into PLDHashTable. r=poiru.
--HG--
extra : rebase_source : 3cdc975507170d783b02d70f7c7d95c6bf2e1bcd
2015-09-14 14:23:47 -07:00
Nicholas Nethercote 63e79d16db Bug 1121760 (part 5) - Remove PL_DHashMarkTableImmutable(). r=poiru.
--HG--
extra : rebase_source : 8617d7f3d8034832321145789cc0108f6a0878df
2015-09-14 14:23:27 -07:00
Nicholas Nethercote ecf0b741cd Bug 1121760 (part 4) - Remove PL_DHashTableRawRemove(). r=poiru.
--HG--
extra : rebase_source : 9989b2171b8213512ce779415812fa04471fde22
2015-09-14 14:23:26 -07:00
Nicholas Nethercote 59683492e5 Bug 1121760 (part 3) - Remove PL_DHashTableRemove(). r=poiru.
--HG--
extra : rebase_source : c34d693de4aca45f2ea05c2767c8b1007c89df29
2015-09-14 14:23:24 -07:00
Nicholas Nethercote 479244f7c9 Bug 1121760 (part 2) - Remove PL_DHashTableAdd(). r=poiru.
--HG--
extra : rebase_source : 41eb939bfb5c925cba58b1af57abce9a4e5fdb30
2015-09-14 14:23:12 -07:00
Nicholas Nethercote fcfdd8f54b Bug 1121760 (part 1) - Remove PL_DHashTableSearch(). r=poiru.
--HG--
extra : rebase_source : 770e1f49a451ecbadd778e071b204611e27cf701
2015-05-21 00:34:25 -07:00
Andrew McCreight 5446225d17 Bug 1201271 - Warn about unused results for more methods of nsTArray. r=froydnj
This leaves alone the AppendElement methods.
2015-09-15 15:30:44 -07:00
Shu-yu Guo 64db2267cf Bug 1202902 - Mass replace toplevel 'let' with 'var' in preparation for global lexical scope. (rs=jorendorff) 2015-09-15 11:19:45 -07:00
Nathan Froyd fc3e60aac1 Bug 939790 - make SafeMutex::mOwnerThread a relaxed atomic variable; r=bsmedberg
This is similar to the solution adopted for bug 1190985, a race in
netwerk's DebugMutexAutoLock.  A relaxed atomic tells tools like TSan
that we're OK with this variable being touched from multiple threads.
That it's only set from within a locked mutex should ensure whatever
memory barriers we need are executed so all threads have a consistent
view of what value it contains.

Getting rid of another |volatile| usage in the codebase is just a bonus.
2015-09-11 20:57:07 -04:00
Ben Kelly 233c4ec7a9 Bug 1203680 P4 Fix bug in nsStorageStream with reading streams created before data is populated. r=froydnj 2015-09-15 10:15:45 -07:00
Ben Kelly 02126738d3 Bug 1203680 P2 Implement an NS_InputStreamIsCloneable() method. r=froydnj 2015-09-15 10:15:45 -07:00
Kyle Huey 0efe211e55 Bug 1200922: Add the ability to shut down a thread asynchronously. r=froydnj 2015-09-14 18:24:43 -07:00
Wes Kocher a336f83a0a Backed out 9 changesets (bug 1203680) for mochitest bustage CLOSED TREE
Backed out changeset e4733b9eb53c (bug 1203680)
Backed out changeset fb33eb2a55b0
Backed out changeset eb42e21bbb96 (bug 1203680)
Backed out changeset 86642d84e604 (bug 1203680)
Backed out changeset 1026da4b02fb (bug 1203680)
Backed out changeset 311f9810e0b3 (bug 1203680)
Backed out changeset 6fedc85dc0d9 (bug 1203680)
Backed out changeset b25230c0a193 (bug 1093357)
Backed out changeset 2369d63ef14a (bug 1203680)
2015-09-14 14:27:57 -07:00
Ben Kelly 7c43b0d527 Bug 1203680 P2 Implement an NS_InputStreamIsCloneable() method. r=froydnj 2015-09-14 12:12:00 -07:00
Ben Kelly acc86c5c7a Backout rev b25230c0a193 for wrong bug number. r=me 2015-09-14 12:12:00 -07:00
Ben Kelly 79ccea7ed6 Bug 1203680 P4 Fix bug in nsStorageStream with reading streams created before data is populated. r=froydnj 2015-09-14 12:04:56 -07:00
Ben Kelly 2577b751f1 Bug 1093357 P2 Implement an NS_InputStreamIsCloneable() method. r=froydnj 2015-09-14 12:04:56 -07:00
Ben Kelly e0bbb6d4d2 Bug 1203760 P2 Add gtests for nsPipeInputStream AsyncRead(). r=froydnj 2015-09-14 08:49:09 -07:00
Ben Kelly a1265d3d9a Bug 1203760 P1 Allow pipe to wake up multiple streams at the same time. r=froydnj 2015-09-14 08:49:09 -07:00
Michael Layzell 0097c41e01 Bug 1201190 - Part 3: Mark every consumer of GUARD_OBJECT as MOZ_RAII, r=ehsan 2015-09-12 16:53:33 -04:00
Michael Layzell 1eaae658aa Bug 1156802 - Part 2: Remove all explicit move constructors, r=ehsan 2015-09-12 12:34:45 -04:00
Nathan Froyd 85d7b073ac Bug 1202828 - use nsEventQueue::HasPendingEvent in nsThread.cpp; r=mccr8
nsEventQueue's HasPending event is defined to simply:

  return GetEvent(false, nullptr);

So we can substitute HasPendingEvent for this particular GetEvent call
to make the code clearer.
2015-09-04 20:39:10 -04:00
Honza Bambas 3506e6ec97 Bug 1199775 - mozilla::Tokenizer improvements vol 2. r=nfroyd 2015-09-02 06:20:00 +02:00
Ehsan Akhgari 97be810099 Bug 1196430 follow-up: Hide the usage of gCodeAddressService behind #ifdef MOZ_STACKWALKING
This is needed to fix the build bustage on B2G Desktop Windows.
Landed on a CLOSED TREE
2015-09-11 00:06:40 -04:00
Nathan Froyd 89639e1fda Bug 1196430 - part 8 - use less reinterpret_cast in nsTraceRefcnt.cpp; r=mccr8 2015-08-26 22:57:32 -04:00
Nathan Froyd 3953358c0b Bug 1196430 - part 5 - dump allocation stacks for leaked objects in XPCOM_MEM_LOG_CLASSES; r=mccr8 2015-08-26 19:10:22 -04:00
Nathan Froyd d6c3776152 Bug 1196430 - part 4 - record allocation stacks for classes in XPCOM_MEM_LOG_CLASSES; r=mccr8 2015-08-26 18:47:03 -04:00
Nathan Froyd 04974cb31c Bug 1196430 - part 3 - remove unnecessary nsString.h include from nsTraceRefcnt.cpp; r=mccr8 2015-08-26 18:28:35 -04:00
Nathan Froyd e9b6ac22f9 Bug 1196430 - part 2 - give SerialNumberRecord a proper constructor; r=mccr8
Using C++ style is so much nicer for these sorts of things.  This change
also paves the way for easily using non-POD things in SerialNumberRecord.
2015-08-26 18:25:35 -04:00
Nathan Froyd 1acef79801 Bug 1196430 - part 1 - rename serialNumberRecord to SerialNumberRecord; r=mccr8
This is a small cleanup to make the class name conform to coding standards.
2015-08-26 18:24:13 -04:00
Ms2ger ce50a0bf86 Bug 1194603 - Remove INTERNAL_TOOLS; r=mshal
Its only purpose is to disable PGO. Where that was not already explicitly done,
or irrelevant (because the directory only contains python), I disabled it in
moz.build.
2015-09-10 13:49:19 +02:00
Nikhil Marathe cd9d0eb7ab Bug 1198230 - Respect FetchEvent.preventDefault(). r=jdm
Update web-platform-tests expected data

--HG--
extra : commitid : 4dM6kivKeAc
extra : rebase_source : 64e40258a98b79064d5073422811fb8e1f688735
2015-09-04 12:00:24 -07:00
Nicholas Nethercote ffb1fefc9f Bug 1202526 (part 8) - Use PLDHashTable::RemoveEntry() in the cycle collector. r=mccr8.
This avoids repeating the hash table search in order to remove a CC graph
entry, which is good because it's a common operation.
2015-09-07 21:15:32 -07:00
Nicholas Nethercote de8fceb34d Bug 1202526 (part 1) - Add PLDHashTable::RemoveEntry(). r=froydnj.
This patch also consolidates the shrink handling so it's now entirely within
ShrinkIfAppropriate().
2015-09-07 19:20:12 -07:00
Wes Kocher ba9de6a2f7 Backed out changeset f5b2a11c64c9 (bug 1201271) for bustage 2015-09-09 15:56:21 -07:00
Andrew McCreight 3e590f4e78 Bug 1201271 - Warn about unused results for more methods of nsTArray. r=froydnj
This leaves alone the AppendElement methods.
2015-09-09 15:39:10 -07:00
Carsten "Tomcat" Book c040626933 Merge mozilla-central to fx-team 2015-09-09 14:10:46 +02:00
Milan Sreckovic 9a9792e17d Bug 1128472 - Part 3. Vendor string on windows. r=aklotz 2015-09-03 13:10:00 +02:00
Milan Sreckovic 79db27187c Bug 1128472 - Part 2. Linux support. r=gfritzsche 2015-09-08 14:35:00 +02:00
Milan Sreckovic c2e36204f0 Bug 1128472 - Part 1. Mac and Win for model, stepping, cores, cache, cpu speed; VM max on Win only, vendor on Mac only. r=gfritzsche 2015-09-01 14:48:00 +02:00
Randell Jesup 5e0e7e846c Bug 1197152: Alternative to remove all sleep/wake functionality from Timers r=froydnj
CLOSED TREE

--HG--
extra : amend_source : 8c363c570bea046904f2f9d7bf72b107012653d7
2015-09-08 11:34:09 -04:00
Nathan Froyd 444fb07360 Bug 1202667 - make TaskQueue task running slightly more efficient; r=mccr8
We can transfer the reference out of the queue of runnables instead of
taking a new reference right before we drop the old one.
2015-09-07 20:02:16 -04:00
Nathan Froyd fbb4e33fce Bug 1202667 - make TaskQueue dispatching slightly more efficient; r=mccr8
We're already holding a reference to the Runner prior to dispatching it
to the thread pool; we can pass that reference in rather than requiring
the thread pool to take a new reference to it.
2015-09-07 19:51:54 -04:00
Nathan Froyd 17c37f82b5 Bug 1195767 - part 5 - use signaling instead of broadcast when work items are placed in nsEventQueue; r=gerald
There's no reason to wake up all the threads in a thread pool when one
item gets placed in the queue.  Waking up one will serve the same
purpose and is significantly more efficient for thread pools with large
numbers of threads.
2015-09-03 16:38:18 -04:00
Nathan Froyd 8502eaeea7 Bug 1195767 - part 4 - remove nsEventQueue::GetReentrantMonitor; r=gerald
The last commit eliminated the only client of this method, so we can
remove it now.
2015-09-03 16:37:51 -04:00
Nathan Froyd aafe5d489a Bug 1195767 - part 3 - modify nsThreadPool to use a non-reentrant monitor; r=gerald
There's no reason nsThreadPool needs to use a reentrant monitor for
locking its event queue.  Having it use a non-reentrant one should be
slightly more efficient, both in the general operation of the monitor,
and that we're not performing redundant locking in methods like
nsThreadPool::Run.  This change also eliminates the only usage of
nsEventQueue::GetReentrantMonitor.
2015-09-03 15:38:28 -04:00
Nathan Froyd 92e6eccda2 Bug 1195767 - part 2 - create an nsEventQueueBase templated over the monitor type; r=gerald
Clients of nsEventQueue don't always need fully reentrant monitors.
Let's account for that by having a base class templated on the monitor
type.  This change also opens up the possibility of having the monitor
for the event queue not owned by the event queue itself, but by the
client class, which makes a lot more sense than the current design.
2015-08-28 13:26:17 -04:00
Nathan Froyd 1e05c1710d Bug 1195767 - part 1 - remove nsCOMPtr temporary from nsEventQueue::PutEvent; r=gerald
The comment here suggests that we might AddRef/Release, but we really do
no such thing.  Let's deal with the transfer of ownership directly,
rather than going through nsCOMPtr.  This change makes the code slightly
smaller, and it also makes later refactorings to pull the lock out of
this function easier to do, since we don't have to consider how to hold
the lock within the lifetime of the nsCOMPtr temporary.
2015-08-28 14:19:49 -04:00
Miko Mynttinen 2337336eca Bug 1201287 - Cleanup nsSupportsPrimitives.cpp. r=smaug
--HG--
extra : rebase_source : b0828cd31ba5fd7778852185fdb39af180750287
2015-09-06 19:53:33 +03:00
Phil Ringnalda 90583f7067 Backed out 10 changesets (bug 1123237) for hazard build failures and Windows test failures
CLOSED TREE

Backed out changeset 9c26b3b787f8 (bug 1123237)
Backed out changeset 1fcec0dc93d5 (bug 1123237)
Backed out changeset 390033ceebb6 (bug 1123237)
Backed out changeset e8a1845876d6 (bug 1123237)
Backed out changeset 714ec40715fa (bug 1123237)
Backed out changeset 5ed952e011c3 (bug 1123237)
Backed out changeset c785df6c0cdf (bug 1123237)
Backed out changeset d69e2d195a24 (bug 1123237)
Backed out changeset 1f328807da1d (bug 1123237)
Backed out changeset a1546857dce9 (bug 1123237)
2015-09-05 13:49:39 -07:00
Kan-Ru Chen ab9d4cc8c0 Bug 1123237 - Part 10. Expose SwapElements from nsBaseHashtable. r=nfroyd 2015-09-06 00:13:26 +08:00
Wes Kocher 85ea8cdaff Merge m-c to inbound, a=merge 2015-09-04 15:41:19 -07:00
Wes Kocher a5709b4620 Merge inbound to central, a=merge 2015-09-04 15:34:42 -07:00
Eric Rahm 42afa97523 Bug 1199400 - Part 2: Add tests for possible nsDeque corner cases. r=froydnj 2015-09-04 15:05:01 -07:00
Andrew McCreight 13445609b8 Backed out changeset 351d5f864f9e for not compiling. 2015-09-04 09:52:24 -07:00
Andrew McCreight cc00f8d5c9 Bug 1201271 - Warn about unused results for more methods of nsTArray. r=froydnj
This leaves alone the AppendElement methods.
2015-09-04 09:45:44 -07:00
Andrew McCreight e46abbfe4f Bug 1200795, part 2 - Add memory reporting for CCGraph::mPtrToNodeMap. r=njn 2015-09-04 09:45:44 -07:00
Andrew McCreight bd863a70b2 Bug 1200795, part 1 - Eliminate excessive detail from cycle collector graph memory reporting. r=njn 2015-09-04 09:45:44 -07:00
Carsten "Tomcat" Book ba11394eac Merge mozilla-central to fx-team 2015-09-04 16:25:40 +02:00
Mike Hommey fba2225be7 Bug 1201453 - Make TestTArray's test_fallible use array sizes slightly less than 128MB. r=nfroyd 2015-09-04 14:35:53 +09:00
Eric Rahm f8b8e77b55 Bug 1199400 - Part 1: Use CheckedInt when growing nsDeque capacity. r=froydnj 2015-09-03 13:33:46 -07:00
Eric Rahm 42bed38c5e Bug 1199400 - Part 0: Remove unused nsDequeIterator. r=froydnj 2015-09-04 15:04:58 -07:00
Florian Quèze e966fcb5ac Bug 1169459 - remove the loadFromJars/jarURIs prefs, r=Mossop. 2015-09-04 11:50:49 +02:00
David Major 1415ae55cb Bug 1201205 part 2: Restore protection on the nop space separately from the function. r=m_kato
--HG--
extra : rebase_source : c3b5d44c04b41dc4133e9f3f50a0394c964ac673
2015-09-04 14:24:05 -04:00
David Major 2f23a1b1e6 Bug 1201205 part 1: Add an AutoVirtualProtect helper class to make the next patch easier. r=m_kato
--HG--
extra : rebase_source : c32b1cd483bdbfe09760fcb7c0a36cecf3b9940c
2015-09-04 14:23:33 -04:00
Terrence Cole 0716d4888f Bug 1199843 - Part 3: Strongly type JS::TraceChildren; r=jonco r=mccr8
--HG--
extra : rebase_source : c779897338dc4b73dca98517acb8d0eef7e0d7a5
2015-09-02 11:34:36 -07:00
Ben Kelly 10350eb242 Bug 1184607 P4 Handle the RequestRedirect mode during service worker interception. r=nsm
* * *
Bug 1184607 P4 interdiff 001 fix manual redirect assertion for navigations r=nsm
* * *
Bug 1184607 P4 interdiff 002 dom/worker nits
2015-08-31 14:26:29 -07:00
Alphan Chen daa714c8ea Bug 1154435 - [nsGZFileWriter] Add one more mode for writing a GZFile (Create/Append). r=froydnj 2015-06-05 11:20:16 +08:00
Nicholas Nethercote f44287005f Bug 1198334 (part 1) - Replace the opt-in FAIL_ON_WARNINGS with the opt-out ALLOW_COMPILER_WARNINGS. r=glandium.
The patch removes 455 occurrences of FAIL_ON_WARNINGS from moz.build files, and
adds 78 instances of ALLOW_COMPILER_WARNINGS. About half of those 78 are in
code we control and which should be removable with a little effort.

--HG--
extra : rebase_source : 82e3387abfbd5f1471e953961d301d3d97ed2973
2015-08-27 20:44:53 -07:00
Cervantes Yu 3c09a9761d Bug 1166207 - Load preload.js in the Nuwa process. r=khuey
--HG--
extra : rebase_source : 292c5e5dbee5fa49a78fd1997d97094ef2190143
2015-08-28 17:57:44 +08:00
Seth Fowler 523787b5ca Bug 1181907 (Part 1) - Make it possible to use nsGenericHashKey with free functions. r=heycam 2015-08-26 18:19:31 -07:00
Chris Peterson 1416e566de Bug 1198124 - Enable -Wshadow in directories that have no -Wshadow warnings. r=glandium 2015-08-25 09:14:38 -07:00
Chris Peterson 6b261a1c9e Bug 1197563 - Polyfill __func__ for MSVC 2013 and earlier. r=froydnj 2015-08-20 23:39:18 -07:00
Alphan Chen a7f16b9ea6 Bug 1154435 - [nsDumpUtil] Refine nsDumpUtils::OpenTempFile to make this function more flexible. r=dhylands
- Add one more mode in this function (CREATE/CREATE_UNIQUE)
- export the header file for the usage of other components
2015-06-04 14:47:09 +08:00
Miko Mynttinen ba173ae5e4 Bug 1197316 - Remove PR_snprintf calls in xpcom/. r=froydnj 2015-08-22 17:57:52 -07:00
Kyle Huey e5b6091772 Bug 1195755: Don't assert recursion depth sanity on Mac, because there is none. r=me
--HG--
extra : rebase_source : 6c0c24ead27200b30302828dea22c50219c79a2c
2015-08-21 19:56:56 -07:00
David Major 521d956cba Bug 1196370 - Remove the clang assembly workaround from bug 1028613. r=ehsan 2015-08-20 14:34:57 -07:00
Nicholas Nethercote c8578157c2 Bug 1194061 - Implement "system-heap-allocated" reporter for Windows. r=dmajor.
--HG--
extra : rebase_source : a0f31c1ca1c6671d592c73d2473dcc5669022077
2015-08-19 20:35:17 -07:00
Xidorn Quan 9960d37ffb Bug 1196050 - Replace NSCAP_Zero usage with decltype(nullptr). r=froydnj
--HG--
extra : source : 9c567ed00fcf2433e484325bab9a18322718b0da
2015-08-20 10:30:10 +10:00
Bobby Holley ef08c1794f Bug 1188976 - Improve MozPromise.h comment. r=me DONTBUILD 2015-08-19 17:13:45 -07:00
Honza Bambas c0030e0da9 Bug 1188983 - mozilla::Tokenizer improvements, r=nfroyd
--HG--
extra : rebase_source : 8cfe594e6c320a9330f09b34d7d7018e023938da
2015-08-19 15:14:25 -07:00
Chris Manchester f2dcab6039 Bug 1131325 - Move system country code from nsIGfxInfo2 to a more appropriate location. r=aklotz,smichaud
--HG--
extra : commitid : Jglg9X6ykB1
2015-07-28 15:45:34 -07:00
Xidorn Quan 9602783f5f Bug 1195154 - Replace operator overloads for comparing nsRefPtr to 0 with those for comparing to nullptr. r=froydnj 2015-08-19 11:06:05 -07:00
Nigel Babu 0005d3bf06 Backed out changeset 20c6f74296e2 (bug 1195154) for causing Bug 1196115
--HG--
extra : rebase_source : 59356f3ff488b4000e4f3034f9c676d4afe8b49f
2015-08-19 20:43:11 +05:30
Nathan Froyd 5588065ae9 Bug 1189829 - fix quadratic behavior in nsConsoleService; r=erahm 2015-08-17 21:05:48 -04:00
Xidorn Quan aedc156767 Bug 1195154 - Replace operator overloads for comparing nsRefPtr to 0 with those for comparing to nullptr. r=froydnj
--HG--
extra : source : 3303e551336985eca8b501dcc12cf6f2dddbdec3
2015-08-19 09:09:08 +10:00
Bobby Holley 4ad57e8274 Bug 1195867 - Hoist StateWatching and StateMirroring into XPCOM. r=froydnj
--HG--
rename : dom/media/StateMirroring.h => xpcom/threads/StateMirroring.h
rename : dom/media/StateWatching.h => xpcom/threads/StateWatching.h
2015-08-18 15:37:06 -07:00
Michael Layzell 945c9a35f4 Bug 1195415 - Add asciiHostPort field to nsIURI, and use it in the implementation of nsPrincipal::GetOriginForURI, r=bholley 2015-08-18 14:52:24 -04:00
Arnaud Bienner 2755fa9a57 Bug 1190086 - Use new String::Contains(char) method more widely r=froydnj
--HG--
extra : rebase_source : 81df1495200d3734ea1c4c13818ae764a445f4b3
2015-08-14 00:49:15 +02:00
Bobby Holley a663591994 Bug 1188976 - Hoist MozPromise into xpcom. r=froydnj
--HG--
rename : dom/media/MozPromise.h => xpcom/threads/MozPromise.h
2015-08-17 14:54:45 -07:00
Andrew McCreight 2da6cab23a Bug 1190483 - Followup to address review comment. 2015-08-14 10:04:41 -07:00
Andrew McCreight 066918123c Bug 1190483 - Add a way to record a DMD log late in shutdown. r=erahm 2015-08-14 10:00:04 -07:00
Andrew McCreight d6c5ff450f Bug 1193564 - Check result of Read32 in nsSupportsArray::Read. r=erahm 2015-08-13 14:24:59 -07:00
Mike Conley 7421d14843 Bug 1106321 - Serialize DEVMODE down to the content process when printing on Windows. r=jimm
--HG--
extra : commitid : IhjNJOOtmms
extra : rebase_source : 6b0ba29e866dcf63a3054eb955ece082cbbeda13
extra : amend_source : 70bcf59b1f4b1d7a3a8ec4183b3b9710eedfb5f9
2015-08-06 17:36:54 -04:00
Nicholas Nethercote 01a073b5a2 Bug 828844 - Add a "system-heap-allocated" memory report on Linux. r=glandium.
This gives zero when jemalloc is enabled and non-zero when jemalloc is disabled
(e.g. I got 83 MiB at start-up, which sounds plausible).

--HG--
extra : rebase_source : f39a15472d48643f57a77f1df03e4a29543d0867
2015-08-12 17:44:00 -07:00
Francois Marier 34de332db0 Bug 992096 - Implement Sub Resource Integrity [1/2]. r=baku,r=ckerschb
Code changes
2015-08-12 20:19:11 -07:00
David Major 789b31656d Bug 1192844: Accept 0xCC padding in WindowsDllDetourPatcher::CreateTrampoline. r=m_kato
--HG--
extra : rebase_source : 6711e475036ea3fe98bb054b79e10ad8d54692fb
2015-08-12 13:10:04 -04:00
Aryeh Gregor f29bc4307b Bug 1010756 - Helpful errors for using nsCOMPtr on non-XPCOM types; r=froydnj 2015-08-12 18:43:10 +03:00
Nicholas Nethercote 5b76d8f3b7 Bug 1181443 (part 3, attempt 2) - Remove nsTHashtable::EnumerateEntries(), which is no longer used. r=froydnj.
--HG--
extra : rebase_source : 232b65e93556a311efaf1f2e0b1aee0449b3838d
2015-07-23 02:37:26 -07:00
Nathan Froyd 3b0a318c70 Bug 1192230 - clean up reference-counting in xpcom/; r=erahm 2015-07-01 12:27:43 -04:00
Terrence Cole 2c05aff66d Bug 1193032 - Part 2: Make unlimited SliceBudget initialization explicit; r=ehoogeveen,r=mccr8 2015-08-11 08:42:24 -07:00
Birunthan Mohanathas 0527ccb54c Bug 1185763 - Part 4: Swap elements if possible in r-value version of nsTArray::AppendElements. r=froydnj 2015-08-11 08:29:46 -07:00
Birunthan Mohanathas 2b4a52cf2e Bug 1185763 - Part 3: Rename nsTArray::MoveElementsFrom to AppendElements. r=froydnj 2015-08-11 08:29:46 -07:00
Birunthan Mohanathas 5528f2d07d Bug 1185763 - Part 2: Remove non-rvalue version of nsTArray::MoveElementsFrom. r=froydnj 2015-08-11 08:29:46 -07:00
Kyle Huey 76e3009ab8 Bug 1179909: Refactor stable state handling. r=smaug
This is motivated by three separate but related problems:

1. Our concept of recursion depth is broken for things that run from AfterProcessNextEvent observers (e.g. Promises). We decrement the recursionDepth counter before firing observers, so a Promise callback running at the lowest event loop depth has a recursion depth of 0 (whereas a regular nsIRunnable would be 1). This is a problem because it's impossible to distinguish a Promise running after a sync XHR's onreadystatechange handler from a top-level event (since the former runs with depth 2 - 1 = 1, and the latter runs with just 1).

2. The nsIThreadObserver mechanism that is used by a lot of code to run "after" the current event is a poor fit for anything that runs script. First, the order the observers fire in is the order they were added, not anything fixed by spec. Additionally, running script can cause the event loop to spin, which is a big source of pain here (bholley has some nasty bug caused by this).

3. We run Promises from different points in the code for workers and main thread. The latter runs from XPConnect's nsIThreadObserver callbacks, while the former runs from a hardcoded call to run Promises in the worker event loop. What workers do is particularly problematic because it means we can't get the right recursion depth no matter what we do to nsThread.

The solve this, this patch does the following:

1. Consolidate some handling of microtasks and all handling of stable state from appshell and WorkerPrivate into CycleCollectedJSRuntime.
2. Make the recursionDepth counter only available to CycleCollectedJSRuntime (and its consumers) and remove it from the nsIThreadInternal and nsIThreadObserver APIs.
3. Adjust the recursionDepth counter so that microtasks run with the recursionDepth of the task they are associated with.
4. Introduce the concept of metastable state to replace appshell's RunBeforeNextEvent. Metastable state is reached after every microtask or task is completed. This provides the semantics that bent and I want for IndexedDB, where transactions autocommit at the end of a microtask and do not "spill" from one microtask into a subsequent microtask. This differs from appshell's RunBeforeNextEvent in two ways:
a) It fires between microtasks, which was the motivation for starting this.
b) It no longer ensures that we're at the same event loop depth in the native event queue. bent decided we don't care about this.
5. Reorder stable state to happen after microtasks such as Promises, per HTML. Right now we call the regular thread observers, including appshell, before the main thread observer (XPConnect), so stable state tasks happen before microtasks.
2015-08-11 06:10:46 -07:00
Bobby Holley f97159c6b7 Bug 1190495 - Hoist TaskQueue into xpcom. r=froydnj
--HG--
rename : dom/media/TaskQueue.cpp => xpcom/threads/TaskQueue.cpp
rename : dom/media/TaskQueue.h => xpcom/threads/TaskQueue.h
2015-08-11 08:55:22 -04:00
Alfredo Yang 8c59fda383 Bug 1146086: use promise to Init() in PlatformDecoderModule. r=jya,r=cpearce 2015-08-11 14:09:12 +10:00
ffxbld 3188a80526 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2015-08-10 12:20:42 -07:00
Bobby Holley 5bb15d3a58 Bug 1190492 - Hoist AbstractThread and TaskDispatcher to xpcom. r=froydnj
--HG--
rename : dom/media/AbstractThread.cpp => xpcom/threads/AbstractThread.cpp
rename : dom/media/AbstractThread.h => xpcom/threads/AbstractThread.h
rename : dom/media/TaskDispatcher.h => xpcom/threads/TaskDispatcher.h
2015-08-07 16:38:35 -07:00
Bobby Holley a6c9a6255e Bug 1190492 - Init AbstractThread statics from XPCOM. r=froydnj 2015-08-07 16:38:34 -07:00
Nicholas Nethercote 0a97485195 Bug 1190735 - Remove nsITimer.TYPE_REPEATING_PRECISE. r=froydnj.
--HG--
extra : rebase_source : e4424bde52b0f90adbd328071f62b89193098d34
2015-08-04 17:30:53 -07:00
Nicholas Nethercote deb1dc5d6b Backout 04a196339ca4 (bug 1181443, part 3) so that bug 1182961's patches can be backed out.
--HG--
extra : rebase_source : c2f49d0bfd6a82b35eeed73c0a88f60661c1defd
2015-08-06 16:28:13 -07:00
Andrew McCreight 12b6a0a427 Bug 1189423 - part 2 - Remove superfluous |new| result check. r=froydnj 2015-07-30 15:06:00 +02:00
Andrew McCreight 0869c89dae Bug 1189423 - part 1 - Add MOZ_COUNT_CTOR/DTOR for nsXPTCStubBase. r=froydnj 2015-08-04 14:30:00 +02:00
Nicholas Nethercote 2c850da1f5 Bug 1181443 (part 3) - Remove nsTHashtable::EnumerateEntries(), which is no longer used. r=froydnj.
--HG--
extra : rebase_source : f16a883725371524f0c63d72b09ae69df688673f
2015-07-23 02:37:26 -07:00
Botond Ballo 1ad5e05028 Bug 1056356 - Add support for nsRefPtr<const T>. r=froydnj
--HG--
extra : rebase_source : 7b86c6e7bc47c7b3ebc19075559cf0f7d24ededf
2015-08-05 13:52:06 -04:00
Aryeh Gregor 80ea0a3e53 Bug 1190823 - Move OwningNonNull.h to xpcom/base/; r=froydnj
--HG--
rename : dom/bindings/OwningNonNull.h => xpcom/base/OwningNonNull.h
2015-08-05 15:28:27 +03:00
Bobby Holley ad1880d040 Bug 1191063 - Followup comments. r=me DONTBUILD 2015-08-04 17:36:06 -07:00
Birunthan Mohanathas 7315345693 Bug 1191100 - Remove XPIDL signature comments in .cpp files. r=ehsan
Comment-only so DONTBUILD.
2015-08-04 16:17:36 -07:00
Bobby Holley b5a26b0b15 Bug 1190496 - Hoist SharedThreadPool into xpcom. r=froydnj
--HG--
rename : dom/media/SharedThreadPool.cpp => xpcom/threads/SharedThreadPool.cpp
rename : dom/media/SharedThreadPool.h => xpcom/threads/SharedThreadPool.h
2015-08-04 14:00:58 -07:00
Bobby Holley e7a16a397c Bug 1190496 - Init SharedThreadPool from XPCOM rather than MediaDecoder. r=froydnj 2015-08-04 14:00:52 -07:00
James Cheng 315911c26e Bug 1189231 - Impl operator->* to nsAutoPtr. r=nfroyd 2015-07-30 21:02:00 -04:00
Nicholas Nethercote d98d14fa1e Bug 1189156 (part 4) - Don't use enumeration style for nsBaseHashtable::SizeOf{In,Ex}cludingThis(). r=erahm,jfkthame.
After this change, we have ShallowSizeOf{In,Ex}cludingThis(), which don't do
anything to measure children. (They can be combined with iteration to measure
children.)

--HG--
extra : rebase_source : f98420176f50990bbc5a25e35788328154cfeb00
2015-07-30 21:19:57 -07:00
Nicholas Nethercote 1059c1de13 Bug 1189156 (part 2) - Don't use enumeration style for nsTHashtable::SizeOf{In,Ex}cludingThis(). r=erahm.
After this change, we have ShallowSizeOf{In,Ex}cludingThis(), which don't do
anything to measure children. (They can be combined with iteration to measure
children.)

And we still have the existing single-arg SizeOf{In,Ex}cluding() functions,
which work if the entry type itself defines SizeOfExcludingThis().

--HG--
extra : rebase_source : f93de9b789c21b1b148bed9de795f663f77c9dd9
2015-07-29 01:50:52 -07:00
Nicholas Hurley 16407ea724 Bug 1127618 - make push caches work in e10s. r=mcmanus r=froydnj IGNORE IDL
--HG--
extra : rebase_source : 24dd37c6eaec83a1776d77632b97106e8abb8015
2015-07-31 13:50:08 -07:00
Arnaud Bienner 52ee71547c Bug 1186603 - Add a "Contains" method for string classes and use it in HTMLInputElement. r=nfroyd 2015-07-30 19:45:25 +02:00
Jesse Ruderman 7ed9e0fe1b Bug 1024259: Use NS_FREE_PERMANENT_DATA more consistently. r=mccr8 2015-07-31 12:11:48 -07:00
Kyle Huey 8f1d6bf154 Bug 1152574: Fix console service discarding to run when it is actually safe to do so (off of inner-window-destroyed). Also add a backstop at xpcom-shutdown to discard any cycle collected messages before it is too late. r=froydnj
--HG--
extra : rebase_source : 689ed129fd8df604385dde4fe9d9477f14f2fced
2015-07-31 06:49:27 -07:00