From 4685cc9b4abad1a53288854312c25dff53e35c01 Mon Sep 17 00:00:00 2001 From: David Tardon Date: Feb 27 2014 14:53:59 +0000 Subject: fix patch to apply --- diff --git a/0001-rhbz-1057977-avoid-use-of-invalidated-pointers.patch b/0001-rhbz-1057977-avoid-use-of-invalidated-pointers.patch index 563d634..ec33607 100644 --- a/0001-rhbz-1057977-avoid-use-of-invalidated-pointers.patch +++ b/0001-rhbz-1057977-avoid-use-of-invalidated-pointers.patch @@ -1,4 +1,4 @@ -From 6b127d40c7d57745bc602d9ff7914392f9d3b92b Mon Sep 17 00:00:00 2001 +From 35f78e48582caa691a855101a0d661985ba067bb Mon Sep 17 00:00:00 2001 From: David Tardon Date: Wed, 5 Feb 2014 10:55:25 +0100 Subject: [PATCH] rhbz#1057977 avoid use of invalidated pointers @@ -10,10 +10,10 @@ Change-Id: Ib81f79da696b5e8002f5a2ddcf160903231dc3f1 2 files changed, 59 insertions(+), 6 deletions(-) diff --git a/include/vcl/outdev.hxx b/include/vcl/outdev.hxx -index 8a7c439..4223135 100644 +index 047a79d..4f157b7 100644 --- a/include/vcl/outdev.hxx +++ b/include/vcl/outdev.hxx -@@ -537,9 +537,15 @@ protected: +@@ -547,9 +547,15 @@ protected: OutputDevice(); private: @@ -30,10 +30,10 @@ index 8a7c439..4223135 100644 virtual ~OutputDevice(); diff --git a/vcl/source/gdi/outdev3.cxx b/vcl/source/gdi/outdev3.cxx -index 5c5dcf2..c347f71 100644 +index afe06f7..d789eb9 100644 --- a/vcl/source/gdi/outdev3.cxx +++ b/vcl/source/gdi/outdev3.cxx -@@ -154,7 +154,7 @@ static void ImplRotatePos( long nOriginX, long nOriginY, long& rX, long& rY, +@@ -156,7 +156,7 @@ static void ImplRotatePos( long nOriginX, long nOriginY, long& rX, long& rY, } } @@ -42,7 +42,7 @@ index 5c5dcf2..c347f71 100644 { // the currently selected logical font is no longer needed if ( mpFontEntry ) -@@ -205,6 +205,38 @@ void OutputDevice::ImplUpdateFontData( bool bNewFontLists ) +@@ -207,6 +207,38 @@ void OutputDevice::ImplUpdateFontData( bool bNewFontLists ) delete mpFontList; if( mpFontCache && mpFontCache != pSVData->maGDIData.mpScreenFontCache ) delete mpFontCache; @@ -79,9 +79,9 @@ index 5c5dcf2..c347f71 100644 + if( mpPDFWriter ) + { mpFontList = pSVData->maGDIData.mpScreenFontList->Clone( true, true ); - mpFontCache = new ImplFontCache(); + mpFontCache = new ImplFontCache( sal_False ); } -@@ -222,16 +254,24 @@ void OutputDevice::ImplUpdateFontData( bool bNewFontLists ) +@@ -227,16 +259,24 @@ void OutputDevice::ImplUpdateFontData( bool bNewFontLists ) Window* pChild = ((Window*)this)->mpWindowImpl->mpFirstChild; while ( pChild ) { @@ -107,7 +107,7 @@ index 5c5dcf2..c347f71 100644 // clear global font lists to have them updated pSVData->maGDIData.mpScreenFontCache->Invalidate(); if ( bNewFontLists ) -@@ -250,16 +290,23 @@ void OutputDevice::ImplUpdateAllFontData( bool bNewFontLists ) +@@ -255,16 +295,23 @@ void OutputDevice::ImplUpdateAllFontData( bool bNewFontLists ) } } @@ -133,7 +133,7 @@ index 5c5dcf2..c347f71 100644 pSysWin = pSysWin->mpWindowImpl->mpNextOverlap; } -@@ -270,7 +317,7 @@ void OutputDevice::ImplUpdateAllFontData( bool bNewFontLists ) +@@ -275,7 +322,7 @@ void OutputDevice::ImplUpdateAllFontData( bool bNewFontLists ) VirtualDevice* pVirDev = pSVData->maGDIData.mpFirstVirDev; while ( pVirDev ) { @@ -142,7 +142,7 @@ index 5c5dcf2..c347f71 100644 pVirDev = pVirDev->mpNext; } -@@ -278,7 +325,7 @@ void OutputDevice::ImplUpdateAllFontData( bool bNewFontLists ) +@@ -283,7 +330,7 @@ void OutputDevice::ImplUpdateAllFontData( bool bNewFontLists ) Printer* pPrinter = pSVData->maGDIData.mpFirstPrinter; while ( pPrinter ) {