gecko-dev/dom/encoding
Kris Maglione 0bfdb4329f Bug 1473631: Part 0a - Make preference callbacks typesafe. r=njn
I initially tried to avoid this, but decided it was necessary given the number
of times I had to repeat the same pattern of casting a variable to void*, and
then casting it back in a part of code far distant from the original type.

This changes our preference callback registration functions to match the type
of the callback's closure argument to the actual type of the closure pointer
passed, and then casting it to the type of our generic callback function. This
ensures that the callback function always gets an argument of the type it's
actually expecting without adding any additional runtime memory or
QueryInterface overhead for tracking it.

MozReview-Commit-ID: 9tLKBe10ddP

--HG--
extra : rebase_source : 7524fa8dcd5585f5a31fdeb37d95714f1bb94922
2018-07-06 12:24:41 -07:00
..
test Bug 1440284 - change this.EXPORTED_SYMBOLS back to var EXPORTED_SYMBOLS in JS modules, r=mccr8. 2018-02-23 20:50:01 +01:00
FallbackEncoding.cpp Bug 1473631: Part 0a - Make preference callbacks typesafe. r=njn 2018-07-06 12:24:41 -07:00
FallbackEncoding.h Bug 1071816 - Add a pref to fallback to UTF-8 for files from file: URLs. r=hsivonen 2017-11-30 20:55:07 +09:00
TextDecoder.cpp Bug 1406819 - Remove various bits of dead code from dom/. r=baku 2017-10-11 10:09:13 +01:00
TextDecoder.h Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
TextEncoder.cpp Bug 1461292 part 1 - Rename JSAutoCompartment to JSAutoRealm. r=bz,luke 2018-05-16 10:53:16 +02:00
TextEncoder.h Bug 1470325 - s/FooBinding/Foo_Binding/g - r=qdot 2018-06-26 17:05:01 -07:00
domainsfallbacks.properties
encodings2arrays.py Bug 1418743 - Stop using Encoding::ForName in FallbackEncoding.cpp. r=hsivonen 2017-11-15 22:56:08 +09:00
labelsencodings.properties
localesfallbacks.properties
moz.build Bug 1418743 - Stop using Encoding::ForName in FallbackEncoding.cpp. r=hsivonen 2017-11-15 22:56:08 +09:00
nonparticipatingdomains.properties