Commit Graph

876 Commits

Author SHA1 Message Date
Paolo Amadini
f8f11dfa12 Bug 1452633 - Overwriting local file results in file being deleted. r=mak
MozReview-Commit-ID: 7XwqF23q4lr
2018-04-13 12:03:02 +01:00
Nika Layzell
f614b85fbe Bug 1443379 - Stop pretending cacheKey can be anything other than uint32_t, r=smaug 2018-04-10 17:49:46 -04:00
Tomislav Jovanovic
e0a4447bed Bug 1438025 - Drop invisible characters from downloads filename. r=kmag, r=Paolo 2018-03-21 23:23:59 +01:00
Marco Bonardo
9378cf4109 Bug 1446951 - 4 - Make QueriesToQueryString and QueryStringToQueries singular. r=standard8
MozReview-Commit-ID: K8x2x0kARDn
2018-03-16 18:43:57 +01:00
Marco Bonardo
6925512606 Bug 1446951 - 1 - Remove nsINavHistory::ExecuteQueries. r=standard8
MozReview-Commit-ID: ATQLGKzMtnn
2018-03-16 15:38:05 +01:00
Paolo Amadini
2d0d64e7b6 Bug 1363061 - Rename toolkit/components/jsdownloads to toolkit/components/downloads. r=mak
MozReview-Commit-ID: GuWeax0ubv3
2018-03-06 17:40:59 +00:00
Paolo Amadini
16faec8950 Bug 851471 - Decommission nsIDownloadManager. r=mak
MozReview-Commit-ID: HfqdrdJcLrh
2018-03-06 13:16:07 +00:00
Kris Maglione
edc98f08f3 Bug 1412726: Clean up XPCOM singleton constructor refcount handling. r=froydnj
This is a follow-up to bug 1409249. There are a lot of places where our
factory singleton constructors either don't correctly handle their returned
references being released by the component manager, or do handle it, but in
ways that are not obvious.

This patch handles a few places where we can sometimes wind up with dangling
singleton pointers, adds some explanatory comments and sanity check
assertions, and replaces some uses of manual refcounting with StaticRefPtr and
ClearOnShutdown.

There are still some places where we may wind up with odd behavior if the
first QI for a getService call fails. In those cases, we wind up destroying
the first instance of a service that we create, and re-creating a new one
later.

MozReview-Commit-ID: ANYndvd7aZx
2017-10-29 16:02:40 -07:00
DimiL
2e92fef582 Bug 1384753 - Move Application Reputation files into a new component. r=francois 2017-10-23 16:18:52 +08:00
Sebastian Hengst
b963414666 Backed out 2 changesets (bug 1384753) for frequently failing toolkit/components/extensions/test/mochitest/test_chrome_ext_downloads_saveAs.html on Android. r=backout on a CLOSED TREE
Backed out changeset 2f0da700e651 (bug 1384753)
Backed out changeset 9801aade9511 (bug 1384753)
2017-10-27 18:36:30 +02:00
DimiL
7fca0df8c3 Bug 1384753 - Move Application Reputation files into a new component. r=francois
MozReview-Commit-ID: Ehi9IziJyXB
2017-10-23 16:18:52 +08:00
Kris Maglione
375dfdb59d Bug 1409249: Require singleton constructors to return explicit already_AddRefed. r=froydnj
Right now, NS_GENERIC_FACTORY_SINGLETON_CONSTRUCTOR expects singleton
constructors to return already-addrefed raw pointers, and while it accepts
constructors that return already_AddRefed, most existing don't do so.

Meanwhile, the convention elsewhere is that a raw pointer return value is
owned by the callee, and that the caller needs to addref it if it wants to
keep its own reference to it.

The difference in convention makes it easy to leak (I've definitely caused
more than one shutdown leak this way), so it would be better if we required
the singleton getters to return an explicit already_AddRefed, which would
behave the same for all callers.


This also cleans up several singleton constructors that left a dangling
pointer to their singletons when their initialization methods failed, when
they released their references without clearing their global raw pointers.

MozReview-Commit-ID: 9peyG4pRYcr
2017-10-16 21:08:42 -07:00
Francois Marier
af9d19f286 Bug 1385461 - Upgrade to the latest version of the protobuf library. r=dimi,fitzgen,glandium,mattwoodrow,mossop
The tarball that was imported is the 3.4.1 release:

  https://github.com/google/protobuf/releases/tag/v3.4.1
  https://github.com/google/protobuf/releases/download/v3.4.1/protobuf-cpp-3.4.1.tar.gz

This drops all of the customizations that are no longer needed,
which includes a few issues that were fixed upstream:

- r512.patch from bug 892856:

    https://searchfox.org/mozilla-central/rev/bab9dbe9c4ef71f71fb07e53b701fb2dfde277d9/toolkit/components/protobuf/r512.patch
    b04e5cba35/src/google/protobuf/io/zero_copy_stream_impl.cc (L43)

- vs2013.patch, also from bug 892856:

    https://searchfox.org/mozilla-central/rev/bab9dbe9c4ef71f71fb07e53b701fb2dfde277d9/toolkit/components/protobuf/vs2013.patch
    b04e5cba35/src/google/protobuf/wire_format_lite_inl.h (L39)

