]>
Commit | Line | Data |
---|---|---|
96ef4151 JB |
1 | diff -r baec1efc87a4 gfx/thebes/gfxPlatform.cpp |
2 | --- a/mozilla/gfx/thebes/gfxPlatform.cpp Sun Mar 04 00:38:41 2012 +0000 | |
3 | +++ b/mozilla/gfx/thebes/gfxPlatform.cpp Wed May 16 17:37:10 2012 +0200 | |
4 | @@ -448,11 +448,9 @@ gfxPlatform::CreateDrawTargetForSurface( | |
5 | delete static_cast<SourceSurfaceUserData*>(srcSurfUD); | |
6 | } | |
7 | ||
8 | -void SourceSnapshotDetached(cairo_surface_t *nullSurf) | |
9 | +void SourceSnapshotDetached(void *nullSurf) | |
10 | { | |
11 | - gfxImageSurface* origSurf = | |
12 | - static_cast<gfxImageSurface*>(cairo_surface_get_user_data(nullSurf, &kSourceSurface)); | |
13 | - | |
14 | + gfxImageSurface *origSurf = static_cast<gfxImageSurface*>(nullSurf); | |
15 | origSurf->SetData(&kSourceSurface, NULL, NULL); | |
16 | } | |
17 | ||
18 | @@ -524,14 +522,8 @@ gfxPlatform::GetSourceSurfaceForSurface( | |
19 | ||
20 | } | |
21 | ||
22 | - cairo_surface_t *nullSurf = | |
23 | - cairo_null_surface_create(CAIRO_CONTENT_COLOR_ALPHA); | |
24 | - cairo_surface_set_user_data(nullSurf, | |
25 | - &kSourceSurface, | |
26 | - imgSurface, | |
27 | - NULL); | |
28 | - cairo_surface_attach_snapshot(imgSurface->CairoSurface(), nullSurf, SourceSnapshotDetached); | |
29 | - cairo_surface_destroy(nullSurf); | |
30 | + cairo_surface_set_mime_data(imgSurface->CairoSurface(), "mozilla/magic", | |
31 | + (const unsigned char *) "data", 4, SourceSnapshotDetached, imgSurface.get()); | |
32 | } | |
33 | ||
34 | srcBuffer->AddRef(); |