Crash in [@ std::io::stdio::_eprint] during fluent_bundle_add_resource
Categories
(Core :: Internationalization, defect)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr68 | --- | unaffected |
firefox74 | --- | unaffected |
firefox75 | --- | unaffected |
firefox76 | --- | fixed |
People
(Reporter: mccr8, Assigned: zbraniecki)
References
(Regression)
Details
(Keywords: crash, regression)
Crash Data
Attachments
(1 file)
This bug is for crash report bp-04eec468-2c3b-4df8-b93a-af5a70200317.
Top 10 frames of crashing thread:
0 libxul.so RustMozCrash mozglue/static/rust/wrappers.cpp:17
1 libxul.so mozglue_static::panic_hook mozglue/static/rust/lib.rs:89
2 libxul.so core::ops::function::Fn::call src/libcore/ops/function.rs:72
3 libxul.so std::panicking::rust_panic_with_hook src/libstd/panicking.rs:475
4 libxul.so rust_begin_unwind src/libstd/panicking.rs:375
5 libxul.so std::panicking::begin_panic_fmt src/libstd/panicking.rs:326
6 libxul.so std::io::stdio::_eprint src/libstd/io/stdio.rs:811
7 libxul.so fluent_bundle_add_resource intl/l10n/rust/fluent-ffi/src/bundle.rs:254
8 libxul.so mozilla::dom::FluentBundle_Binding::addResource dom/bindings/FluentBinding.cpp:1000
9 libxul.so bool mozilla::dom::binding_detail::GenericMethod<mozilla::dom::binding_detail::NormalThisPolicy, mozilla::dom::binding_detail::ThrowExceptions> dom/bindings/BindingUtils.cpp:3205
This crash is happening on the line eprintln!("Error while adding a resource");
.
I don't know why the signature is so crummy. A lot of the recent crashes with this signature are this issue, but maybe not all of them. I filed bug 1623774 about the signature.
Reporter | ||
Updated•5 years ago
|
Reporter | ||
Updated•5 years ago
|
Assignee | ||
Comment 1•5 years ago
|
||
Emilio - any idea why this crashes and what would be a safe way to report errors?
Comment 2•5 years ago
|
||
Yeah, the error message says it... it's crashing with "os error 5", which is access denied.
Either let _ = writeln!(&mut io::stderr(), "...");
to ignore the error, or use the log crate, or even better in this case return the error to C++ and throw an exception?
Comment 3•5 years ago
|
||
(Or log a warning in the console or something)
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 4•5 years ago
|
||
Assignee | ||
Comment 5•5 years ago
|
||
This is a temporary solution. Once I migrate Localization.jsm
to Rust I'll unify error reporting to happen in Localization
class and bind them to contexts and file URIs.
Also, in Localization warnings are shown in testing and local builds, CI is meant to crash, and production stable release builds not show recoverable errors.
For now, this will help people discover error scenarios.
Comment 7•5 years ago
|
||
Backed out changeset 41722eea7dd5 for causing failures in l10n/test/mochitest/localization/test_format
Backout link: https://hg.mozilla.org/integration/autoland/rev/de570852a84cb0b5f16f97341da84d89f0b33dc7
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=294163032&repo=autoland&lineNumber=9150
Assignee | ||
Comment 9•5 years ago
|
||
minor test incompatibility due to error strings.
Comment 10•5 years ago
|
||
bugherder |
Updated•5 years ago
|
Updated•5 years ago
|
Description
•