Commit Graph

184 Commits

Author SHA1 Message Date
David Parks
93ff7f87a4 Bug 1284897 - Hook GetSaveFileNameW/GetOpenFileNameW to record and grant a sandboxed process permission to access user-chosen files. r=jimm 2017-02-08 11:38:40 -08:00
David Anderson
e22a919afe Switch PPluginModule from PCrashReporter to shmem-based CrashReportHost/Client. (bug 1338281 part 5, r=billm) 2017-02-15 14:44:30 -08:00
Carsten "Tomcat" Book
ffc915c2f6 Backed out changeset f4c6758e15f9 (bug 1307708) on developers request 2017-02-09 11:49:38 +01:00
David Parks
5691514b86 Bug 1307708 - Make the GetKeyState IPDL call sync (it was intr). r=jimm
This should avoid destruction messages from deleting the actor while the intr message is awaiting a response.
2017-02-06 11:53:59 -08:00
Andrew McCreight
8f66878a7c Bug 1333915, part 2 - Stop using bridges and spawns in plugins. r=jimm
The old code would do the content process portion of the open by
immediately sending a message back to the content process, but this
has some weird issues with nesting and priorities. Instead of doing
that, I return the endpoint for the content process back to the
original sync call. This requires more code changes, to thread the
endpoint along, but it is conceptually simpler.

Once I removed the bridges and got it working, I was just able to
remove the spawns from the IPDL file and it worked.

MozReview-Commit-ID: 1tfiJrV4jbV
2017-01-25 14:17:17 -08:00
Nicholas Nethercote
d2434a7cc6 Bug 1333296 (part 1) - Rename MOZ_ENABLE_PROFILER_SPS as MOZ_GECKO_PROFILER. r=mstange,glandium. 2017-01-24 14:15:12 +11:00
Sotaro Ikeda
21e7de124c Bug 1312988 - Separate the recycling allocators for gpu and cpu textures. r=nical 2016-11-14 10:09:39 +01:00
Kan-Ru Chen
1b9dd22e2d Bug 1314254 - Add mozilla::ipc::IPCResult type and convert IPDL handlers to use new return type. r=billm
We will use the new type for the generated IPDL message handler
prototype to make sure correct error handling method is called.

MozReview-Commit-ID: AzVbApxFGZ0
2016-11-15 04:26:00 +01:00
Nathan Froyd
862a7d6649 Bug 1307483 - remove mProtocolCallStack from PluginModuleChromeParent; r=jimm
The last useful references to this were removed in bug 1250046, when we
deleted Shumway-specific IPC support.  All this code is doing now is
taking up space.
2016-10-05 00:04:32 -04:00
David Parks
ae5e8512ae Bug 1251202 - Implement Default Audio Device Notifications for NPAPI plugins on Windows. r=jimm
Adds plugin variables NPPVpluginRequiresAudioDeviceChanges and NPNVaudioDeviceChangeDetails on Windows.
2016-09-19 14:05:41 -07:00
Kyle Machulis
7819d15177 Bug 820831 - Turn on ContentScaleFactor calculation on Windows; r=jimm
MozReview-Commit-ID: 5rqTURsO839
2015-09-17 13:31:34 -07:00
Makoto Kato
8893b79119 Bug 1180684 - Part 2. Hook GetKeyState on plugin process. r=aklotz
MozReview-Commit-ID: 3cCWMYYaTkn
2016-08-22 16:06:50 +09:00
Bob Owen
4d92ace334 Bug 1252877 Part 4: Remove notification of plugins about scrolling from child. r=jimm
MozReview-Commit-ID: 2tHtOxx7jKa
2016-07-18 09:54:02 +01:00
Gabriele Svelto
f8555cd1cf Bug 1262852 - Create a minidump of the plugin process as soon as possible during hang r=jimm 2016-06-24 14:25:08 +02:00
David Anderson
78a6c64379 Move TaskFactory from dom/plugins to ipc/glue. (bug 1271180 part 1, r=aklotz) 2016-06-10 15:43:35 -04:00
Phil Ringnalda
fb45b46515 Back out 5 changesets (bug 1271180) for static analysis bustage
CLOSED TREE

