gecko-dev/xpcom
Kris Maglione 8e4b8a954f Bug 1472523: Part 1 - Avoid string copies in preference callbacks. r=njn
Most preference callbacks use literal strings for their domain filters, which
means that there's no need to make copies of them at all. Currently, however,
every preference observer node makes a separate heap-allocated copy of its
domain string.

This patch switches the domain string storage to nsCString instances, which
dramatically reduces the amount of unnecessary copies, at the expense of
making the callback nodes slightly larger.

MozReview-Commit-ID: 8NA3t2JS2UI

--HG--
extra : rebase_source : 628ad9af65cec16fb8be0c8dddc608b5ee5602e2
2018-06-30 23:06:17 -07:00
..
base Bug 1472523: Part 1 - Avoid string copies in preference callbacks. r=njn 2018-06-30 23:06:17 -07:00
build Bug 1460022: Part 12 - Update XPCOM to use revised DLL interceptor interface; r=froydnj 2018-06-27 11:52:18 -06:00
components Bug 1471685 - Work around MSVC linker adding padding during incremental builds. r=froydnj 2018-06-28 15:53:25 +09:00
doc
ds Bug 1469914 - Prevent the HAL from registering duplicate observers; r=froydnj 2018-06-22 00:35:08 +02:00
glue Backed out changeset 602bdd9d5a96 (bug 1461851) for linting failures on /checkouts/gecko/build/appini_header.py on a CLOSED TREE 2018-05-30 19:03:50 +03:00
idl-parser Bug 1471620 - Skip python-tests locally that don't run with python 3 in CI r=davehunt 2018-06-27 11:10:02 -04:00
io Bug 1471434 - micro-optimize refcounting for directory enumerators; r=erahm 2018-06-27 09:46:33 -04:00
libxpt/xptcall
reflect Bug 1470325 - Update Codegen.py to emit Foo_Binding instead of FooBinding. - r=bz,qdot 2018-06-26 17:05:01 -07:00
rust Bug 1453551 - Don't use i8 as c_char in xpcom-gtest. r=mystor 2018-04-12 15:28:08 +09:00
string Bug 1469769 - Part 6: Replace non-failing NS_NOTREACHED with MOZ_ASSERT_UNREACHABLE. r=froydnj 2018-06-17 22:43:11 -07:00
system Backed out changeset 602bdd9d5a96 (bug 1461851) for linting failures on /checkouts/gecko/build/appini_header.py on a CLOSED TREE 2018-05-30 19:03:50 +03:00
tests Bug 1447951 - Store nsDynamicAtom's chars after the end of the object. r=froydnj 2018-06-22 09:38:42 +10:00
threads Bug 1409664 - P8. Make explicit shutdown of TaskQueue optional. r=gerald 2018-07-03 11:45:18 -07:00
typelib Bug 1471620 - Skip python-tests locally that don't run with python 3 in CI r=davehunt 2018-06-27 11:10:02 -04:00
windbgdlg
xpidl Bug 1459721 - part 7 - remove dist_idl install manifest; r=chmanchester 2018-05-15 10:05:23 -04:00
moz.build Bug 1444745 - Part 1: Clear out xptinfo and typelib to make way for the this patch, r=mccr8 2018-04-17 19:20:50 -04:00
xpcom-config.h.in
xpcom-private.h.in Bug 1423846 - Remove configure script checks for iconv and mbrtowc/tcrtomb. r=glandium 2017-12-07 14:06:53 +02:00