Commit Graph

295 Commits

Author SHA1 Message Date
Nathan Froyd
d763323722 Bug 1437604 - remove NS_INTERFACE_MAP_END_THREADSAFE; r=mystor
This macro is identical to NS_INTERFACE_MAP_END and encourages the
reader to think that there's something extra-special threadsafe about QI
implementations that use the macro, when in reality there's nothing of
the sort.
2018-02-12 14:36:46 -05:00
Jan Horak
d5b0cb0ab4 Bug 1411579 - add system handler when Firefox runs in flatpak; r=stransky
Firefox in Flatpak sandboxed environment does not get the list
of installed applications on the system because application should
know about the environment as little as possible. Introducing
nsFlatpakHandlerApp which forwards requests for opening downloaded files
to the system by utilizing gtk_show_uri fuction.

This changeset also removes nsIGIOMimeApp::Launch method from the interface
because it can be fully replaced with LaunchWithUri from nsIHandlerApp
interface.

The TMPDIR where files are downloaded when user choose to open them
needs to be accessible from sandbox and host. The default settings
TMPDIR=/tmp is accessible only to the sandbox.

To workaround for is to set TMPDIR environment variable to
$XDG_CACHE_HOME/tmp before executing Firefox.

MozReview-Commit-ID: CSBv0QcETpd
2018-01-12 16:32:53 +01:00
Jan Horak
e7bd43fa44 Bug 1297686 - List GIO handlers in the protocol handler list, in the handlers dialog, and in preferences. r=paolo
The nsGIOService now provides GetAppsForURIScheme which is used to append handlers
for specific scheme in handler list dialog (toolkit/mozapps/handling/content/dialog.js)
and also in Applications section in preferences. In case the default system handler
or user added handler has same name as one of the GIO handlers, the GIO handler
is not appended. The check for not adding handler is by using handler name.

The nsGIOMimeApp class now implements nsIHandlerApp interface. Instead overloaded
GetName methods (nsCString and nsString) we now use nsString variant everywhere.
This require change of nsGNOMERegistry::GetFromType which if fact leads to code
simplification.

The implementation of nsGNOMEShellService::SetDefaultBrowser has been changed
because implementation of CreateAppFromCommand has changed.
The CreateAppFromCommand no longer tries to find the application,
for that FindAppFromCommand has been introduced.

MozReview-Commit-ID: KmfFWRPqV3
2017-12-29 07:27:42 +00:00
Cosmin Sabou
b7fa5a6d8a Backed out changeset 9660ff09c221 (bug 1297686) for xpcshell failures at uriloader/exthandler/tests/unit/test_handlerService_json.js r=backout on a CLOSED TREE 2017-12-28 19:41:50 +02:00
Jan Horak
11243ad3fa Bug 1297686 - List GIO handlers in the protocol handler list, in the handlers dialog, and in preferences. r=paolo
The nsGIOService now provides GetAppsForURIScheme which is used to append handlers
for specific scheme in handler list dialog (toolkit/mozapps/handling/content/dialog.js)
and also in Applications section in preferences. In case the default system handler
or user added handler has same name as one of the GIO handlers, the GIO handler
is not appended. The check for not adding handler is by using handler name.

The nsGIOMimeApp class now implements nsIHandlerApp interface. Instead overloaded
GetName methods (nsCString and nsString) we now use nsString variant everywhere.
This require change of nsGNOMERegistry::GetFromType which if fact leads to code
simplification.

The implementation of nsGNOMEShellService::SetDefaultBrowser has been changed
because implementation of CreateAppFromCommand has changed.
The CreateAppFromCommand no longer tries to find the application,
for that FindAppFromCommand has been introduced.