- sparc64 fixes in m-c-changes.patch from bug 1275204:

    https://hg.mozilla.org/integration/mozilla-inbound/rev/21d692e82582
    b04e5cba35/src/google/protobuf/stubs/platform_macros.h (L68)

The LOGLEVEL_ERROR hack in m-c-changes.patch from bug 1024774 and
bug 1320179 was replaced by a NOGDI define in moz.build as suggested
by upstream:

    https://github.com/google/protobuf/pull/3745/files#r144915445

The other customizations that were dropped came from bug 1024774.

The patch for OpenBSD/32-bit will likely be fixed upstream in a
future release:

    https://github.com/google/protobuf/pull/3747#issuecomment-336581244

Upgrading the protobuf library also required re-generating all
of the existing .pb.h and pb.cc files (they are neither forward
nor backward-compatible) and making adjustments to the build
config to make it compile (and silence warnings).

text_format.cc can now be compiled as part of UNIFIED_SOURCES.

MozReview-Commit-ID: 7F2IqFmwQnN
2017-10-18 15:02:05 -07:00
Andrew McCreight
cf68eeb094 Bug 1408005 - Clear gApplicationReputationService in the dtor. r=francois 2017-10-23 10:18:42 -04:00
Kris Maglione
60872d7b31 Bug 1404198: Part 2f - Switch to NS_NewTimer* in toolkit. r=njn
MozReview-Commit-ID: 185rZ99R6zV
2017-10-15 23:14:00 -07:00
Nicholas Nethercote
efd179d749 Bug 1402760 - Change nsIApplicationReputationQuery::suggestedFileName from an AString to an AUTF8String. r=gcp.
This lets us use 8-bit string literals for lots of filename extensions, and
also avoids two uses of NS_ConvertUTF16toUTF8.
2017-09-25 14:50:20 +10: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
Francois Marier
8655ab52d9 Bug 1399249 - Add .xhtml, .xhtm and .xht to Application Reputation checks. r=gcp
MozReview-Commit-ID: BP8bGNIcttB
2017-09-12 15:01:38 -07:00
Francois Marier
c94478e4e7 Bug 1381704 - Remove unused Application Reputation telemetry probe. r=hchang,liuche
MozReview-Commit-ID: GLjgu8VP1z8
2017-08-22 17:16:24 -07:00
Mark Banner
44963145a5 Bug 1392098 - Enable the new ESLint no-useless-run-test rule across the tree. r=mossop
MozReview-Commit-ID: 35MaseieNUk
2017-08-20 18:52:05 +01: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
636397db95 Bug 1384835 (part 1, attempt 2) - Use nsA[C]String references instead of pointers for outparams of Get*String() pref functions. r=froydnj. 2017-07-31 10:52:51 +10:00
Kartikaya Gupta
14424677af Bug 1384233 - Remove SizePrintfMacros.h. r=froydnj
We have a minimum requirement of VS 2015 for Windows builds, which supports
the z length modifier for format specifiers. So we don't need SizePrintfMacros.h
any more, and can just use %zu and friends directly everywhere.

MozReview-Commit-ID: 6s78RvPFMzv
2017-07-26 16:03:57 -04: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
Francois Marier
4b9f4bdb04 Bug 1376036 - Run data and blob URIs through Application Reputation checks. r=gcp
blob URIs are sent through unfiltered and data URIs are hashed in
the same way as Chrome does.

Also, we used to bail on the first invalid URL we encountered. We now
keep going, checking the other URLs in the chain and eventually doing
the remote lookup.
2017-07-11 23:02:23 -04:00
Florian Quèze
c0468168f5 Bug 1368456 - remove Promise.jsm imports in tests, r=mconley. 2017-06-23 11:25:52 +02:00
DimiL
611d1430b5 Bug 1366965 - Remove telemetry that compare SafeBrowsing V2 & V4. r=francois
MozReview-Commit-ID: 7vudFBK3rdp
2017-06-12 11:27:19 +08:00
Thomas Nguyen
bbb4c84e53 Bug 1351146 - P2 - Update test case and usage of nsIRedirectHistoryEntry interface. r=dragana
MozReview-Commit-ID: s61VV5CLx8
2017-05-25 19:42:00 +02:00
Francois Marier
d32facf80e Bug 1364959 - Do remote application reputation lookups when downloading HTML files. r=dimi
MozReview-Commit-ID: HHm9zQLtj05
2017-05-15 09:40:36 -07:00
Paolo Amadini
ee2775c0b1 Bug 1364050 - Part 3 - Remove obsolete code from the nsIDownloadManager implementation. r=mak
A missing dependency in "nsTypeAheadFind.h" is also fixed to allow the removal of the include files from "nsToolkitCompsModule.cpp".

