[ooo-build-commit] .: patches/dev300 patches/vba
Noel Power
noelp at kemper.freedesktop.org
Thu Aug 12 11:44:53 PDT 2010
patches/dev300/apply | 2 +
patches/vba/vba-fix-shapepic-hlinkmacro.diff | 41 +++++++++++++++++++++++++++
2 files changed, 43 insertions(+)
New commits:
commit bb2ece8e337065dbaf0251f96a34a4f868df9e3b
Author: Noel Power <noel.power at novell.com>
Date: Thu Aug 12 18:01:57 2010 +0100
fix hlink/macro import/export for shape and pic objects ( xls )
* patches/dev300/apply:
* patches/vba/vba-fix-shapepic-hlinkmacro.diff:
diff --git a/patches/dev300/apply b/patches/dev300/apply
index de35b68..486991e 100644
--- a/patches/dev300/apply
+++ b/patches/dev300/apply
@@ -1595,6 +1595,8 @@ vba-msvbahelper-splitbuilt.diff
vba-fix-interesection.diff
# use oox filter exclusively for import of controls ( excel/word )
vba-use-ooxfilter-forcontrols.diff
+# fix hlink & macro import/export for autoshapes and pictures
+vba-fix-shapepic-hlinkmacro.diff
[ VBAUntested ]
SectionOwner => noelpwer
# KEEP - unfinished autotext stuff
diff --git a/patches/vba/vba-fix-shapepic-hlinkmacro.diff b/patches/vba/vba-fix-shapepic-hlinkmacro.diff
new file mode 100644
index 0000000..ec931dd
--- /dev/null
+++ b/patches/vba/vba-fix-shapepic-hlinkmacro.diff
@@ -0,0 +1,41 @@
+diff --git sc/source/filter/excel/xiescher.cxx sc/source/filter/excel/xiescher.cxx
+index 35336f7..e708d07 100644
+--- sc/source/filter/excel/xiescher.cxx
++++ sc/source/filter/excel/xiescher.cxx
+@@ -539,8 +539,9 @@ void XclImpDrawObjBase::PreProcessSdrObject( XclImpDffConverter& rDffConv, SdrOb
+ }
+
+ // macro and hyperlink
+- if( mbSimpleMacro && ((maMacroName.Len() > 0) ||
+- (maHyperlink.Len() > 0)) )
++ // removed oracle/sun check for mbSimpleMacro ( no idea what its for )
++ if( (maMacroName.Len() > 0 ) ||
++ (maHyperlink.Len() > 0) )
+ {
+ if( ScMacroInfo* pInfo = ScDrawLayer::GetMacroInfo( &rSdrObj, TRUE ) )
+ {
+diff --git sc/source/filter/excel/xltools.cxx sc/source/filter/excel/xltools.cxx
+index 51146d5..e703159 100644
+--- sc/source/filter/excel/xltools.cxx
++++ sc/source/filter/excel/xltools.cxx
+@@ -695,7 +695,7 @@ void XclTools::SkipSubStream( XclImpStream& rStrm )
+
+ // Basic macro names ----------------------------------------------------------
+
+-const OUString XclTools::maSbMacroPrefix( RTL_CONSTASCII_USTRINGPARAM( "vnd.sun.star.script:Standard." ) );
++const OUString XclTools::maSbMacroPrefix( RTL_CONSTASCII_USTRINGPARAM( "vnd.sun.star.script:" ) );
+ const OUString XclTools::maSbMacroSuffix( RTL_CONSTASCII_USTRINGPARAM( "?language=Basic&location=document" ) );
+
+ OUString XclTools::GetSbMacroUrl( const String& rMacroName, SfxObjectShell* pDocShell )
+@@ -727,7 +727,10 @@ String XclTools::GetXclMacroName( const OUString& rSbMacroUrl )
+ sal_Int32 nMacroNameLen = nSbMacroUrlLen - maSbMacroPrefix.getLength() - maSbMacroSuffix.getLength();
+ if( (nMacroNameLen > 0) && rSbMacroUrl.matchIgnoreAsciiCase( maSbMacroPrefix, 0 ) &&
+ rSbMacroUrl.matchIgnoreAsciiCase( maSbMacroSuffix, nSbMacroUrlLen - maSbMacroSuffix.getLength() ) )
+- return rSbMacroUrl.copy( maSbMacroPrefix.getLength(), nMacroNameLen );
++ {
++ sal_Int32 nPrjDot = rSbMacroUrl.indexOf( '.', maSbMacroPrefix.getLength() ) + 1;
++ return rSbMacroUrl.copy( nPrjDot, nSbMacroUrlLen - nPrjDot - maSbMacroSuffix.getLength() );
++ }
+ return String::EmptyString();
+ }
+
More information about the ooo-build-commit
mailing list