Last Comment Bug 784260 - [Azure] DrawTargetD2D::CreateBrushForPattern should be able to deal with surfaces from other Azure backends
: [Azure] DrawTargetD2D::CreateBrushForPattern should be able to deal with surf...
Status: RESOLVED FIXED
:
Product: Core
Classification: Components
Component: Graphics (show other bugs)
: 15 Branch
: All Windows 7
: -- normal (vote)
: mozilla17
Assigned To: Nick Cameron [:nrc]
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-08-20 22:34 PDT by Nick Cameron [:nrc]
Modified: 2012-08-23 03:47 PDT (History)
1 user (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
test case (394 bytes, text/html)
2012-08-20 22:46 PDT, Nick Cameron [:nrc]
no flags Details
patch (2.61 KB, patch)
2012-08-20 22:48 PDT, Nick Cameron [:nrc]
bas: review+
Details | Diff | Splinter Review

Description Nick Cameron [:nrc] 2012-08-20 22:34:54 PDT
Crashes with a null pointer exception in D2D code.
Comment 1 Nick Cameron [:nrc] 2012-08-20 22:46:27 PDT
Created attachment 653658 [details]
test case

You need to have D3D layers and D2D enabled, then prefer the Cairo Azure backend, then load the test case (you'll need some local file called hippo.jpg, or change to some other image name, doesn't seem to work with remote images though).

Expected: a 100x100 part of the image at the top left, and the whole image on the right

Actual result: crashes
Comment 2 Nick Cameron [:nrc] 2012-08-20 22:48:39 PDT
Created attachment 653659 [details] [diff] [review]
patch
Comment 3 Bas Schouten (:bas.schouten) 2012-08-21 08:34:49 PDT
Comment on attachment 653659 [details] [diff] [review]
patch

Looks fine to me, keep in mind this is not encouraged practice :).
Comment 4 Nick Cameron [:nrc] 2012-08-21 14:02:48 PDT
(In reply to Bas Schouten (:bas) from comment #3)
> Comment on attachment 653659 [details] [diff] [review]
> patch
> 
> Looks fine to me, keep in mind this is not encouraged practice :).

Having different backends for content and canvas? Or passing surfaces from one backend to another? Because the latter will always happen if we allow the former.
Comment 5 Nick Cameron [:nrc] 2012-08-22 13:40:22 PDT
Try: https://tbpl.mozilla.org/?tree=Try&rev=1fd087447bb8
Comment 7 Ed Morley [:emorley] 2012-08-23 03:47:27 PDT
https://hg.mozilla.org/mozilla-central/rev/ca3a3ff0af73

Note You need to log in before you can comment on or make changes to this bug.