gecko-dev/chrome
Nicholas Nethercote 9252435548 Bug 1410794 (attempt 2) - Change some |string| occurrences in nsIPrefBranch.idl to |ACString|. r=erahm.
This makes the code nicer. In particular, it removes many getter_Copies()
calls. The patch also converts a lot of nsCStrings to nsAutoCString, which will
avoid heap allocation in the common case.

The patch also renames PREF_CopyCharPref() as PREF_GetCStringPref(), because
it's actually getting a string, not a char, and that matches the existing
GetCString() and GetDefaultCString() methods. Correspondingly, it also renames
PREF_SetCharPref() as PREF_SetCStringPref().

The |aPrefName| arguments in nsIPrefBranch.idl remain as |string| because they
almost always involve passing in C string literals, and passing "foo" is much
nicer than passing NS_LITERAL_CSTRING("foo").

It's worth noting that early versions of this patch used |AUTF8String| instead
of |ACString|. But it turns out that libpref stores prefs internally as Latin1.
And |ACString| is compatible with Latin1 but |AUTF8String| isn't, because
non-ASCII Latin1 strings are not valid UTF-8!

MozReview-Commit-ID: D3f7a1Vl1oE

--HG--
extra : rebase_source : e6e4b15d6d210cfd93686f96400281f02bd1d06b
2017-10-27 10:30:33 +11:00
..
test Bug 1403956 - Enable ESLint from chrome/ directory. r=standard8 2017-10-26 16:56:18 -04:00
RegistryMessageUtils.h
moz.build
nsChromeProtocolHandler.cpp
nsChromeProtocolHandler.h
nsChromeRegistry.cpp
nsChromeRegistry.h
nsChromeRegistryChrome.cpp Bug 1410794 (attempt 2) - Change some |string| occurrences in nsIPrefBranch.idl to |ACString|. r=erahm. 2017-10-27 10:30:33 +11:00
nsChromeRegistryChrome.h
nsChromeRegistryContent.cpp
nsChromeRegistryContent.h
nsIChromeRegistry.idl
nsIToolkitChromeRegistry.idl