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

called `Option::unwrap()` on a `None` value (Upgrading a weak Arc in layout) #13084

Open
saschanaz opened this issue Aug 28, 2016 · 5 comments
Open

Comments

@saschanaz
Copy link
Contributor

@saschanaz saschanaz commented Aug 28, 2016

image

Clicking report button does not really 'prefill' the issue and Servo does not let me copy-paste, so I'm just attaching the screenshot.

Repro was able on this page: http://comic.naver.com/webtoon/list.nhn?titleId=670152&weekday=sun

@emilio
Copy link
Member

@emilio emilio commented Aug 28, 2016

Thanks for reporting!

Full backtrace:

stack backtrace:
   0:     0x55c6af994651 - backtrace::backtrace::libunwind::trace
                        at /home/emilio/projects/moz/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.2.3/src/backtrace/libunwind.rs:54
                         - backtrace::backtrace::trace<closure>
                        at /home/emilio/projects/moz/servo/.cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.2.3/src/backtrace/mod.rs:70
   1:     0x55c6af995200 - backtrace::capture::{{impl}}::new
                        at /home/emilio/projects/moz/servo/target/debug/build/backtrace-3bc1ff360ebb00cb/out/capture.rs:79
   2:     0x55c6aee1c35b - servo::main::{{closure}}
                        at /home/emilio/projects/moz/servo/components/servo/main.rs:121
   3:     0x55c6b3904485 - std::panicking::rust_panic_with_hook::h2224f33fb7bf2f4c
   4:     0x55c6b3904352 - std::panicking::begin_panic::hcb11a4dc6d779ae5
   5:     0x55c6b3904280 - std::panicking::begin_panic_fmt::h310416c62f3935b3
   6:     0x55c6b3904201 - rust_begin_unwind
   7:     0x55c6b3941eaf - core::panicking::panic_fmt::hc5789f4e80194729
   8:     0x55c6b3941ddb - core::panicking::panic::h1953378f4b37b561
   9:     0x55c6b24414c9 - {{inlined-root}}::unwrap<alloc::arc::Arc<Flow>>
                        at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/obj/../src/libcore/option.rs:21
  10:     0x55c6b2588614 - layout::flow::{{impl}}::generated_containing_block_size
                        at /home/emilio/projects/moz/servo/components/layout/flow.rs:1560
  11:     0x55c6b2540a9a - layout::block::{{impl}}::containing_block_size
                        at /home/emilio/projects/moz/servo/components/layout/block.rs:666
  12:     0x55c6b255d150 - layout::block::{{impl}}::containing_block_inline_size
                        at /home/emilio/projects/moz/servo/components/layout/block.rs:2746
  13:     0x55c6b2553948 - layout::block::ISizeAndMarginsComputer::compute_inline_size_constraint_inputs<layout::block::AbsoluteNonReplaced>
                        at /home/emilio/projects/moz/servo/components/layout/block.rs:2293
  14:     0x55c6b2557997 - layout::block::ISizeAndMarginsComputer::compute_used_inline_size<layout::block::AbsoluteNonReplaced>
                        at /home/emilio/projects/moz/servo/components/layout/block.rs:2419
  15:     0x55c6b2540806 - layout::block::{{impl}}::compute_used_inline_size
                        at /home/emilio/projects/moz/servo/components/layout/block.rs:599
  16:     0x55c6b2542d85 - layout::block::{{impl}}::propagate_and_compute_used_inline_size
                        at /home/emilio/projects/moz/servo/components/layout/block.rs:1303
  17:     0x55c6b25449f4 - layout::block::{{impl}}::compute_inline_sizes
                        at /home/emilio/projects/moz/servo/components/layout/block.rs:1646
  18:     0x55c6b254517c - layout::block::{{impl}}::assign_inline_sizes
                        at /home/emilio/projects/moz/servo/components/layout/block.rs:1736
  19:     0x55c6b25db740 - layout::traversal::{{impl}}::process
                        at /home/emilio/projects/moz/servo/components/layout/traversal.rs:158
  20:     0x55c6b25b5c9b - layout::parallel::ParallelPreorderFlowTraversal::run_parallel_helper<layout::traversal::AssignISizes>
                        at /home/emilio/projects/moz/servo/components/layout/parallel.rs:161
                         - layout::parallel::{{impl}}::run_parallel
                        at /home/emilio/projects/moz/servo/components/layout/parallel.rs:190
  21:     0x55c6b25b621e - layout::parallel::assign_inline_sizes
                        at /home/emilio/projects/moz/servo/components/layout/parallel.rs:209
  22:     0x55c6af804b46 - {{inlined-root}}::start<layout::context::SharedLayoutContext,style::parallel::WorkQueueData>
                        at /home/emilio/projects/moz/servo/components/style/workqueue.rs:184
  23:     0x55c6af8979d9 - _<style..workqueue..WorkQueue<QueueData, WorkData>>::new::_{{closure}}::hd8ec97a472d9ec2a
  24:     0x55c6af8518d0 - {{inlined-root}}::call_once<(),closure>
                        at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/obj/../src/libstd/panic.rs:256
  25:     0x55c6af6a5b83 - {{inlined-root}}::do_call<std::panic::AssertUnwindSafe<closure>,()>
                        at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/obj/../src/libstd/panicking.rs:327
  26:     0x55c6b390c876 - __rust_maybe_catch_panic
  27:     0x55c6af6a54fa - {{inlined-root}}::try<(),std::panic::AssertUnwindSafe<closure>>
                        at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/obj/../src/libstd/panicking.rs:303
  28:     0x55c6af6a3974 - {{inlined-root}}::catch_unwind<std::panic::AssertUnwindSafe<closure>,()>
                        at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/obj/../src/libstd/panic.rs:312
  29:     0x55c6af892237 - std::thread::Builder::spawn::_{{closure}}::h9c31998f7624ebe9
  30:     0x55c6af758bd7 - {{inlined-root}}::call_box<(),closure>
                        at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/obj/../src/liballoc/boxed.rs:587
  31:     0x55c6b3902832 - std::sys::thread::Thread::new::thread_start::he0bf102845911132
  32:     0x7f6979ae6453 - start_thread
  33:     0x7f69796127de - __GI___clone
  34:                0x0 - <unknown>
@emilio
Copy link
Member

@emilio emilio commented Aug 28, 2016

Seems like this upgrade() call is what is failing. Scary. Probably a consequence of some of the incremental restyle changes (After some more thought, I don't think so)... Sigh.

https://github.com/servo/servo/blob/master/components/layout/flow.rs#L1560

@emilio
Copy link
Member

@emilio emilio commented Aug 28, 2016

Nope, I confirmed this wasn't due to my style system changes, by using a build from May 26th (2bb109b).

cc @pcwalton

@jdm jdm added I-panic and removed I-crash labels Aug 28, 2016
@emilio emilio changed the title called `Option::unwrap()` on a `None` value called `Option::unwrap()` on a `None` value (Upgrading a weak Arc in layout) Sep 4, 2016
@nox
Copy link
Member

@nox nox commented Oct 4, 2017

This still happens.

@nox nox added the C-reproduced label Oct 4, 2017
@dralley
Copy link
Contributor

@dralley dralley commented Apr 1, 2020

This still reproduces

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
5 participants
You can’t perform that action at this time.