Commit Graph

63 Commits

Author SHA1 Message Date
Brad Lassey
75da566dc9 bug 1298083 - Don't hide blocklisted Flash from navigator.plugins r=bsmedberg 2016-10-05 09:46:45 -04:00
Brad Lassey
750d2949b7 bug 1294341 - add a fake filename to avoid an assertion that plugin filenames have periods in them r=bsmedberg 2016-09-29 12:37:20 -04:00
Brad Lassey
5dec39046b bug 1294341 - pref to control which CTP plugins should be hidden r=bsmedberg 2016-08-26 19:27:43 -04:00
Brad Lassey
92dc8fe4cc bug 1294341 - put dummy plugin in navigator.plugins when a click to play plugin is hidden and its the only plugin r=bsmedberg 2016-08-24 14:02:02 -04:00
Benjamin Smedberg
0e3ecdbee2 Bug 1296004 - Disable bug 1186948 via a new pref, r=mconley
There were no automated tests for this originally, so no test changes are here, but I've verified the correct behavior manually. Definitely need to add some automated tests before this gets flipped on by default again.

MozReview-Commit-ID: FMagXw3WeD9

--HG--
extra : rebase_source : eef395f17b9d200da3663285e5bd20d6bec7ebd4
2016-08-17 15:35:31 -04:00
Brad Lassey
c99449c15a bug 1289670 - Show plugin activation icon when navigator.mimetypes is queried r=mrbkap 2016-07-27 17:45:48 -04:00
Brad Lassey
b3e11b9f98 Bug 1186948 - remove plugins that are click-to-play from navigator.plugins (restricted to Flash). r=jst,mconley,mrbkap 2015-08-03 19:24:35 -04:00
Mike Conley
4cdd10cd4c Backed out changeset 776f0bb21587 for causing bug 1284203.
MozReview-Commit-ID: KtsmLahe1hC

--HG--
extra : rebase_source : a2ae9fbf3bf7b9301c389331ba7f6cbfee3148ba
2016-07-04 13:38:52 -04:00
Arthur Edelstein
2fefe85cca Bug 1281963 - Hide mime types and plugins when resisting fingerprinting. r=blassey 2016-06-30 08:40:00 +02:00
Brad Lassey
e680d73b96 bug 1186948 - remove plugins that are click-to-play from navigator.plugins (restricted to Flash) r=jst 2015-08-03 19:24:35 -04:00
Chris Peterson
0ca60536e0 Backed out changeset 7383d49bc7c8 (Flash click-to-play bug 1186948) 2016-06-05 01:03:36 -07:00
Brad Lassey
4bd9943d04 bug 1186948 - remove plugins that are click-to-play from navigator.plugins (restricted to Flash) r=jst 2015-08-03 19:24:35 -04:00
Boris Zbarsky
59de5a530f Bug 1270349 part 5. Use LegacyUnenumerableNamedProperties instead of passing flags to GetSupportedNames to determine whether named props on DOM proxies should be reflected in ownPropertyKeys. r=peterv 2016-05-09 22:25:40 -04:00
Boris Zbarsky
76180fb5a7 Bug 1270349 part 4. Use LegacyUnenumerableNamedProperties instead of NameIsEnumerable() calls to determine whether named props on DOM proxies should be enumerable. r=peterv 2016-05-09 22:25:40 -04:00
Kyle Huey
91efc5a86c Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
Kyle Huey
c7d3c4e21a Bug 1216401: Eviscerate nsIDOMWindow, move still needed methods to nsPIDOMWindow. r=bz 2015-10-26 14:37:32 -07:00
Nathan Froyd
01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Aryeh Gregor
0ccef27b6a Bug 1179451 - Part 1: Rewrite some ternary operators as if/else. r=froydnj
--HG--
extra : rebase_source : 161e415b6f518bf2b82e45b6f7f8d21298712d81
2015-08-13 15:22:48 +03:00
John Schoenick
6601080d53 Bug 1178963 part 1. Use nsIPluginTagInternal instead of nsPluginTag in cases where it may be nsFakePluginTag. r=peterv 2015-05-20 15:30:05 +02:00
Chris Peterson
e5b1ce7ce4 Bug 1169945 - Remove unused plugins.enumerable_names whitelist. r=bsmedberg 2015-05-29 22:42:23 -07:00
Andrew McCreight
9e8f4b219e Bug 1152551, part 2 - Fix mode lines in dom/. r=jst 2015-05-03 15:32:37 -04:00
Boris Zbarsky
dc24477d79 Bug 1117172 part 3. Change the wrappercached WrapObject methods to allow passing in aGivenProto. r=peterv
The only manual changes here are to BindingUtils.h, BindingUtils.cpp,
Codegen.py, Element.cpp, IDBFileRequest.cpp, IDBObjectStore.cpp,
dom/workers/Navigator.cpp, WorkerPrivate.cpp, DeviceStorageRequestChild.cpp,
Notification.cpp, nsGlobalWindow.cpp, MessagePort.cpp, nsJSEnvironment.cpp,
Sandbox.cpp, XPCConvert.cpp, ExportHelpers.cpp, and DataStoreService.cpp.  The
rest of this diff was generated by running the following commands:

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObjectInternal\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapNode\((?:aCx|cx|aContext|aCtx|js))\)/\1, aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(WrapObject\(JSContext *\* *(?:aCx|cx|aContext|aCtx|js))\)/\1, JS::Handle<JSObject*> aGivenProto)/g'

  find . -name "*.h" -o -name "*.cpp" | xargs perl -pi -e 'BEGIN { $/ = undef } s/(Binding(?:_workers)?::Wrap\((?:aCx|cx|aContext|aCtx|js), [^,)]+)\)/\1, aGivenProto)/g'