Backed out changeset cfb53b780b18 (bug 1271180)
Backed out changeset 204b084385f8 (bug 1271180)
Backed out changeset 353da876be33 (bug 1271180)
Backed out changeset 4472dfbc1dc6 (bug 1271180)
Backed out changeset 81079e787b8a (bug 1271180)
2016-06-11 00:46:09 -07:00
David Anderson
9efe15d5c6 Move TaskFactory from dom/plugins to ipc/glue. (bug 1271180 part 1, r=aklotz) 2016-06-10 15:43:35 -04:00
Jonathan Watt
9c5b8de022 Bug 1279451 - Remove a lot of unnecessary includes of nsAutoPtr.h. rs=sparky 2016-06-07 21:10:18 +01:00
Valentin Gosu
283d514a0f Bug 1148161 - rename PluginModuleParent::OfflineObserver to PluginOfflineObserver r=jimm
The class name clashes with mozilla::net::OfflineObserver and ends up crashing in nsTraceRefcnt::GetBloatEntry because the two classes have a different size.
2016-05-12 17:43:34 +02:00
Kyle Huey
f3e34e67b3 Bug 1266595: Replace Chromium Task with Runnable. r=froydnj 2016-04-27 17:06:05 -07:00
Andrea Marchesini
0b0d05f69d Bug 1261094 - Improve how MessageChannel::mInterruptStack is used in IPC code, r=jld 2016-04-28 07:21:49 +08:00
Masayuki Nakano
bbce223b06 Bug 1257759 part.5 PluginInstanceChild should post received native key event to chrome process if the key combination may be a shortcut key r=jimm
When PluginInstanceChild receives native key events, it should post the events to the chrome process first for checking if the key combination is reserved.  However, posting all key events to the chrome process may make damage to the performance of text input.  Therefore, this patch starts to post a key event whose key combination may be a shortcut key.  However, for avoiding to shuffle the event order, it posts following key events until all posted key events are handled by the chrome process.

For receiving response from widget, this patch defines nsIKeyEventInPluginCallback.  It's specified by nsIWidget::OnWindowedPluginKeyEvent() for ensuring the caller will receive the reply.  Basically, the caller of nsIWidget::OnWindowedPluginKeyEvent() should reply to the child process.  However, if the widget is a PuppetWidget, it cannot return the result synchronously.  Therefore, PuppetWidget::OnWindowedPluginKeyEvent() returns NS_SUCCESS_EVENT_HANDLED_ASYNCHRONOUSLY and stores the callback to mKeyEventInPluginCallbacks.  Then, TabParent::HandledWindowedPluginKeyEvent() will call PuppetWidget::HandledWindowedPluginKeyEvent().

MozReview-Commit-ID: G6brOU26NwQ
2016-04-19 20:09:37 +09:00
Aaron Klotz
0ce4b873e9 Bug 1256943: Ensure that BLOCKED_ON_PLUGIN_MODULE_INIT_MS is being recorded in e10s chrome; r=jimm
I also add some missing data to the content version, namely the duration of time that ContentParent::SendLoadPlugin takes.

MozReview-Commit-ID: 8qSZopvY1D7
2016-03-15 14:04:34 -06:00
Aaron Klotz
aa93454d29 Bug 1161169: Clean up usage of mContentParent and clearly identify it as specifically for async plugin init; r=billm,jimm
mContentParent is really just to be used while handling a synchronous
ContentParent::RecvLoadPlugin call when async plugin init turned on.

In any other context, using it will be unsafe.

This patch adds comments and assertions to ensure that this value isn't set
otherwise, and converts the one use of mContentParent outside of async plugin
init to use an alternative mechanism for identifying the content process.

