Skip to content

panic: called Option::unwrap() on a None value (thread WRRenderBackend#0, at /home/runner/.cargo/git/checkouts/webrender-a8b399ecb6c2da85/6cafc60/webrender/src/prim_store/image.rs:183) #41130

@fred-wang

Description

@fred-wang

cc @simonwuelker

Note: I have already reported this at #35456 (comment) ; but it seems my testcase was never integrated into the test suite and it is still crashing. Below is a new report found by fuzzing.

Minimal testcase:

<!DOCTYPE html>
<style>
  #span {background-repeat: round; background-image: url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAIAAABt+uBvAAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAd0SU1FB9wDGhYvCNVA1EIAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAjklEQVR42u3QIQEAMAgAsHNNVspTgARY1BZh0ZWP3VcgSJAgQYIECRKEIEGCBAkSJEgQggQJEiRIkCBBCBIkSJAgQYIECUKQIEGCBAkSJAhBggQJEiRIkCAECRIkSJAgQYIEIUiQIEGCBAkShCBBggQJEiRIEIIECRIkSJAgQYIQJEiQIEGCBAlCkCBBdwaeugIthHvZ+AAAAABJRU5E) }
</style>
<span id="span">A</span>

System: Linux
Version: Version: Servo 0.0.3-38fe52445
Command: ./servo/servo

called `Option::unwrap()` on a `None` value (thread WRRenderBackend#0, at /home/runner/.cargo/git/checkouts/webrender-a8b399ecb6c2da85/6cafc60/webrender/src/prim_store/image.rs:183)
   0: servoshell::backtrace::print
   1: servoshell::panic_hook::panic_hook
   2: std::panicking::panic_with_hook
   3: std::panicking::panic_handler::{{closure}}
   4: std::sys::backtrace::__rust_end_short_backtrace
   5: __rustc::rust_begin_unwind
   6: core::panicking::panic_fmt
   7: core::panicking::panic
   8: core::option::unwrap_failed
   9: webrender::prepare::prepare_prim_for_render
  10: webrender::prepare::prepare_picture
  11: webrender::frame_builder::FrameBuilder::build
  12: webrender::render_backend::Document::build_frame
  13: webrender::render_backend::RenderBackend::update_document
  14: webrender::render_backend::RenderBackend::process_transaction
  15: webrender::render_backend::RenderBackend::run
  16: std::sys::backtrace::__rust_begin_short_backtrace
  17: core::ops::function::FnOnce::call_once{{vtable.shim}}
  18: std::sys::thread::unix::Thread::new::thread_start
  19: start_thread
             at ./nptl/pthread_create.c:447:8
  20: clone3
             at ./misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:78:0

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions