[libreoffice/f15] Resolves: rhbz#710556 don't crash on missing graphics on pptx export
Caolan McNamara
caolanm at fedoraproject.org
Tue Jun 7 11:46:12 UTC 2011
commit cb4695c1ab74f6baf3cc2d1f2ff7e82923cd5079
Author: Caolán McNamara <caolanm at redhat.com>
Date: Tue Jun 7 12:45:54 2011 +0100
Resolves: rhbz#710556 don't crash on missing graphics on pptx export
...bz-710556-don-t-crash-on-missing-graphics.patch | 111 ++++++++++++++++++++
libreoffice.spec | 5 +-
2 files changed, 115 insertions(+), 1 deletions(-)
---
diff --git a/0001-Resolves-rhbz-710556-don-t-crash-on-missing-graphics.patch b/0001-Resolves-rhbz-710556-don-t-crash-on-missing-graphics.patch
new file mode 100644
index 0000000..ccbf676
--- /dev/null
+++ b/0001-Resolves-rhbz-710556-don-t-crash-on-missing-graphics.patch
@@ -0,0 +1,111 @@
+From b883b506e2d4dca419838b56915c58a0030d5b98 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Caol=C3=A1n=20McNamara?= <caolanm at redhat.com>
+Date: Tue, 7 Jun 2011 12:37:08 +0100
+Subject: [PATCH] Resolves: rhbz#710556 don't crash on missing graphics
+
+---
+ oox/source/export/drawingml.cxx | 28 ++++++++++++++--------------
+ 1 files changed, 14 insertions(+), 14 deletions(-)
+
+diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx
+index 4e94e90..7cf8d98 100644
+--- a/oox/source/export/drawingml.cxx
++++ b/oox/source/export/drawingml.cxx
+@@ -469,7 +469,7 @@ OUString DrawingML::WriteImage( const Graphic& rGraphic )
+ {
+ GfxLink aLink = rGraphic.GetLink ();
+ OUString sMediaType;
+- const char* sExtension = NULL;
++ const char* pExtension = "";
+ OUString sRelId;
+
+ SvMemoryStream aStream;
+@@ -479,42 +479,42 @@ OUString DrawingML::WriteImage( const Graphic& rGraphic )
+ switch ( aLink.GetType() ) {
+ case GFX_LINK_TYPE_NATIVE_GIF:
+ sMediaType = US( "image/gif" );
+- sExtension = ".gif";
++ pExtension = ".gif";
+ break;
+ case GFX_LINK_TYPE_NATIVE_JPG:
+ sMediaType = US( "image/jpeg" );
+- sExtension = ".jpeg";
++ pExtension = ".jpeg";
+ break;
+ case GFX_LINK_TYPE_NATIVE_PNG:
+ sMediaType = US( "image/png" );
+- sExtension = ".png";
++ pExtension = ".png";
+ break;
+ case GFX_LINK_TYPE_NATIVE_TIF:
+ sMediaType = US( "image/tiff" );
+- sExtension = ".tiff";
++ pExtension = ".tiff";
+ break;
+ case GFX_LINK_TYPE_NATIVE_WMF:
+ sMediaType = US( "image/x-wmf" );
+- sExtension = ".wmf";
++ pExtension = ".wmf";
+ break;
+ case GFX_LINK_TYPE_NATIVE_MET:
+ sMediaType = US( "image/x-met" );
+- sExtension = ".met";
++ pExtension = ".met";
+ break;
+ case GFX_LINK_TYPE_NATIVE_PCT:
+ sMediaType = US( "image/x-pict" );
+- sExtension = ".pct";
++ pExtension = ".pct";
+ break;
+ default: {
+ GraphicType aType = rGraphic.GetType();
+ if ( aType == GRAPHIC_BITMAP ) {
+ GraphicConverter::Export( aStream, rGraphic, CVT_PNG );
+ sMediaType = US( "image/png" );
+- sExtension = ".png";
++ pExtension = ".png";
+ } else if ( aType == GRAPHIC_GDIMETAFILE ) {
+ GraphicConverter::Export( aStream, rGraphic, CVT_EMF );
+ sMediaType = US( "image/x-emf" );
+- sExtension = ".emf";
++ pExtension = ".emf";
+ } else {
+ OSL_TRACE( "unhandled graphic type" );
+ break;
+@@ -526,7 +526,7 @@ OUString DrawingML::WriteImage( const Graphic& rGraphic )
+ }
+ }
+
+- const char *pComponent = NULL;
++ const char *pComponent = "";
+ switch ( meDocumentType )
+ {
+ case DOCUMENT_DOCX: pComponent = "word"; break;
+@@ -538,13 +538,13 @@ OUString DrawingML::WriteImage( const Graphic& rGraphic )
+ .appendAscii( pComponent )
+ .appendAscii( "/media/image" )
+ .append( (sal_Int32) mnImageCounter )
+- .appendAscii( sExtension )
++ .appendAscii( pExtension )
+ .makeStringAndClear(),
+ sMediaType );
+ xOutStream->writeBytes( Sequence< sal_Int8 >( (const sal_Int8*) aData, nDataSize ) );
+ xOutStream->closeOutput();
+
+- const char *pImagePrefix = NULL;
++ const char *pImagePrefix = "";
+ switch ( meDocumentType )
+ {
+ case DOCUMENT_DOCX:
+@@ -561,7 +561,7 @@ OUString DrawingML::WriteImage( const Graphic& rGraphic )
+ OUStringBuffer()
+ .appendAscii( pImagePrefix )
+ .append( (sal_Int32) mnImageCounter ++ )
+- .appendAscii( sExtension )
++ .appendAscii( pExtension )
+ .makeStringAndClear() );
+
+ return sRelId;
+--
+1.7.5.2
+
diff --git a/libreoffice.spec b/libreoffice.spec
index 686d8b9..5d5ec57 100644
--- a/libreoffice.spec
+++ b/libreoffice.spec
@@ -143,6 +143,7 @@ Patch54: 0001-handle-NULL-display-gracefully.patch
Patch55: 0001-fix-crash-in-fdo-36203-the-referenced-shape-didn-t-c.patch
Patch56: 0001-Resolves-rhbz-707317-avoid-crash-in-getRowSpan.patch
Patch57: 0001-Resolves-rhbz-710004-band-aid-for-immediate-crash-in.patch
+Patch58: 0001-Resolves-rhbz-710556-don-t-crash-on-missing-graphics.patch
%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")}
%define instdir %{_libdir}
@@ -801,6 +802,7 @@ mv -f redhat.soc extras/source/palettes/standard.soc
%patch55 -p1 -b .fix-crash-in-fdo-36203-the-referenced-shape-didn-t-c.patch
%patch56 -p1 -b .rhbz707317-avoid-crash-in-getRowSpan.patch
%patch57 -p1 -b .rhbz710004-band-aid-for-immediate-crash-in.patch
+%patch58 -p1 -b .rhbz710556-don-t-crash-on-missing-graphics.patch
touch scripting/source/pyprov/delzip
touch scripting/util/provider/beanshell/delzip
@@ -2145,8 +2147,9 @@ update-desktop-database %{_datadir}/applications &> /dev/null || :
%{basisinstdir}/program/kde-open-url
%changelog
-* Thu Jun 02 2011 Caolán McNamara <caolanm at redhat.com> 1:3.3.2.2-10-UNBUILT
+* Tue Jun 07 2011 Caolán McNamara <caolanm at redhat.com> 1:3.3.2.2-10-UNBUILT
- Resolves: rhbz#710004 band aid for crash
+- Resolves: rhbz#710556 don't crash on missing graphics on pptx export
* Mon May 30 2011 Caolán McNamara <caolanm at redhat.com> 1:3.3.2.2-9
- Resolves: rhbz#702635 set correct page number when exporting selected
More information about the scm-commits
mailing list