MozReview-Commit-ID: Esgt1kj0MCt
2016-03-03 00:24:36 -07:00
Jim Mathies
26c7ae8377 Bug 1232181 - Plugin module plumbing for retrieving scroll captures and updating plugin instance content scroll state. r=roc 2016-03-01 12:48:25 -06:00
Makoto Kato
4ad859e9df Bug 1201904 - Force windowless mode for Flash when sandbox level >= 2. r=bsmedberg 2016-01-15 16:45:15 +09:00
Nicholas Nethercote
5a68f41931 Bug 1233619 (part 2) - Moz2Dify BeginUpdate() and BeginUpdateBackground() functions. r=roc.
The only non-trivial change is in BasicPaintedLayer::Validate().
2015-12-17 19:39:10 -08:00
Nicholas Nethercote
e2e2a2fbf9 Bug 1233619 (part 1) - Remove unneeded gfxContext argument from EndUpdate() and EndUpdateBackground() functions. r=roc. 2015-12-17 19:39:09 -08:00
Mike Conley
e4b7406993 Bug 1193838 - Expose ProfileGatherer as an nsISupports through nsIProfiler for process parent actors. r=BenWa
We need to let ContentParent and PluginModuleParent get a reference to the ProfileGatherer
during the window of time that we're profiling so that if they start to die (the actor is
starting to go away), they have a gatherer they can send their last profile data to.
2015-08-12 14:20:26 -04:00
David Anderson
aad66b2774 Implement the direct bitmap drawing model for plugins. (bug 1217665 part 6, r=mattwoodrow) 2015-12-02 11:31:17 -08:00
David Anderson
4686122c82 Revive NPAPI async drawing: stub code. (bug 1217665 part 1, r=aklotz) 2015-12-02 11:31:16 -08:00
Nathan Froyd
4e6d8f6705 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
2015-10-18 01:24:48 -04:00
Aaron Klotz
c473d5659d Bug 1194488: Whitelist specific plugins for async init; r=jimm 2015-08-31 17:04:25 -06:00
Bob Owen
0df3fee46d Bug 1182411 Part 1: Make plugin quirks available to the Parent as well as the Child. r=jimm 2015-08-12 16:00:25 +01:00
Birunthan Mohanathas
a29151dc87 Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Daniel Holbert
89eea44e48 Bug 1158561 followup: Add 'override' annotations to overriding methods added in this bug: Callback(), SitesWithData(), RecvReturnClearSiteData(), & RecvReturnSitesWithData(). rs=ehsan 2015-07-07 21:10:32 -07:00
Brad Lassey
6f3fecc1b0 bug 1158561 - [e10s] Browser hang in PluginModuleParent::NPP_ClearSiteData() r=jimm,mak 2015-06-30 18:08:19 -04:00
Jim Mathies
dd9333e112 Bug 1178998 - Identify which hang detector reports a hang. r=billm 2015-07-06 12:39:25 -05:00
Wes Kocher
1e193b542b Backed out changeset 9e0475a23d21 (bug 1158561) for assertions in test_clear_site_data.html CLOSED TREE 2015-07-01 16:25:26 -07:00
Brad Lassey
5f96379688 bug 1158561 - [e10s] Browser hang in PluginModuleParent::NPP_ClearSiteData() r=jimm,mak 2015-06-30 18:08:19 -04:00
Ryan VanderMeulen
45d22e186e Backed out changesets 57bbe09f18f2 and 8353c823b8b5 (bug 1158561) for win32 build bustage.
CLOSED TREE
2015-07-01 12:11:41 -04:00
Brad Lassey
ffff931b1a bug 1158561 - [e10s] Browser hang in PluginModuleParent::NPP_ClearSiteData() r=jimm,mak 2015-06-30 18:08:19 -04:00
Bill McCloskey
0e72bb1aba Bug 1164543 - Add HasLocalInstance support (r=jimm) 2015-06-19 17:35:05 -07:00
Bill McCloskey
52dd1aa5a4 Bug 1175975 - Null crash fix in ProcessHangMonitor (r=jimm) 2015-06-19 17:35:04 -07:00
Ted Mielczarek
d0bfb3c3cf bug 1174414 - Fix build without profiler. r=mconley 2015-06-13 20:55:33 -04:00
Mike Conley
009806627b Bug 1116188 - Add async ProfileGatherer as the mechanism for gathering profiles from subprocesses. r=bgirard,bz 2015-06-10 17:58:30 -04:00
Jim Mathies
536efcfe2d Bug 1160142 - For e10s plugin hangs take the minidump of the browser process before we message the chrome UI about the hang. r=billm 2015-06-11 12:25:45 -05:00
Bob Owen
40889a97b9 Bug 1123759: Set low integrity on NPAPI processes for Windows sandboxing policy level >= 2. r=bbondy, r=bsmedberg 2015-05-22 17:05:45 +01:00
Mike Conley
16367a6360 Bug 1146955 - Unify pluginID for GMP and runID for NPAPI plugins to use the same internal incrementor. r=jesup, mrbkap. 2015-04-27 15:09:45 -04:00
Aaron Klotz
c7b1e97b26 Bug 1152395: Ensure that NP_Shutdown respects async plugin init; r=jimm 2015-04-08 11:31:18 -06:00