MozReview-Commit-ID: EefZA9bEUW0
2017-05-15 11:55:50 +01:00
Paolo Amadini
5f07f4b06e Bug 1364050 - Part 1 - Remove the MOZ_JSDOWNLOADS configure option. r=mak
MozReview-Commit-ID: B73Ym5tD06R
2017-05-05 12:16:42 +01:00
Florian Quèze
15feaa278a Bug 1362882 - script-generated patch to switch from Promise.defer() to new Promise() where it's straightforward, rs=Mossop. 2017-05-12 14:55:27 +02:00
Florian Quèze
ff53eb9a63 Bug 1353542 - massive script-generated patch converting Task.async and Task.spawn calls, and generators clearly identifiable as tasks, rs=Mossop. 2017-05-12 14:42:39 +02:00
Thomas Nguyen
15682486c6 Bug 1358333 - Fix APPLICATION_REPUTATION_ALLOWLIST_MATCH and APPLICATION_REPUTATION_BLOCKLIST_MATCH telemetry r=francois
MozReview-Commit-ID: DbI0uNdEwZ8
2017-04-21 11:18:34 +08:00
Francois Marier
d593f1e244 Bug 1354713 - Make use of the application reputation allow list on OSX and Linux. r=gcp
Since the allow list contains both hostnames and certificate hashes, it makes sense
to use it on all platforms.

MozReview-Commit-ID: 1icRFYhhnAY
2017-04-07 16:07:41 -07:00
Zibi Braniecki
8c433fc56a Bug 1346616 - Migrate callsites that are retrieving requested locale from pref, to use LocaleService::GetRequestedLocales. r=jfkthame,Pike
I'm adding a helper function mozILocaleService::GetRequestedLocale to simplify
most of the callsites that are looking for the first of the requested locales.

In most cases, I'm just matching the behavior of the code with reusing
LocaleService API instead of direct manipulation on the prefs.
That includes how I handle error case scenarios.

In case of sdk/l10n/locale.js I am reusing LocaleService heuristics over
the custom one from the file since the ones in LocaleService are just
more correct and unified accross the whole platform.

In case of FallbackEncoding I have to turn it into a nsIObserver to listen
to intl:requested-locales-changed.

MozReview-Commit-ID: 7rOr2CovLK
2017-03-11 18:43:11 -08:00
Sebastian Hengst
017c2ee2bf Backed out changeset 60d72c2dd49d (bug 1346616) for eslint failure in DirectoryLinksProvider.jsm. r=backout on a CLOSED TREE 2017-04-18 00:48:16 +02:00
Zibi Braniecki
64bae2dccf Bug 1346616 - Migrate callsites that are retrieving requested locale from pref, to use LocaleService::GetRequestedLocales. r=jfkthame,Pike
I'm adding a helper function mozILocaleService::GetRequestedLocale to simplify
most of the callsites that are looking for the first of the requested locales.

In most cases, I'm just matching the behavior of the code with reusing
LocaleService API instead of direct manipulation on the prefs.
That includes how I handle error case scenarios.

In case of sdk/l10n/locale.js I am reusing LocaleService heuristics over
the custom one from the file since the ones in LocaleService are just
more correct and unified accross the whole platform.

In case of FallbackEncoding I have to turn it into a nsIObserver to listen
to intl:requested-locales-changed.

MozReview-Commit-ID: 7rOr2CovLK
2017-03-11 18:43:11 -08:00
Florian Queze
aca1103c68 Bug 1356569 - Remove appendElement's last parameter when it is false, r=jaws. 2017-04-14 21:51:39 +02:00
Sebastian Hengst
4189eac09e Backed out changeset e1f191aad863 (bug 1356569) 2017-04-14 23:39:17 +02:00
Florian Queze
6c119a88d3 Bug 1356569 - Remove appendElement's last parameter when it is false, r=jaws. 2017-04-14 21:51:39 +02: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
Mark Banner
ec9074e132 Bug 1347712 - Change the testing configurations into ESLint configurations within eslint-plugin-mozilla - automatically update .eslintrc.js test config files for new config locations. r=jaws
MozReview-Commit-ID: LH0CQOPfoe6
2017-03-20 12:36:37 +01:00
David Major
b1e362f6f7 Bug 1344615: Remove nsXPCOMStrings.{h,cpp} r=bsmedberg
These are now dead code.

MozReview-Commit-ID: AClU0Qx3kmN
2017-03-06 17:52:54 +13:00
Thomas Nguyen
d107e3566b Bug 1331139 - Enable download protection for V4 lists. r=francois
MozReview-Commit-ID: 8IHKGvXQjPt
2017-02-27 12:18:33 +08:00
Gijs Kruitbosch
b381e8453b Bug 1341097 - part 3: don't dispatch oodles of titlechanged notifications for new history entries, r=mak
MozReview-Commit-ID: 7jHOcCQ5ZBb
2017-02-27 18:26:21 +00:00
Thomas Nguyen
882486b2dc Bug 1336240 - Remove observer in PendingLookup and nsChannelClassifier r=dimi,francois
MozReview-Commit-ID: EBQpQzESVZP
2017-02-24 10:14:07 +08:00
Tom Tromey
a4b717ab39 Bug 1060419 - make log_print use Printf.h, r=froydnj
MozReview-Commit-ID: BIZ1GQEZ1vs
2016-12-15 20:16:31 -07:00