2015-03-19 10:13:33 -04:00
Peter Van der Beken
dcda2ba9bb Bug 1078744 - Replace SetIsDOMBinding with SetIsNonDOMBinding, remove nsWrapperCache::SetIsDOMBinding. r=bz.
--HG--
extra : rebase_source : 89c476cd9436530b2df5acc903909e34188417a0
2014-10-07 11:44:49 +02:00
Chris Peterson
a7c0a7fa6b Bug 793978 - Alphabetize navigator.plugins and navigator.mimeTypes arrays to reduce fingerprintable entropy. r=bsmedberg 2012-09-18 00:56:14 -07:00
Jon Morton
87e5ec13e3 Bug 1032417: Move nsPluginElement's destructor to the implementation file. r=khuey 2014-06-30 16:00:30 -07:00
Trevor Saunders
78966cf36b bug 966059 - add nsIDocShell::GetWindow and GetDocument r=smaug 2014-01-09 21:03:47 -05:00
Birunthan Mohanathas
a85cd37de4 Bug 1001966 - Part 2: Change uses of numbered NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE macro to the variadic variant. r=smaug 2014-04-29 04:57:00 -04:00
Boris Zbarsky
9c3392475d Bug 843840 part 2. Add a way to ask DOM proxies for only their enumerable property names, and use that in the enumerate hook. r=peterv 2014-04-15 22:58:44 -04:00
Boris Zbarsky
ad59a21b39 Bug 843840 part 1. Add a way to ask DOM proxies with a named getter whether a property is enumerable or not and use that information in getOwnPropertyDescriptor. r=peterv 2014-04-15 22:58:44 -04:00
Boris Zbarsky
79dab91ff6 Bug 991742 part 8. Remove the "aScope" argument of WebIDL/nsWrapperCache WrapObject() methods. r=bholley
This patch was mostly generated with the following command:

find . -name "*.h" -o -name "*.cpp" | xargs sed -e '/WrapObject(JSContext/ {; N; s/\(WrapObject(JSContext *\* *a\{0,1\}[Cc]x\),\n\{0,1\} *JS::Handle<JSObject\*> a\{0,1\}[sS]cope/\1/ ; }' -i ""

and then reverting the changes that made to
dom/bindings/BindingUtils.h, since those WrapObject methods are not
the ones we're trying to change here, plus a bunch of manual fixups
for cases that this command did not catch (including all the callsites
of WrapObject()).
2014-04-08 18:27:18 -04:00
Boris Zbarsky
d4bd64ee2c Bug 991742 part 6. Remove the "aScope" argument of binding Wrap() methods. r=bholley
This patch was mostly generated with this command:

find . -name "*.h" -o -name "*.cpp" | xargs sed -e 's/Binding::Wrap(aCx, aScope, this/Binding::Wrap(aCx, this/' -e 's/Binding_workers::Wrap(aCx, aScope, this/Binding_workers::Wrap(aCx, this/' -e 's/Binding::Wrap(cx, scope, this/Binding::Wrap(cx, this/' -i ""

plus a few manual fixes to dom/bindings/Codegen.py, js/xpconnect/src/event_impl_gen.py, and a few C++ files that were not caught in the search-and-replace above.
2014-04-08 18:27:17 -04:00
Ehsan Akhgari
1b83407ce9 Bug 927728 - Part 1: Replace PRUnichar with char16_t; r=roc
This patch was automatically generated by the following script:

