Crash in [@ memcpy | nsJARInputStream::Read] - exception handling still not working
Categories
(Core :: Networking: JAR, defect, P1)
Tracking
()
People
(Reporter: valentin, Assigned: valentin)
References
Details
(Whiteboard: [necko-triaged])
Crash Data
Attachments
(2 files)
|
48 bytes,
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-beta+
|
Details | Review |
|
48 bytes,
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-beta+
|
Details | Review |
It seems the CopyMemory hack in bug 1551562 doesn't work for EXCEPTION_IN_PAGE_ERROR for reasons I don't understand.
I did a test with std::copy and this one seems to work. I also managed to write a unit test that needs some manual interaction to work, but it's still better than nothing.
| Assignee | ||
Comment 1•5 years ago
|
||
| Assignee | ||
Comment 2•5 years ago
|
||
This test is for documentation purposes only.
With some work we may be able to automate it, but sharing folders on windows seems to require elevated priviledges.
Depends on D113497
| Assignee | ||
Comment 3•5 years ago
|
||
Updated•5 years ago
|
| Assignee | ||
Comment 5•5 years ago
|
||
[Tracking Requested - why for this release]:
Turns out the fix we did in bug 1551562 didn't fix the issue.
This one seems to work a little better - and has a test we can use to verify the fix.
Additionally I need to test this in a Win7 VM too, since most of the crashes happen on x86 Win7.
Comment 6•5 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/0ddb01633b9f
https://hg.mozilla.org/mozilla-central/rev/2c5a50fb4d4e
Updated•5 years ago
|
| Assignee | ||
Updated•5 years ago
|
| Assignee | ||
Comment 7•5 years ago
|
||
Comment on attachment 9218617 [details]
Bug 1707853 - Use std::copy instead of memcpy to ensure exception handling works r=#necko
Beta/Release Uplift Approval Request
- User impact if declined: Avoidable crashes in nsJARInputStream::Read will continue.
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: No
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): Since the crashes rarely/never happen on Nightly and this release cycle will be longer it would be better to verify it on Beta.
The risk is low - we replace memcpy/CopyMemory with std::copy which should have similar performance but also the ability to throw/catch exceptions, which we need to prevent these crashes. - String changes made/needed:
| Assignee | ||
Updated•5 years ago
|
Comment 8•5 years ago
|
||
Comment on attachment 9218617 [details]
Bug 1707853 - Use std::copy instead of memcpy to ensure exception handling works r=#necko
Approved for 89.0b6, thanks.
Updated•5 years ago
|
Comment 9•5 years ago
|
||
| bugherder uplift | ||
Description
•