Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Intermittent crash on windows getting font families #25962

Closed
jdm opened this issue Mar 14, 2020 · 2 comments
Closed

Intermittent crash on windows getting font families #25962

jdm opened this issue Mar 14, 2020 · 2 comments

Comments

@jdm
Copy link
Member

@jdm jdm commented Mar 14, 2020

 	KernelBase.dll!00007ff9fd689b4c()	Unknown	No symbols loaded.
 	msvcrt.dll!00007ff9fd07bc20()	Unknown	No symbols loaded.
 	DWrite.dll!00007ff9f87f0b20()	Unknown	No symbols loaded.
 	DWrite.dll!00007ff9f8755660()	Unknown	No symbols loaded.
 	DWrite.dll!00007ff9f874b460()	Unknown	No symbols loaded.
>	simpleservo.dll!winapi::um::dwrite::IDWriteLocalizedStrings::FindLocaleName(unsigned short * self, unsigned int * localeName, int * index) Line 217	Unknown	Symbols loaded.
 	simpleservo.dll!dwrote::helpers::get_locale_string(dwrote::comptr::ComPtr<winapi::um::dwrite::IDWriteLocalizedStrings> * strings) Line 34	Unknown	Symbols loaded.
 	simpleservo.dll!dwrote::font_family::FontFamily::name() Line 35	Unknown	Symbols loaded.
 	simpleservo.dll!gfx::platform::windows::font_list::for_each_available_family<closure-0>(gfx::font_cache_thread::{{impl}}::refresh_local_families::closure-0 callback) Line 30	Unknown	Symbols loaded.
 	simpleservo.dll!gfx::font_cache_thread::FontCache::refresh_local_families() Line 334	Unknown	Symbols loaded.
 	simpleservo.dll!gfx::font_cache_thread::{{impl}}::new::{{closure}}(gfx::font_cache_thread::{{impl}}::new::closure-0) Line 469	Unknown	Symbols loaded.
 	simpleservo.dll!std::sys_common::backtrace::__rust_begin_short_backtrace<closure-0,()>(gfx::font_cache_thread::{{impl}}::new::closure-0 f) Line 131	Unknown	Symbols loaded.
 	simpleservo.dll!std::thread::{{impl}}::spawn_unchecked::{{closure}}::{{closure}}<closure-0,()>(std::thread::{{impl}}::spawn_unchecked::{{closure}}::closure-0) Line 476	Unknown	Symbols loaded.
 	simpleservo.dll!std::panic::{{impl}}::call_once<(),closure-0>(std::panic::AssertUnwindSafe<closure-0> self) Line 319	Unknown	Symbols loaded.
 	simpleservo.dll!std::panicking::try::do_call<std::panic::AssertUnwindSafe<closure-0>,()>(unsigned char * data) Line 305	Unknown	Symbols loaded.
 	simpleservo.dll!panic_abort::__rust_maybe_catch_panic(void(*)(unsigned char *) f, unsigned char * data, unsigned __int64 * _data_ptr, unsigned __int64 * _vtable_ptr) Line 32	Unknown	Symbols loaded.
 	simpleservo.dll!std::panicking::try<(),std::panic::AssertUnwindSafe<closure-0>>(std::panic::AssertUnwindSafe<closure-0> f) Line 281	Unknown	Symbols loaded.
 	simpleservo.dll!std::panic::catch_unwind<std::panic::AssertUnwindSafe<closure-0>,()>(std::panic::AssertUnwindSafe<closure-0> f) Line 394	Unknown	Symbols loaded.
 	simpleservo.dll!std::thread::{{impl}}::spawn_unchecked::{{closure}}<closure-0,()>(std::thread::{{impl}}::spawn_unchecked::closure-0) Line 474	Unknown	Symbols loaded.
 	simpleservo.dll!core::ops::function::FnOnce::call_once<closure-0,()>(std::thread::{{impl}}::spawn_unchecked::closure-0 *) Line 232	Unknown	Symbols loaded.
 	simpleservo.dll!alloc::boxed::{{impl}}::call_once<(),FnOnce<()>>(core::ops::function::Box<FnOnce<()>> self) Line 1018	Unknown	Symbols loaded.
 	[Inline Frame] simpleservo.dll!alloc::boxed::{{impl}}::call_once(core::ops::function::Box<FnOnce<()>> * self) Line 1017	Unknown	Symbols loaded.
 	[Inline Frame] simpleservo.dll!std::sys_common::thread::start_thread(unsigned char * main) Line 13	Unknown	Symbols loaded.
 	simpleservo.dll!std::sys::windows::thread::{{impl}}::new::thread_start(core::ffi::c_void * main) Line 51	Unknown	Symbols loaded.
 	ntdll.dll!00007ff9fda59828()	Unknown	No symbols loaded.
@jdm
Copy link
Member Author

@jdm jdm commented Mar 14, 2020

@jdm
Copy link
Member Author

@jdm jdm commented Mar 14, 2020

My suspicion is that EN_US_LOCALE should have a \0 terminator in the OsStr and we crash because we end up with a non-null-terminated string, but it's tricky to prove because it happens so infrequently.

@jdm jdm added this to To do in UWP port via automation Mar 26, 2020
bors-servo added a commit that referenced this issue Mar 30, 2020
Update dwrote to 0.11.

Fix #25962.
UWP port automation moved this from To do to Done Mar 31, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
UWP port
  
Done
Linked pull requests

Successfully merging a pull request may close this issue.

1 participant
You can’t perform that action at this time.