#!/bin/bash
# Command to convert PRUnichar to char16_t

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*modules/libmar*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name prtypes.h \
       ! -name Char16.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRUnichar char16_t
2014-01-04 10:02:17 -05:00
Chris Peterson
cf1496031d Bug 757726 - Part 6a: Add support for cloaking plugin names in navigator.plugins and navigator.mimeTypes enumeration. r=johns sr=bsmedberg 2013-10-31 22:19:09 -07:00
Chris Peterson
f3f08d8554 Bug 757726 - Part 4: Consolidate duplicate code into EnsurePlugins() and EnsureMimeTypes(). r=johns 2013-10-20 00:05:05 -07:00
Chris Peterson
c0ea0d86d5 Bug 757726 - Part 3: Refactor nsPluginArray::GetPlugins() to GetMimeTypes(). r=johns 2013-10-17 00:19:43 -07:00
Olli Pettay
5f197612f1 Bug 904351, make MimeType/Array, PluginArray/Element to hold strong reference to their parent object, r=mccr8
--HG--
extra : rebase_source : 955958237c5b4dd5a062b5d40ae976f7da31a33f
2013-08-28 23:55:29 +03:00
Ehsan Akhgari
99058b577c Bug 905353 - Minimize the #includes in dom/base; r=jst
--HG--
extra : rebase_source : e7a1d2262bf6d8c9b78057b8eb6cdbfd98262f68
2013-08-15 14:17:48 -04:00
Ms2ger
1a5ae526d9 Bug 901323 - Don't include nsContentUtils.h unnecessarily; r=jlebar 2013-08-14 08:56:21 +02:00
Johnny Stenback
5537c27fe8 Bug 898906. Fix this bug by making nsMimeType objects hold their active plugin alive, and rely on the cycle collector to break the explicit reference cycle. r=mccr8
---
 dom/base/crashtests/898906.html     | 14 ++++++++++++++
 dom/base/crashtests/crashtests.list |  3 ++-
 dom/base/nsMimeTypeArray.cpp        |  2 +-
 dom/base/nsMimeTypeArray.h          | 14 ++++++--------
 dom/base/nsPluginArray.cpp          | 24 +-----------------------
 dom/base/nsPluginArray.h            |  2 --
 6 files changed, 24 insertions(+), 35 deletions(-)
 create mode 100644 dom/base/crashtests/898906.html
2013-07-30 17:46:46 -07:00
Johnny Stenback
dc04284434 Bug 896242. Fix possible crash due to dangling pointer to nsPluginElement. r=mccr8
---
 dom/base/nsPluginArray.cpp |   24 +++++++++++++++++++-----
 dom/base/nsPluginArray.h   |    1 +
 2 files changed, 20 insertions(+), 5 deletions(-)
2013-07-24 23:33:21 -07:00
Johnny Stenback
fb568a43de Fixing bug 855611. Convert navigator.plugins and navigator.mimeTypes to use new DOM bindings. r=peterv@propagandism.org. 2013-07-09 06:58:21 -07:00
Benjamin Smedberg
108e062a3e Bug 418615 - Neuter the code which tries to reframe existing plugin instances when navigator.plugins.refresh(true) is called. Instead, only scan for new plugins, unload unused plugins. The DOM code will continue to refresh the current page which calls navigator.plugins.refresh(true). r=jschoenick sr=bz 2013-04-23 16:02:12 -04:00
David Keeler
293e039784 bug 856777 - observe plugin-info-updated in nsPluginArray, not Navigator r=khuey 2013-04-10 13:59:45 -07:00
David Keeler
b7a5aabdc3 bug 820708 - refresh navigator.plugins when a plugin is enabled/disabled r=joshmoz 2012-12-20 16:53:21 -08:00
Ehsan Akhgari
e368dc9c85 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Ian Melven
4f3defdd1a Bug 341604 - Implement HTML5 sandbox attribute for IFRAMEs r=smaug r=jst 2012-08-20 11:34:32 -07:00
Aryeh Gregor
4e199a1679 Bug 780618 - Move all error codes to nsError.h; r=ehsan 2012-07-27 17:03:27 +03:00
Aryeh Gregor
d0ad5a7d0c Bug 777292 part 2 - Change all nsnull to nullptr 2012-07-30 17:20:58 +03:00
David Zbarsky
d2ee12f6f9 Bug 763350 - Clean up some includes in content/ and dom/ r=smaug 2012-07-01 16:45:59 -07:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00