Closed
Bug 1234584
Opened 9 years ago
Closed 8 years ago
We get disconnected from the system clipboard after a content process crash
Categories
(Core :: Widget: Cocoa, defect, P4)
Core
Widget: Cocoa
Tracking
()
RESOLVED
WORKSFORME
Tracking | Status | |
---|---|---|
e10s | + | --- |
People
(Reporter: ehsan.akhgari, Assigned: mrbkap)
Details
(Whiteboard: tpi:-)
I'm seeing this on OS X 10.11.2, not sure how platform specific it is.
STR:
1. Copy something from outside of Firefox, like "foo".
2. Paste in a webpage. See "foo" getting pasted.
3. Kill the content process, or get it to crash.
4. Reload the webpage to get a new content process.
5. Paste in a webpage. See "foo" getting pasted.
6. copy something else from outside of Firefox, like "bar".
7. Paste in a webpage. See "foo" getting pasted!
8. Copy something from inside Firefox, such as "baz".
9. Paste in a webpage. See "baz" getting pasted.
10. Paste outside of Firefox. See "bar" getting pasted!
Steps 7 and 10 demonstrate how at this stage we're completely detached from the system clipboard, and cannot transfer any information on the clipboard across Firefox and other apps.
Updated•9 years ago
|
Assignee: nobody → mrbkap
Assignee | ||
Comment 1•9 years ago
|
||
I've tried this both in a debug Nightly and my normal Nightly without reproducing it (the clipboards stayed in sync through the crash). I tried both on OS X 10.11.1 and 10.11.2.
It might matter what type of element you're pasting into (contenteditable/textarea) and the source of the copy (is it rich text, regular text, are there images, etc.). Also, is it possible that you have an extension or some sort of clipboard manager that could be getting confused by the content process dying? Were you pasting into a specific website that might be overriding copy/paste?
I was copying out of my terminal and into a textarea (though I just tried a contenteditable div and vim, which worked).
Flags: needinfo?(ehsan)
Reporter | ||
Comment 2•9 years ago
|
||
Huh... I don't have any clipboard related extensions, and the test page I used was bugzilla (through copying comments and pasting in the comment field.) But now that I tried again, I can't reproduce any more either. :/
Flags: needinfo?(ehsan)
Assignee | ||
Comment 3•9 years ago
|
||
Resolving WFM.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
Reporter | ||
Comment 4•9 years ago
|
||
FWIW I have seen this issue quite a bit, there is definitely a bug here, even though if the STR in comment 0 is not the right one.
Assignee | ||
Comment 5•9 years ago
|
||
I'll reopen this, but I don't have any real theories. It might be useful to specify what "not Firefox" apps you're using, since that could affect things.
We do have a cache in the parent process to avoid the OSX "pasteboard" if we were the last process to set something [1]. It's based on the "changeCount", which I guess could get out of whack. I will note that we don't actually do anything special for e10s in terms of caching (we always hit the parent process), so I wonder if crashing the content process is necessary...
[1] https://dxr.mozilla.org/mozilla-central/rev/c690c50b2b543b420803e8192d6e08e06b20e0a3/widget/cocoa/nsClipboard.mm#286
Status: RESOLVED → REOPENED
Flags: needinfo?(ehsan)
Resolution: WORKSFORME → ---
Reporter | ||
Comment 6•9 years ago
|
||
(In reply to Blake Kaplan (:mrbkap) (please use needinfo!) from comment #5)
> I'll reopen this, but I don't have any real theories. It might be useful to
> specify what "not Firefox" apps you're using, since that could affect things.
Definitely iTerm, perhaps among others.
> We do have a cache in the parent process to avoid the OSX "pasteboard" if we
> were the last process to set something [1]. It's based on the "changeCount",
> which I guess could get out of whack. I will note that we don't actually do
> anything special for e10s in terms of caching (we always hit the parent
> process), so I wonder if crashing the content process is necessary...
Hmm, it seems that mChangeCount is compared against the value we get from the OS, so that shouldn't be the issue. Also that cache seems to only exist for reading clipboard data, not writing to it...
Flags: needinfo?(ehsan)
Assignee | ||
Comment 7•9 years ago
|
||
Markus, do you have any ideas of where to start looking here or anyone else who'd have any ideas?
Flags: needinfo?(mstange)
Comment 8•9 years ago
|
||
I'm afraid not :-(
I doubt we can do much here without reliable steps to reproduce.
Flags: needinfo?(mstange)
Comment 9•9 years ago
|
||
I can't repro. I don't think this should block anything unless we get a reliable repro. Is it possible the exact type of crash has any affect?
Flags: needinfo?(ehsan)
Reporter | ||
Comment 10•9 years ago
|
||
I was just killing plugin-container. But this bug is so surprising that I guess anything is _possible_.
Flags: needinfo?(ehsan)
Comment 11•9 years ago
|
||
(In reply to :Ehsan Akhgari from comment #10)
> I was just killing plugin-container. But this bug is so surprising that I
> guess anything is _possible_.
I don't understand, you initially said:
> 3. Kill the content process, or get it to crash.
Is it the content process or a flash plugin container process?
Assignee | ||
Comment 12•9 years ago
|
||
(In reply to Jeff Griffiths (:canuckistani) (:⚡︎) from comment #11)
> Is it the content process or a flash plugin container process?
The content process's executable is also called plugin-container.
Comment 13•9 years ago
|
||
(In reply to Blake Kaplan (:mrbkap) (please use needinfo!) from comment #12)
> (In reply to Jeff Griffiths (:canuckistani) (:⚡︎) from comment #11)
> > Is it the content process or a flash plugin container process?
>
> The content process's executable is also called plugin-container.
Ah, didn't realize that - makes sense now, thanks.
Updated•9 years ago
|
Comment 14•9 years ago
|
||
Build ID 20160209004008
User Agent Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:46.0) Gecko/20100101 Firefox/46.0
I have tested this on Mac OS X 10.11 with Firefox 46.0a2 and I can't reproduce it.
![]() |
||
Updated•9 years ago
|
Priority: -- → P4
Updated•9 years ago
|
Whiteboard: tpi:?
![]() |
||
Updated•9 years ago
|
Whiteboard: tpi:? → tpi:-
Assignee | ||
Comment 15•8 years ago
|
||
I'm calling this WFM at this point.
Status: REOPENED → RESOLVED
Closed: 9 years ago → 8 years ago
Resolution: --- → WORKSFORME
You need to log in
before you can comment on or make changes to this bug.
Description
•