head	1.2;
access;
symbols;
locks; strict;
comment	@# @;


1.2
date	2013.01.10.23.03.35;	author svnexp;	state Exp;
branches;
next	1.1;

1.1
date	2012.08.30.14.54.17;	author flo;	state Exp;
branches;
next	;


desc
@@


1.2
log
@## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/310207
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
## SVN ##
## SVN ## ------------------------------------------------------------------------
## SVN ## r310207 | flo | 2013-01-10 22:29:23 +0000 (Thu, 10 Jan 2013) | 9 lines
## SVN ##
## SVN ## - update www/firefox to 18.0
## SVN ## - update www/firefox-esr to 17.0.2
## SVN ## - update www/seamonkey to 2.15 (enigmail to 1.5.0)
## SVN ## - remove QT4 option to avoid confusion (it turned out to be too experimental)
## SVN ##
## SVN ## In collaboration with: Jan Beich <jbeich@@tormail.org>
## SVN ##
## SVN ## Security:	http://www.vuxml.org/freebsd/a4ed6632-5aa9-11e2-8fcb-c8600054b392.html
## SVN ##
## SVN ## ------------------------------------------------------------------------
## SVN ##
@
text
@# HG changeset patch
# Parent 9d3c9b863c697634e434b687d456bb82fa794ecf
# User  Uli Schlachter <psychon@@znc.in>
Bug 722975 - --enable-system-cairo build is broken after Bug 715658 fixed


diff --git a/gfx/thebes/gfxPlatform.cpp b/gfx/thebes/gfxPlatform.cpp
--- gfx/thebes/gfxPlatform.cpp
+++ gfx/thebes/gfxPlatform.cpp
@@@@ -502,21 +502,19 @@@@ struct SourceSurfaceUserData
   BackendType mBackendType;
 };
 
 void SourceBufferDestroy(void *srcSurfUD)
 {
   delete static_cast<SourceSurfaceUserData*>(srcSurfUD);
 }
 
-void SourceSnapshotDetached(cairo_surface_t *nullSurf)
+void SourceSnapshotDetached(void *nullSurf)
 {
-  gfxImageSurface* origSurf =
-    static_cast<gfxImageSurface*>(cairo_surface_get_user_data(nullSurf, &kSourceSurface));
-
+  gfxImageSurface *origSurf = static_cast<gfxImageSurface*>(nullSurf);
   origSurf->SetData(&kSourceSurface, NULL, NULL);
 }
 
 RefPtr<SourceSurface>
 gfxPlatform::GetSourceSurfaceForSurface(DrawTarget *aTarget, gfxASurface *aSurface)
 {
   void *userData = aSurface->GetData(&kSourceSurface);
 
@@@@ -621,24 +619,19 @@@@ gfxPlatform::GetSourceSurfaceForSurface(
       }
 
       srcBuffer = Factory::CreateWrappingDataSourceSurface(imgSurface->Data(),
                                                            imgSurface->Stride(),
                                                            size, format);
 
     }
 
-    cairo_surface_t *nullSurf =
-	cairo_null_surface_create(CAIRO_CONTENT_COLOR_ALPHA);
-    cairo_surface_set_user_data(nullSurf,
-                                &kSourceSurface,
-                                imgSurface,
-                                NULL);
-    cairo_surface_attach_snapshot(imgSurface->CairoSurface(), nullSurf, SourceSnapshotDetached);
-    cairo_surface_destroy(nullSurf);
+    cairo_surface_set_mime_data(imgSurface->CairoSurface(), "mozilla/magic",
+                                (const unsigned char *) "data", 4,
+                                SourceSnapshotDetached, imgSurface.get());
   }
 
   SourceSurfaceUserData *srcSurfUD = new SourceSurfaceUserData;
   srcSurfUD->mBackendType = aTarget->GetType();
   srcSurfUD->mSrcSurface = srcBuffer;
   aSurface->SetData(&kSourceSurface, srcSurfUD, SourceBufferDestroy);
 
   return srcBuffer;
@


1.1
log
@SVN rev 303378 on 2012-08-30 14:54:17Z by flo

- update firefox and thunderbird to 15.0
- update firefox-esr, thunderbird-esr, linux-thunderbird and linux-firefox to 10.0.7
- update seamonkey and linux-seamonkey to 2.12
- update nss to 3.13.6
- update bsdipc code (posix_spawn, SysV shared memory)
- rename patches to easily track those not (yet) submitted upstream
- reduce package size, except for www/libxul[1]
- restore default objdir to what it was in 13.0
- fix mail/enigmail after thunderbird build changes
- don't accidentally pick up headers from installed ports[3]
- add support for PREFIX != LOCALBASE to Makefile.webplugins [4]
- document vulnerabilities in vuln.xml
- *miscellaneous cleanups and fixups*

Obtained from:	OpenBSD ports[1]
PR:		ports/159831, ports/160933, ports/170467[3], ports/170236 [4]
Submitted by:	avilla [4]
In collaboration with:	Jan Beich <jbeich@@tormail.net> Who did most of the hard
			work.
@
text
@d10 3
a12 1
@@@@ -484,21 +484,19 @@@@ gfxPlatform::CreateDrawTargetForSurface(
d14 1
a14 3
 cairo_user_data_key_t kSourceSurface;
 
 void SourceBufferDestroy(void *srcBuffer)
d16 1
a16 1
   static_cast<SourceSurface*>(srcBuffer)->Release();
d34 1
a34 1
@@@@ -588,24 +586,19 @@@@ gfxPlatform::GetSourceSurfaceForSurface(
d56 4
a59 2
   srcBuffer->AddRef();
   aSurface->SetData(&kSourceSurface, srcBuffer, SourceBufferDestroy);
a61 2
 }
 
@