MozReview-Commit-ID: KmfFWRPqV3
2017-12-28 15:25:32 +00:00
Sylvestre Ledru
37064ac043 Bug 1394734 - Replace CONFIG['GNU_C*'] by CONFIG['CC_TYPE'] r=glandium
MozReview-Commit-ID: 7duJk2gSd4m
2017-12-07 22:09:15 +01:00
Eric Rahm
b80a434a68 Bug 1423773 - Part 1: Remove usage of nsStringGlue.h. r=glandium
This removes an unnecessary level of indirection by replacing all
nsStringGlue.h instances with just nsString.h.
2017-12-06 16:52:51 -08:00
Adam Gashlin
e928e05f84 Bug 1282419 - Don't send a large notify image. r=karlt 2017-11-28 17:08:41 -08:00
Marco Castelluccio
0916c1251f Bug 1412980 - Remove nsPackageKitService as it is unused. r=froydnj 2017-10-30 17:17:49 +00:00
Masatoshi Kimura
e29c3d5a3e Bug 1313150 - Remove |weak| parameter from nsIMutableArray methods. r=froydnj
MozReview-Commit-ID: 7JoD4VYzZp3
2017-10-21 23:53:02 +09:00
Chris Peterson
66b5818be5 Bug 1402666 - Part 2: Replace Replace(NS_LITERAL_CSTRING("")) with ReplaceLiteral(""). r=erahm
MozReview-Commit-ID: Ho2DHuomdi3
2017-09-15 19:27:59 -07:00
Chris Peterson
6137e4ff8b Bug 870698 - Part 2: Replace Append("") with AppendLiteral(""). r=erahm
MozReview-Commit-ID: CrkIP4iHP1U
2017-09-03 22:14:11 -07:00
Eric Rahm
1e281805ca Bug 1393230 - Part 2: Fix more improper string usages. r=njn
This fixes improper usages of Find where an offset was actually being use for
the boolean ignore case flag. It also fixes a few instances of passing in a
literal wchar_t to our functions where a NS_LITERAL_STRING or char16_t should
be used instead.
2017-08-31 15:52:30 -07:00
Jed Davis
b401805230 Bug 1382442 - Don't try to use GConf in content processes. r=drno,gcp
GConf uses ORBit, which tries to create server sockets, which has been
disallowed by the content sandbox seccomp-bpf policy since 55 (bug
1358647).  GConf is considered obsolete and hasn't been updated since
2013.  This patch disables the use of GConf in content processes, on the
assumption that anything that this would break is already broken by
rejecting the system call.

