Bug 1385003 - Add missing call to deinit the renderer before dropping it. r?kvark draft
authorKartikaya Gupta <kgupta@mozilla.com>
Wed, 09 Aug 2017 10:46:53 -0400
changeset 643290 740ffe38482672416798c733428929d3c5d49d6b
parent 643289 a6c7ca72a95cf31553f80c6cd242467b810e12e4
child 725260 37e16c218c6581efd2bf9c234a9affa75714a506
push id73049
push userkgupta@mozilla.com
push dateWed, 09 Aug 2017 14:47:44 +0000
reviewerskvark
bugs1385003
milestone57.0a1
Bug 1385003 - Add missing call to deinit the renderer before dropping it. r?kvark MozReview-Commit-ID: 3dmttqFqMJE
gfx/webrender_bindings/src/bindings.rs
--- a/gfx/webrender_bindings/src/bindings.rs
+++ b/gfx/webrender_bindings/src/bindings.rs
@@ -480,17 +480,19 @@ pub extern "C" fn wr_renderer_current_ep
         return true;
     }
     return false;
 }
 
 /// cbindgen:postfix=WR_DESTRUCTOR_SAFE_FUNC
 #[no_mangle]
 pub unsafe extern "C" fn wr_renderer_delete(renderer: *mut Renderer) {
-    Box::from_raw(renderer);
+    let renderer = Box::from_raw(renderer);
+    renderer.deinit();
+    // let renderer go out of scope and get dropped
 }
 
 pub struct WrRenderedEpochs {
     data: Vec<(WrPipelineId, WrEpoch)>,
 }
 
 #[no_mangle]
 pub unsafe extern "C" fn wr_renderer_flush_rendered_epochs(renderer: &mut Renderer) -> *mut WrRenderedEpochs {