gecko-dev/xpcom
Nicholas Nethercote af281df032 Bug 1587176 - Fix UBSAN complaints about nsCOMArray. r=erahm
nsCOMArray currently casts a function that takes two `void` pointers into a
function that takes two `nsISupports` pointers. UBSAN doesn't like this.

This commit introduces an extra level of casting machinery. As a result, each
comparison done while sorting goes through an extra level, to get from `(T*,
T*)` comparisons to `(nsISupports*, nsISupports*)` comparisons to `(void*,
void*)` comparisons, as required by `NS_QuickSort()`. It's a bit annoying but I
can't see how else to solve this within the constraint imposed by the existing
`nsCOMArray_base`/`nsCOMArray` split.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 00:14:10 +00:00
..
base Bug 1593007: Allow for moz_log suffix in sandbox policy rules. r=mayhemer 2019-11-05 13:05:36 +00:00
build Bug 1579367 - Initialize XPCJSContext explicitly, after loading user prefs. r=kmag 2019-11-05 06:29:13 +00:00
components Bug 1591823 - Part 2: Switch nsIComponentRegistrar.enumerateContractIDs away from using nsISimpleEnumerator; r=froydnj 2019-10-28 13:26:50 +00:00
doc
ds Bug 1587176 - Fix UBSAN complaints about nsCOMArray. r=erahm 2019-11-05 00:14:10 +00:00
glue Bug 1580128 - Simplify required env variables for fuzzing interface. r=froydnj 2019-09-10 14:33:58 +00:00
idl-parser Bug 1587206 - [lint.flake8] Enable F632 across the tree, r=sylvestre 2019-10-10 18:50:33 +00:00
io Bug 1545123 - simplify how we get directory information for plugins, r=handyman,mconley 2019-11-02 22:33:42 +00:00
libxpt/xptcall
reflect Bug 1586358 - Replace existing instances of GENERATED_FILES with references to the GeneratedFile template r=firefox-build-system-reviewers,mshal 2019-10-07 21:15:19 +00:00
rust Bug 1589738 - nsACString::as_str_unchecked should actually check in debug builds. r=nika 2019-10-18 19:09:55 +00:00
string Bug 1591191 - Move compare and EqualsIgnoreAsciiCase to nsTStringRepr. r=erahm 2019-11-04 11:27:05 +00:00
system Bug 1591174 - Fix some references to nsIDOMWindow. r=bzbarsky 2019-11-05 04:52:53 +00:00
tests Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan 2019-10-06 18:29:55 +00:00
threads Bug 1593802 - don't drop dispatch flags in TaskQueue's EventTargetWrapper; r=erahm 2019-11-05 16:59:30 +00:00
windbgdlg
xpidl
moz.build
xpcom-config.h.in Bug 1570982 - remove CPP_THROW_NEW; r=glandium 2019-08-14 01:32:41 +00:00
xpcom-private.h.in