The one use case that's believed to be broken is using WebRTC behind a
mandatory proxy and using system preferences (rather than Firefox's) for
the proxy config.  WebRTC uses nsIProtocolProxyService in the content
process, so if this combination of things is done on a system with GConf,
it will not be able to read the system prefs.

The larger use case of WebRTC + GConf (with or without a proxy) will
crash on Nightly without this patch, because rejected syscalls produce
crashes in order to gather more diagnostic information.

MozReview-Commit-ID: 6jpBkByzo7n
2017-08-16 10:11:15 -06:00
Nicholas Nethercote
723f585d9c Bug 1386600 - Change nsIStringBundle methods to return |AString| instead of |wstring|. r=emk,sr=dbaron.
This removes about 2/3 of the occurrences of nsXPIDLString in the tree. The
places where nsXPIDLStrings are null-checked are replaced with |rv| checks.

The patch also removes a couple of unused declarations from
nsIStringBundle.idl.

Note that nsStringBundle::GetStringFromNameHelper() was merged into
GetStringFromName(), because they both would have had the same signature.
2017-08-04 14:40:52 +10:00
Nicholas Nethercote
8b5bdf0867 Bug 1380227 - Avoid many UTF16toUTF8 and UTF8toUTF16 conversions in nsStringBundle. r=emk.
Most of the names passed to nsIStringBundle::{Get,Format}StringFromUTF8Name
have one of the two following forms:

- a 16-bit C string literal, which is then converted to an 8-bit string in
  order for the lookup to occur;

- an 8-bit C string literal converted to a 16-bit string, which is then
  converted back to an 8-bit string in order for the lookup to occur.

This patch introduces and uses alternative methods that can take an 8-bit C
string literal, which requires changing some signatures in other methods and
functions. It replaces all C++ uses of the old methods.

The patch also changes the existing {Get,Format}StringFromName() methods so
they take an AUTF8String argument for the name instead of a wstring, because
that's nicer for JS code.

Even though there is a method for C++ code and a different one for JS code,
|binaryname| is used so that the existing method names can be used for the
common case in both languages.

The change reduces the number of NS_ConvertUTF8toUTF16 and
NS_ConvertUTF16toUTF8 conversions while running Speedometer v2 from ~270,000 to
~160,000. (Most of these conversions involved the string
"deprecatedReferrerDirective" in nsCSPParser.cpp.)
2017-07-12 15:13:37 +10:00
Sylvestre Ledru
9d4a84d778 Bug 1378712 - Remove all trailing whitespaces r=Ehsan
MozReview-Commit-ID: Kdz2xtTF9EG
2017-07-06 14:00:35 +02:00
Nicholas Nethercote
fcd4f4fa21 Bug 1376638 - Minimize uses of prmem.h. r=glandium.
It's silly to use prmem.h within Firefox code given that in our configuration
its functions are just wrappers for malloc() et al. (Indeed, in some places we
mix PR_Malloc() with free(), or malloc() with PR_Free().)

This patch removes all uses, except for the places where we need to use
PR_Free() to free something allocated by another NSPR function; in those cases
I've added a comment explaining which function did the allocation.
2017-06-30 19:05:41 -07:00
Nicholas Nethercote
a58025002f Bug 1375392 - Tweak the PROFILER_LABEL* macros. r=mstange.
This patch makes the following changes to the macros.

- Removes PROFILER_LABEL_FUNC. It's only suitable for use in functions outside
  classes, due to PROFILER_FUNCTION_NAME not getting class names, and it was
  mostly misused.

- Removes PROFILER_FUNCTION_NAME. It's no longer used, and __func__ is
  universally available now anyway.

- Combines the first two string literal arguments of PROFILER_LABEL and
  PROFILER_LABEL_DYNAMIC into a single argument. There was no good reason for
  them to be separate, and it forced a '::' in the label, which isn't always
  appropriate. Also, the meaning of the "name_space" argument was interpreted
  in an interesting variety of ways.

- Adds an "AUTO_" prefix to PROFILER_LABEL and PROFILER_LABEL_DYNAMIC, to make
  it clearer they construct RAII objects rather than just being function calls.
  (I myself have screwed up the scoping because of this in the past.)

- Fills in the 'js::ProfileEntry::Category::' qualifier within the macro, so
  the caller doesn't need to. This makes a *lot* more of the uses fit onto a
  single line.

The patch also makes the following changes to the macro uses (beyond those
required by the changes described above).

- Fixes a bunch of labels that had gotten out of sync with the name of the
  class and/or function that encloses them.

- Removes a useless PROFILER_LABEL use within a trivial scope in
  EventStateManager::DispatchMouseOrPointerEvent(). It clearly wasn't serving
  any useful purpose. It also serves as extra evidence that the AUTO_ prefix is
  a good idea.

- Tweaks DecodePool::SyncRunIf{Preferred,Possible} so that the labelling is
  done within them, instead of at their callsites, because that's a more
  standard way of doing things.
2017-06-22 17:08:53 +10:00
Liang-Heng Chen
21c607a6f6 Bug 624837 - use calculated string length instead of magic number; r=bagder
The original magic number is incorrect.

MozReview-Commit-ID: LtdnINTONHq
2017-06-14 18:47:58 +08:00
Liang-Heng Chen
ab019fbd70 Bug 1366133 - Part 1: make nsISystemProxySettings::GetPACURI happen in another thread; r=bagder
MozReview-Commit-ID: FyiNM8KX0gk
2017-05-24 14:36:53 +08:00
Liang-Heng Chen
a55810daae Bug 1366133 - Part 0: remove support for Windows Vista and earlier versions; r=bagder
In Windows Vista or earlier versions of Windows, it requires to call
InternetOptionQuery again with INTERNET_PER_CONN_FLAGS (see [1] for more
information). Since we're not going to support those Windows versions,
it is safe to remove this query.

[1] https://msdn.microsoft.com/en-us/library/windows/desktop/aa385145(v=vs.85).aspx

MozReview-Commit-ID: DQFxYZsb3MW
2017-05-24 11:06:07 +08:00
Joel Maher
d2be399571 Bug 1351067 - add BUG_COMPONENT to toolkit/* files. r=myk,enndeakin,mossop
MozReview-Commit-ID: 8mv5Oed68JL
2017-04-09 05:43:43 -04:00
Mike Hommey
b1a06955a6 Bug 1344038 - Remove --disable-gio. r=karlt 2017-04-05 14:06:25 +09:00
Iris Hsiao
33f7647173 Backed out 3 changesets (bug 1344038) for bustage
Backed out changeset 4befea89d81b (bug 1344038)
Backed out changeset c859506b2e4e (bug 1344038)
Backed out changeset 5d28a6382285 (bug 1344038)
2017-04-06 10:35:56 +08:00
Mike Hommey
a30fe327bd Bug 1344038 - Remove --disable-gio. r=karlt 2017-04-05 14:06:25 +09:00
Liang-Heng Chen
c974104639 Bug 1028195 - make proxy bypass rule consistent; r=bagder
MozReview-Commit-ID: CMAUt1p3L3u
2017-02-08 15:10:02 +08:00
Sylvestre Ledru
0f65f2ab6c Bug 1318004 - Converts for(...; ...; ...) loops to use the new range-based loops in C++11. r=Ehsan
MozReview-Commit-ID: lk5eJXUno9
2016-11-16 17:12:13 +01:00
Sylvestre Ledru
a15f1c5d08 Bug 1318004 - Replace default bodies of special member functions with = default; r=Ehsan
MozReview-Commit-ID: 33AOhtFrXS8
2016-11-16 18:26:14 +01:00
Wes Kocher
b620596e75 Backed out 4 changesets (bug 1318004) for xpcshell failures a=backout CLOSED TREE
Backed out changeset a3fe53641526 (bug 1318004)
Backed out changeset a5d1676b6f88 (bug 1318004)
Backed out changeset b56b37f0f4d7 (bug 1318004)
Backed out changeset fb5254baf1cb (bug 1318004)
2016-11-21 16:15:38 -08:00
Sylvestre Ledru
7ccbd595c5 Bug 1318004 - Converts for(...; ...; ...) loops to use the new range-based loops in C++11. r=Ehsan
MozReview-Commit-ID: lk5eJXUno9
2016-11-16 17:12:13 +01:00
Sylvestre Ledru
eaf1a1bb8c Bug 1318004 - Replace default bodies of special member functions with = default; r=Ehsan
MozReview-Commit-ID: 33AOhtFrXS8
2016-11-16 18:26:14 +01:00
Wes Kocher
13642ca8af Backed out 4 changesets (bug 1318004) for xpcshell failures a=backout
Backed out changeset 6995bd33872b (bug 1318004)
Backed out changeset 9be5c856bc78 (bug 1318004)
Backed out changeset 365b0b7f289a (bug 1318004)
Backed out changeset 2f2ebf176eac (bug 1318004)
2016-11-21 12:23:17 -08:00
Sylvestre Ledru
ea83e5e8bd Bug 1318004 - Converts for(...; ...; ...) loops to use the new range-based loops in C++11. r=Ehsan
MozReview-Commit-ID: lk5eJXUno9
2016-11-16 17:12:13 +01:00
Sylvestre Ledru
c30faf12df Bug 1318004 - Replace default bodies of special member functions with = default; r=Ehsan
MozReview-Commit-ID: 33AOhtFrXS8
2016-11-16 18:26:14 +01:00
William Chen
ffb414a896 Bug 862395 - Part 1: Add requireInteraction property to web notifications. r=baku 2016-10-12 17:27:40 -07:00
Nicholas Nethercote
cc4d39daaa Bug 1297300 - Add missing checks to GetSpec() calls in toolkit/. r=froydnj. 2016-09-08 14:32:20 +10:00
Kan-Ru Chen
a9b19d0584 Bug 1297276 - Rename mfbt/unused.h to mfbt/Unused.h for consistency. r=froydnj
The patch is generated from following command:

  rgrep -l unused.h|xargs sed -i -e s,mozilla/unused.h,mozilla/Unused.h,

MozReview-Commit-ID: AtLcWApZfES
2016-08-24 14:47:04 +08:00
Tom Tromey
1b5a2bdb96 Bug 1286877 - do not set c-basic-offset for python-mode; r=gps
This removes the unnecessary setting of c-basic-offset from all
python-mode files.

This was automatically generated using

    perl -pi -e 's/; *c-basic-offset: *[0-9]+//'

... on the affected files.

The bulk of these files are moz.build files but there a few others as
well.

MozReview-Commit-ID: 2pPf3DEiZqx
2016-07-14 10:16:42 -06:00
Chris Peterson
6c0f810682 Bug 1277106 - Part 2: Expand MOZ_UTF16() strings to u"" string literals. r=Waldo 2016-07-20 22:03:25 -07:00
Kit Cambridge
294f6f8051 Bug 1233086, Part 2 - Use unified image loading for libnotify alerts. r=karlt
MozReview-Commit-ID: 4gheorRE0q7
2016-06-10 18:37:38 -07:00
SUN Haitao
86fce9587d Bug 1264815 - Add a 'showPersistentNotification' method to nsIAlertService. r=kcambridge 2016-05-12 23:58:18 +08:00
Jonathan Hao
cc18311684 Bug 1280006 - Backout "Bug 1270680 - Part 1: Double-key the image cache by origin attribute." r=tanvi
This reverts commit bb0482fe09fbfad9be89384ec5cb8b6518187379.
2016-06-14 12:43:21 +01:00
Jonathan Hao
9e1494388d Bug 1270680 - Part 1: Double-key the image cache by origin attribute. r=jdm,seth 2016-06-01 23:07:00 +02:00
Liang-Heng Chen
c58a2f7d01 Bug 1258977 - Part 3: handle special case to follow the test; r=bagder
MozReview-Commit-ID: ImGSoBMwQvx
2016-05-26 17:48:51 +08:00
Liang-Heng Chen
f8f5ef6f82 Bug 1258977 - Part 2: add proxy exception tests; r=bagder
MozReview-Commit-ID: HS8Y41TtxvF
2016-05-26 14:48:27 +08:00
Liang-Heng Chen
79df15ca74 Bug 1258977 - Part 1: separate match function; r=bagder
MozReview-Commit-ID: J4DVAzI0bZm
2016-05-26 14:34:51 +08:00
Jonathan Watt
29b7b0d8c3 Bug 1275266 - Rename imgLoader::Singleton and imgLoader::PBSingleton to something less misleading, and document them. r=tnikkel 2016-05-19 13:31:15 +01:00
Jonathan Watt
af3370cef4 Bug 1275101 - Stop using XPCOM services to get the imgLoader in nsAlertsIconListener::StartRequest. r=tnikkel 2016-05-18 10:19:19 +01:00
Chris Peterson
1e35dbdf75 Bug 1272513 - Part 2: Remove redundant -Wshadow CXXFLAGS from moz.build files. r=glandium 2016-05-14 00:54:55 -07:00