From 95b9ae9cd7ba53bff25533397878d49adffebee0 Mon Sep 17 00:00:00 2001 From: Joachim Lingner Date: Thu, 21 Oct 2010 16:14:09 +0200 Subject: jl162 #i115180# OOo does not find VM runtime library of Java 1.6.0_22 on Mac --- jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx b/jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx index 6dd18ccc9f18..9bc8adfb21db 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx +++ b/jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx @@ -73,7 +73,8 @@ char const* const* OtherInfo::getRuntimePaths(int * size) "/bin/hotspot/jvm.dll" #elif UNX #ifdef MACOSX - "/../../../JavaVM" + "/../../../JavaVM", + "/../../../../../Frameworks/JavaVM.framework/JavaVM" //as of 1.6.0_22 #else "/lib/" JFW_PLUGIN_ARCH "/client/libjvm.so", // for Blackdown PPC "/lib/" JFW_PLUGIN_ARCH "/server/libjvm.so", // for Blackdown AMD64 -- cgit v1.2.3 From acfd9bcfa88e1de337e05eeff761c3ed28ca38d1 Mon Sep 17 00:00:00 2001 From: Niklas Nebel Date: Fri, 22 Oct 2010 11:44:41 +0200 Subject: calc33stopper1: #i115183# no reinterpret_cast between ScDBFunc* and ScTabView* --- sc/source/ui/miscdlgs/conflictsdlg.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sc/source/ui/miscdlgs/conflictsdlg.cxx b/sc/source/ui/miscdlgs/conflictsdlg.cxx index 361f201281dc..89f818e21928 100644 --- a/sc/source/ui/miscdlgs/conflictsdlg.cxx +++ b/sc/source/ui/miscdlgs/conflictsdlg.cxx @@ -36,7 +36,7 @@ #include "conflictsdlg.hrc" #include "scresid.hxx" #include "viewdata.hxx" -#include "tabview.hxx" +#include "dbfunc.hxx" //============================================================================= @@ -660,7 +660,7 @@ IMPL_LINK( ScConflictsDlg, UpdateSelectionHdl, Timer*, EMPTYARG ) return 0; } - ScTabView* pTabView = reinterpret_cast< ScTabView* >( mpViewData->GetView() ); + ScTabView* pTabView = mpViewData->GetView(); pTabView->DoneBlockMode(); BOOL bContMark = FALSE; SvLBoxEntry* pEntry = maLbConflicts.FirstSelected(); -- cgit v1.2.3 From 96d13bf8031f10f3a12a3201b82186929ce7e5d0 Mon Sep 17 00:00:00 2001 From: "Daniel Rentz [dr]" Date: Fri, 22 Oct 2010 11:56:55 +0200 Subject: calc33stopper1: #i79854# do not create defined names in Calc for functions --- sc/source/filter/excel/xiname.cxx | 6 ++++-- sc/source/filter/inc/xiname.hxx | 4 +++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/sc/source/filter/excel/xiname.cxx b/sc/source/filter/excel/xiname.cxx index 5d21d91c9f53..3d373f6c36ba 100644 --- a/sc/source/filter/excel/xiname.cxx +++ b/sc/source/filter/excel/xiname.cxx @@ -45,6 +45,7 @@ XclImpName::XclImpName( XclImpStream& rStrm, sal_uInt16 nXclNameIdx ) : mpScData( 0 ), mcBuiltIn( EXC_BUILTIN_UNKNOWN ), mnScTab( SCTAB_MAX ), + mbFunction( false ), mbVBName( false ) { ExcelToSc& rFmlaConv = GetOldFmlaConverter(); @@ -93,7 +94,8 @@ XclImpName::XclImpName( XclImpStream& rStrm, sal_uInt16 nXclNameIdx ) : // 2) *** convert sheet index and name *** -------------------------------- - // Visual Basic procedure + // functions and VBA + mbFunction = ::get_flag( nFlags, EXC_NAME_FUNC ); mbVBName = ::get_flag( nFlags, EXC_NAME_VB ); // get built-in name, or convert characters invalid in Calc @@ -210,7 +212,7 @@ XclImpName::XclImpName( XclImpStream& rStrm, sal_uInt16 nXclNameIdx ) : // 4) *** create a defined name in the Calc document *** ------------------ // #163146# do not ignore hidden names (may be regular names created by VBA scripts) - if( pTokArr /*&& (bBuiltIn || !::get_flag( nFlags, EXC_NAME_HIDDEN ))*/ && !mbVBName ) + if( pTokArr /*&& (bBuiltIn || !::get_flag( nFlags, EXC_NAME_HIDDEN ))*/ && !mbFunction && !mbVBName ) { // create the Calc name data ScRangeData* pData = new ScRangeData( GetDocPtr(), maScName, *pTokArr, ScAddress(), nNameType ); diff --git a/sc/source/filter/inc/xiname.hxx b/sc/source/filter/inc/xiname.hxx index ccf1b88af947..b5d9ca642d4f 100644 --- a/sc/source/filter/inc/xiname.hxx +++ b/sc/source/filter/inc/xiname.hxx @@ -50,6 +50,7 @@ public: inline SCTAB GetScTab() const { return mnScTab; } inline const ScRangeData* GetScRangeData() const { return mpScData; } inline bool IsGlobal() const { return mnScTab == SCTAB_MAX; } + inline bool IsFunction() const { return mbFunction; } inline bool IsVBName() const { return mbVBName; } private: @@ -58,7 +59,8 @@ private: const ScRangeData* mpScData; /// Pointer to Calc defined name (no ownership). sal_Unicode mcBuiltIn; /// Excel built-in name index. SCTAB mnScTab; /// Calc sheet index of local names. - bool mbVBName; /// true = Visual Basic procedure. + bool mbFunction; /// true = Name refers to a function (add-in or VBA). + bool mbVBName; /// true = Visual Basic procedure or function. }; // ---------------------------------------------------------------------------- -- cgit v1.2.3 From c1019a76eb0b2e83af8755fa623b42c925140c6d Mon Sep 17 00:00:00 2001 From: "Philipp Lohmann [pl]" Date: Fri, 22 Oct 2010 14:25:53 +0200 Subject: ooo33gsl12: #i115107# do not call getNativeControlRegion during paint on gtk --- vcl/inc/vcl/svdata.hxx | 4 ++++ vcl/source/app/svdata.cxx | 1 - vcl/source/control/spinfld.cxx | 5 +++-- vcl/source/window/brdwin.cxx | 6 ++++-- vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx | 3 +++ 5 files changed, 14 insertions(+), 5 deletions(-) diff --git a/vcl/inc/vcl/svdata.hxx b/vcl/inc/vcl/svdata.hxx index 5cc8f32d7ac9..9787b1f6e58c 100644 --- a/vcl/inc/vcl/svdata.hxx +++ b/vcl/inc/vcl/svdata.hxx @@ -318,6 +318,10 @@ struct ImplSVNWFData // window background before drawing the native // checkbox bool mbScrollbarJumpPage; // true for "jump to here" behavior + bool mbCanDrawWidgetAnySize; // set to true currently on gtk + // signals that widgets can be drawn in any size and + // brdwin.cxx ImplSmallBorderWindowView::DrawWindow + // should not do GetNativeControlRegion }; diff --git a/vcl/source/app/svdata.cxx b/vcl/source/app/svdata.cxx index f8b0d1d3379f..f1065c07ca24 100644 --- a/vcl/source/app/svdata.cxx +++ b/vcl/source/app/svdata.cxx @@ -112,7 +112,6 @@ void ImplInitSVData() // init global instance data memset( pImplSVData, 0, sizeof( ImplSVData ) ); pImplSVData->maHelpData.mbAutoHelpId = sal_True; - pImplSVData->maHelpData.mbAutoHelpId = sal_True; pImplSVData->maNWFData.maMenuBarHighlightTextColor = Color( COL_TRANSPARENT ); // find out whether we are running in the testtool diff --git a/vcl/source/control/spinfld.cxx b/vcl/source/control/spinfld.cxx index 754270e9012f..c51ac834f1b4 100644 --- a/vcl/source/control/spinfld.cxx +++ b/vcl/source/control/spinfld.cxx @@ -114,8 +114,9 @@ BOOL ImplDrawNativeSpinfield( Window *pWin, const SpinbuttonValue& rSpinbuttonVa Size aSize( pBorder->GetOutputSizePixel() ); // the size of the border window, i.e., the whole control Rectangle aBound, aContent; Rectangle aNatRgn( aPt, aSize ); - if( pBorder->GetNativeControlRegion(CTRL_SPINBOX, PART_ENTIRE_CONTROL, - aNatRgn, 0, rSpinbuttonValue, rtl::OUString(), aBound, aContent) ) + if( ! ImplGetSVData()->maNWFData.mbCanDrawWidgetAnySize && + pBorder->GetNativeControlRegion( CTRL_SPINBOX, PART_ENTIRE_CONTROL, + aNatRgn, 0, rSpinbuttonValue, rtl::OUString(), aBound, aContent) ) { aSize = aContent.GetSize(); } diff --git a/vcl/source/window/brdwin.cxx b/vcl/source/window/brdwin.cxx index b221d1f7d928..2ff7d0a687e7 100644 --- a/vcl/source/window/brdwin.cxx +++ b/vcl/source/window/brdwin.cxx @@ -1348,8 +1348,10 @@ void ImplSmallBorderWindowView::DrawWindow( USHORT nDrawFlags, OutputDevice*, co Rectangle aBoundingRgn( aPoint, Size( mnWidth, mnHeight ) ); Rectangle aContentRgn( aCtrlRegion ); - if(pWin->GetNativeControlRegion( aCtrlType, aCtrlPart, aCtrlRegion, - nState, aControlValue, rtl::OUString(), aBoundingRgn, aContentRgn )) + if( ! ImplGetSVData()->maNWFData.mbCanDrawWidgetAnySize && + pWin->GetNativeControlRegion( aCtrlType, aCtrlPart, aCtrlRegion, + nState, aControlValue, rtl::OUString(), + aBoundingRgn, aContentRgn )) { aCtrlRegion=aContentRgn; } diff --git a/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx b/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx index ec92c20b54b5..58ab3771213f 100644 --- a/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx +++ b/vcl/unx/gtk/gdi/salnativewidgets-gtk.cxx @@ -411,6 +411,9 @@ void GtkData::initNWF( void ) // open first menu on F10 pSVData->maNWFData.mbOpenMenuOnF10 = true; + // omit GetNativeControl while painting (see brdwin.cxx) + pSVData->maNWFData.mbCanDrawWidgetAnySize = true; + int nScreens = GetX11SalData()->GetDisplay()->GetScreenCount(); gWidgetData = std::vector( nScreens ); for( int i = 0; i < nScreens; i++ ) -- cgit v1.2.3 From 0dfc0be17c2cf83c6838a359d4ef34495245f383 Mon Sep 17 00:00:00 2001 From: "Ocke Janssen [oj]" Date: Mon, 25 Oct 2010 08:03:46 +0200 Subject: dba33l: #i115165# allow NULL as parameter value --- connectivity/source/parse/sqlbison.y | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/connectivity/source/parse/sqlbison.y b/connectivity/source/parse/sqlbison.y index 84e9aa2532ff..9709d33fdf76 100644 --- a/connectivity/source/parse/sqlbison.y +++ b/connectivity/source/parse/sqlbison.y @@ -2627,7 +2627,7 @@ value_exp_commalist: } ; function_arg: - value_exp + result | value_exp comparison value_exp { $$ = SQL_NEW_RULE; -- cgit v1.2.3 From f1b79dae76ea0ba3d03854c121cfbd958fe86cee Mon Sep 17 00:00:00 2001 From: Joachim Lingner Date: Tue, 26 Oct 2010 12:28:33 +0200 Subject: jl162 #i115180# fix problems with latest java 1.6.0_22 on MacOS 10.6 --- jvmfwk/inc/jvmfwk/framework.h | 1 + jvmfwk/inc/jvmfwk/vendorplugin.h | 19 +++++++ jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx | 4 +- .../plugins/sunmajor/pluginlib/sunjavaplugin.cxx | 62 +++++++++++++++++++++- .../plugins/sunmajor/pluginlib/sunjavaplugin.map | 5 ++ jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx | 4 +- jvmfwk/plugins/sunmajor/pluginlib/util.cxx | 8 +-- jvmfwk/source/elements.cxx | 10 ++++ jvmfwk/source/framework.cxx | 48 ++++++++++------- jvmfwk/source/framework.hxx | 4 ++ 10 files changed, 135 insertions(+), 30 deletions(-) diff --git a/jvmfwk/inc/jvmfwk/framework.h b/jvmfwk/inc/jvmfwk/framework.h index 53914a3debed..7c3551f70116 100644 --- a/jvmfwk/inc/jvmfwk/framework.h +++ b/jvmfwk/inc/jvmfwk/framework.h @@ -830,6 +830,7 @@ javaFrameworkError SAL_CALL jfw_getJRELocations( JFW_E_NONE the function ran successfully.
JFW_E_ERROR an error occurred during execution.
JFW_E_INVALID_ARG pInfo contains invalid data
+ JFW_E_NO_PLUGIN a plug-in library could not be found.
*/ javaFrameworkError SAL_CALL jfw_existJRE(const JavaInfo *pInfo, sal_Bool *exist); diff --git a/jvmfwk/inc/jvmfwk/vendorplugin.h b/jvmfwk/inc/jvmfwk/vendorplugin.h index 258833490ab7..15707b1bbe88 100644 --- a/jvmfwk/inc/jvmfwk/vendorplugin.h +++ b/jvmfwk/inc/jvmfwk/vendorplugin.h @@ -238,6 +238,25 @@ javaPluginError jfw_plugin_startJavaVirtualMachine( +/** checks if the installation of the jre still exists. + + This function checks if the JRE described by pInfo still + exists. The check must be very quick because it is called by javaldx + (Linux, Solaris) at start up. + + @param pInfo + [in] the JavaInfo object with information about the JRE. + @param pp_exist + [out] the parameter is set to either sal_True or sal_False. The value is + only valid if the function returns JFW_E_NONE. + + @return + JFW_PLUGIN_E_NONE the function ran successfully.
+ JFW_PLUGIN_E_ERROR an error occurred during execution.
+ JFW_PLUGIN_E_INVALID_ARG pInfo contains invalid data
+ */ +javaPluginError jfw_plugin_existJRE(const JavaInfo *pInfo, sal_Bool *exist); + #ifdef __cplusplus } #endif diff --git a/jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx b/jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx index 9bc8adfb21db..3ae1c0f16b92 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx +++ b/jvmfwk/plugins/sunmajor/pluginlib/otherjre.cxx @@ -73,7 +73,6 @@ char const* const* OtherInfo::getRuntimePaths(int * size) "/bin/hotspot/jvm.dll" #elif UNX #ifdef MACOSX - "/../../../JavaVM", "/../../../../../Frameworks/JavaVM.framework/JavaVM" //as of 1.6.0_22 #else "/lib/" JFW_PLUGIN_ARCH "/client/libjvm.so", // for Blackdown PPC @@ -96,8 +95,7 @@ char const* const* OtherInfo::getLibraryPaths(int* size) #ifdef UNX static char const * ar[] = { #ifdef MACOSX - "/../Libraries", - "/lib" + //mac version does not have a ld library path anymore #else "/bin", "/jre/bin", diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx b/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx index 896342b5389d..b43edf53b3bc 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx +++ b/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.cxx @@ -470,10 +470,10 @@ javaPluginError jfw_plugin_startJavaVirtualMachine( { JFW_ENSURE(0, OUSTR("[Java framework]sunjavaplugin" SAL_DLLEXTENSION " could not load Java runtime library: \n") - + sRuntimeLib + OUSTR(".")); + + sRuntimeLib + OUSTR("\n")); JFW_TRACE0(OUSTR("[Java framework]sunjavaplugin" SAL_DLLEXTENSION " could not load Java runtime library: \n") - + sRuntimeLib + OUSTR(".")); + + sRuntimeLib + OUSTR("\n")); return JFW_PLUGIN_E_VM_CREATION_FAILED; } @@ -614,5 +614,63 @@ javaPluginError jfw_plugin_startJavaVirtualMachine( return errcode; } +extern "C" +javaPluginError jfw_plugin_existJRE(const JavaInfo *pInfo, sal_Bool *exist) +{ + javaPluginError ret = JFW_PLUGIN_E_NONE; + if (!pInfo || !exist) + return JFW_PLUGIN_E_INVALID_ARG; + ::rtl::OUString sLocation(pInfo->sLocation); + + if (sLocation.getLength() == 0) + return JFW_PLUGIN_E_INVALID_ARG; + ::osl::DirectoryItem item; + ::osl::File::RC rc_item = ::osl::DirectoryItem::get(sLocation, item); + if (::osl::File::E_None == rc_item) + { + *exist = sal_True; + } + else if (::osl::File::E_NOENT == rc_item) + { + *exist = sal_False; + } + else + { + ret = JFW_PLUGIN_E_ERROR; + } +#ifdef MACOSX + //We can have the situation that the JavaVM runtime library is not + //contained within JAVA_HOME. Then the check for JAVA_HOME would return + //true although the runtime library may not be loadable. + if (ret == JFW_PLUGIN_E_NONE && *exist == sal_True) + { + rtl::OUString sRuntimeLib = getRuntimeLib(pInfo->arVendorData); + JFW_TRACE2(OUSTR("[Java framework] Checking existence of Java runtime library.\n")); + + ::osl::DirectoryItem itemRt; + ::osl::File::RC rc_itemRt = ::osl::DirectoryItem::get(sRuntimeLib, itemRt); + if (::osl::File::E_None == rc_itemRt) + { + *exist = sal_True; + JFW_TRACE2(OUSTR("[Java framework] Java runtime library exist: ") + + sRuntimeLib + OUSTR("\n")); + + } + else if (::osl::File::E_NOENT == rc_itemRt) + { + *exist = sal_False; + JFW_TRACE2(OUSTR("[Java framework] Java runtime library does not exist: ") + + sRuntimeLib + OUSTR("\n")); + } + else + { + ret = JFW_PLUGIN_E_ERROR; + JFW_TRACE2(OUSTR("[Java framework] Error while looking for Java runtime library: ") + + sRuntimeLib + OUSTR(" \n")); + } + } +#endif + return ret; +} diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.map b/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.map index db75c9611076..901867f0a43d 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.map +++ b/jvmfwk/plugins/sunmajor/pluginlib/sunjavaplugin.map @@ -6,3 +6,8 @@ UDK_3_0_0 { local: *; }; + +UDK_3.1 { # OOo 3.3 + global: + jfw_plugin_existJRE; +} UDK_3_0_0; diff --git a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx index e17a6c788096..5d52046c705e 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx +++ b/jvmfwk/plugins/sunmajor/pluginlib/sunversion.cxx @@ -418,9 +418,9 @@ SelfTest::SelfTest() break; } if (bRet) - JFW_TRACE2("[Java framework] sunjavaplugin: Testing class SunVersion succeeded."); + JFW_TRACE2("[Java framework] sunjavaplugin: Testing class SunVersion succeeded.\n"); else - OSL_ENSURE(bRet, "[Java framework] sunjavaplugin: SunVersion self test failed"); + OSL_ENSURE(bRet, "[Java framework] sunjavaplugin: SunVersion self test failed.\n"); } #endif diff --git a/jvmfwk/plugins/sunmajor/pluginlib/util.cxx b/jvmfwk/plugins/sunmajor/pluginlib/util.cxx index bd49956c8baf..fc2a5b98215a 100644 --- a/jvmfwk/plugins/sunmajor/pluginlib/util.cxx +++ b/jvmfwk/plugins/sunmajor/pluginlib/util.cxx @@ -450,12 +450,12 @@ bool getJavaProps(const OUString & exePath, rs = stdoutReader.readLine( & aLine); if (rs != FileHandleReader::RESULT_OK) break; - JFW_TRACE2(OString("[Java framework] line:\" ") - + aLine + OString(" \".\n")); +// JFW_TRACE2(OString("[Java framework] line:\" ") +// + aLine + OString(" \".\n")); OUString sLine; if (!decodeOutput(aLine, &sLine)) continue; - JFW_TRACE2(OString("[Java framework] line:\" ") + JFW_TRACE2(OString("[Java framework]:\" ") + OString( CHAR_POINTER(sLine)) + OString(" \".\n")); sLine = sLine.trim(); if (sLine.getLength() == 0) @@ -509,7 +509,7 @@ bool decodeOutput(const rtl::OString& s, rtl::OUString* out) } while (nIndex >= 0); *out = buff.makeStringAndClear(); - JFW_TRACE2(*out); +// JFW_TRACE2(*out); return true; } diff --git a/jvmfwk/source/elements.cxx b/jvmfwk/source/elements.cxx index c4e44f7ac375..a5d8e398947e 100644 --- a/jvmfwk/source/elements.cxx +++ b/jvmfwk/source/elements.cxx @@ -930,6 +930,16 @@ void CNodeJavaInfo::loadFromNode(xmlDoc * pDoc, xmlNode * pJavaInfo) pDoc, cur->children, 1); rtl::OUString sRequire = xmlRequire; nRequirements = sRequire.toInt64(16); +#ifdef MACOSX + //javaldx is not used anymore in the mac build. In case the Java + //corresponding to the saved settings does not exist anymore the + //javavm services will look for an existing Java after creation of + //the JVM failed. See stoc/source/javavm/javavm.cxx. Only if + //nRequirements does not have the flag JFW_REQUIRE_NEEDRESTART the + //jvm of the new selected JRE will be started. Old settings (before + //OOo 3.3) still contain the flag which can be safely ignored. + nRequirements ^= JFW_REQUIRE_NEEDRESTART; +#endif } else if (xmlStrcmp(cur->name, (xmlChar*) "vendorData") == 0) { diff --git a/jvmfwk/source/framework.cxx b/jvmfwk/source/framework.cxx index 1a2ac3b954ef..1194e73402dd 100644 --- a/jvmfwk/source/framework.cxx +++ b/jvmfwk/source/framework.cxx @@ -1114,29 +1114,39 @@ javaFrameworkError SAL_CALL jfw_getJRELocations( javaFrameworkError jfw_existJRE(const JavaInfo *pInfo, sal_Bool *exist) { - javaFrameworkError ret = JFW_E_NONE; - if (!pInfo || !exist) - return JFW_E_INVALID_ARG; - ::rtl::OUString sLocation(pInfo->sLocation); - - if (sLocation.getLength() == 0) - return JFW_E_INVALID_ARG; + //get the function jfw_plugin_existJRE + jfw::VendorSettings aVendorSettings; + jfw::CJavaInfo aInfo; + aInfo = (const ::JavaInfo*) pInfo; //makes a copy of pInfo + rtl::OUString sLibPath = aVendorSettings.getPluginLibrary(aInfo.getVendor()); + osl::Module modulePlugin(sLibPath); + if ( ! modulePlugin) + return JFW_E_NO_PLUGIN; + rtl::OUString sFunctionName( + RTL_CONSTASCII_USTRINGPARAM("jfw_plugin_existJRE")); + jfw_plugin_existJRE_ptr pFunc = + (jfw_plugin_existJRE_ptr) + osl_getFunctionSymbol(modulePlugin, sFunctionName.pData); + if (pFunc == NULL) + return JFW_E_ERROR; + + javaPluginError plerr = (*pFunc)(pInfo, exist); - ::osl::DirectoryItem item; - ::osl::File::RC rc_item = ::osl::DirectoryItem::get(sLocation, item); - if (::osl::File::E_None == rc_item) - { - *exist = sal_True; - } - else if (::osl::File::E_NOENT == rc_item) - { - *exist = sal_False; - } - else + javaFrameworkError ret = JFW_E_NONE; + switch (plerr) { + case JFW_PLUGIN_E_NONE: + ret = JFW_E_NONE; + break; + case JFW_PLUGIN_E_INVALID_ARG: + ret = JFW_E_INVALID_ARG; + break; + case JFW_PLUGIN_E_ERROR: + ret = JFW_E_ERROR; + break; + default: ret = JFW_E_ERROR; } - return ret; } diff --git a/jvmfwk/source/framework.hxx b/jvmfwk/source/framework.hxx index 57e6a262bcd3..163d12e85938 100644 --- a/jvmfwk/source/framework.hxx +++ b/jvmfwk/source/framework.hxx @@ -64,6 +64,10 @@ typedef javaPluginError (*jfw_plugin_startJavaVirtualMachine_ptr)( JavaVM ** ppVM, JNIEnv ** ppEnv); +typedef javaPluginError (*jfw_plugin_existJRE_ptr)( + const JavaInfo *info, + sal_Bool *exist); + namespace jfw { -- cgit v1.2.3 From d726734faf28f6d84f7f97f25b45e46ffd4c53f4 Mon Sep 17 00:00:00 2001 From: Joachim Lingner Date: Wed, 27 Oct 2010 13:53:26 +0200 Subject: jl162 #i115180# fix problems with latest java 1.6.0_22 on MacOS 10.6 --- jvmfwk/source/elements.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/jvmfwk/source/elements.cxx b/jvmfwk/source/elements.cxx index a5d8e398947e..37e5891af32b 100644 --- a/jvmfwk/source/elements.cxx +++ b/jvmfwk/source/elements.cxx @@ -938,7 +938,8 @@ void CNodeJavaInfo::loadFromNode(xmlDoc * pDoc, xmlNode * pJavaInfo) //nRequirements does not have the flag JFW_REQUIRE_NEEDRESTART the //jvm of the new selected JRE will be started. Old settings (before //OOo 3.3) still contain the flag which can be safely ignored. - nRequirements ^= JFW_REQUIRE_NEEDRESTART; + if (nRequirements & JFW_REQUIRE_NEEDRESTART) + nRequirements ^= JFW_REQUIRE_NEEDRESTART; #endif } else if (xmlStrcmp(cur->name, (xmlChar*) "vendorData") == 0) -- cgit v1.2.3 From 3352853a9d6779a40a50ce7ecee6d794a6a5075f Mon Sep 17 00:00:00 2001 From: Joachim Lingner Date: Wed, 27 Oct 2010 14:33:45 +0200 Subject: jl162 #i115180# fix problems with latest java 1.6.0_22 on MacOS 10.6 --- jvmfwk/source/elements.cxx | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/jvmfwk/source/elements.cxx b/jvmfwk/source/elements.cxx index 37e5891af32b..9674c28d54df 100644 --- a/jvmfwk/source/elements.cxx +++ b/jvmfwk/source/elements.cxx @@ -938,8 +938,7 @@ void CNodeJavaInfo::loadFromNode(xmlDoc * pDoc, xmlNode * pJavaInfo) //nRequirements does not have the flag JFW_REQUIRE_NEEDRESTART the //jvm of the new selected JRE will be started. Old settings (before //OOo 3.3) still contain the flag which can be safely ignored. - if (nRequirements & JFW_REQUIRE_NEEDRESTART) - nRequirements ^= JFW_REQUIRE_NEEDRESTART; + nRequirements &= ~JFW_REQUIRE_NEEDRESTART; #endif } else if (xmlStrcmp(cur->name, (xmlChar*) "vendorData") == 0) -- cgit v1.2.3 From beb032bc52ad5fe35db63493ec3a553f45951443 Mon Sep 17 00:00:00 2001 From: Niklas Nebel Date: Wed, 27 Oct 2010 17:08:35 +0200 Subject: calc61: #i115266# handle multiple selection for printing, return valid settings for invalid selection, catch exception from getRenderer --- sfx2/source/view/viewprn.cxx | 32 +++++++++++++++++++++++--------- 1 file changed, 23 insertions(+), 9 deletions(-) diff --git a/sfx2/source/view/viewprn.cxx b/sfx2/source/view/viewprn.cxx index 4ed0173be8e1..72a85258e9c3 100644 --- a/sfx2/source/view/viewprn.cxx +++ b/sfx2/source/view/viewprn.cxx @@ -143,18 +143,26 @@ SfxPrinterController::SfxPrinterController( const Any& i_rComplete, aRenderOptions[1].Value = i_rViewProp; aRenderOptions[2].Name = rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "IsPrinter" ) ); aRenderOptions[2].Value <<= sal_True; - Sequence< beans::PropertyValue > aRenderParms( mxRenderable->getRenderer( 0 , getSelectionObject(), aRenderOptions ) ); - int nProps = aRenderParms.getLength(); - for( int i = 0; i < nProps; i++ ) + try { - if( aRenderParms[i].Name.equalsAscii( "ExtraPrintUIOptions" ) ) + Sequence< beans::PropertyValue > aRenderParms( mxRenderable->getRenderer( 0 , getSelectionObject(), aRenderOptions ) ); + int nProps = aRenderParms.getLength(); + for( int i = 0; i < nProps; i++ ) { - Sequence< beans::PropertyValue > aUIProps; - aRenderParms[i].Value >>= aUIProps; - setUIOptions( aUIProps ); - break; + if( aRenderParms[i].Name.equalsAscii( "ExtraPrintUIOptions" ) ) + { + Sequence< beans::PropertyValue > aUIProps; + aRenderParms[i].Value >>= aUIProps; + setUIOptions( aUIProps ); + break; + } } } + catch( lang::IllegalArgumentException& ) + { + // the first renderer should always be available for the UI options, + // but catch the exception to be safe + } } // set some job parameters @@ -234,7 +242,13 @@ Sequence< beans::PropertyValue > SfxPrinterController::getPageParameters( int i_ if( mxRenderable.is() && pPrinter ) { Sequence< beans::PropertyValue > aJobOptions( getMergedOptions() ); - aResult = mxRenderable->getRenderer( i_nPage, getSelectionObject(), aJobOptions ); + try + { + aResult = mxRenderable->getRenderer( i_nPage, getSelectionObject(), aJobOptions ); + } + catch( lang::IllegalArgumentException& ) + { + } } return aResult; } -- cgit v1.2.3 From 2b0596f11bbd306efb30e20aadcab561279ec348 Mon Sep 17 00:00:00 2001 From: Niklas Nebel Date: Wed, 27 Oct 2010 17:08:35 +0200 Subject: calc61: #i115266# handle multiple selection for printing, return valid settings for invalid selection, catch exception from getRenderer --- sc/source/ui/unoobj/docuno.cxx | 26 +++++++++++++++++++------- sc/source/ui/view/pfuncache.cxx | 2 ++ 2 files changed, 21 insertions(+), 7 deletions(-) diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx index 3d3f0f479601..c92525b8ca57 100644 --- a/sc/source/ui/unoobj/docuno.cxx +++ b/sc/source/ui/unoobj/docuno.cxx @@ -815,6 +815,16 @@ BOOL ScModelObj::FillRenderMarkData( const uno::Any& aSelection, rMark.MarkFromRangeList( rRanges, FALSE ); rMark.MarkToSimple(); + if ( rMark.IsMultiMarked() ) + { + // #i115266# copy behavior of old printing: + // treat multiple selection like a single selection with the enclosing range + ScRange aMultiMarkArea; + rMark.GetMultiMarkArea( aMultiMarkArea ); + rMark.ResetMark(); + rMark.SetMarkArea( aMultiMarkArea ); + } + if ( rMark.IsMarked() && !rMark.IsMultiMarked() ) { // a sheet object is treated like an empty selection: print the used area of the sheet @@ -974,15 +984,17 @@ uno::Sequence SAL_CALL ScModelObj::getRenderer( sal_Int32 ScMarkData aMark; ScPrintSelectionStatus aStatus; String aPagesStr; - if ( !FillRenderMarkData( aSelection, rOptions, aMark, aStatus, aPagesStr ) ) - throw lang::IllegalArgumentException(); - - if ( !pPrintFuncCache || !pPrintFuncCache->IsSameSelection( aStatus ) ) + // #i115266# if FillRenderMarkData fails, keep nTotalPages at 0, but still handle getRenderer(0) below + long nTotalPages = 0; + if ( FillRenderMarkData( aSelection, rOptions, aMark, aStatus, aPagesStr ) ) { - delete pPrintFuncCache; - pPrintFuncCache = new ScPrintFuncCache( pDocShell, aMark, aStatus ); + if ( !pPrintFuncCache || !pPrintFuncCache->IsSameSelection( aStatus ) ) + { + delete pPrintFuncCache; + pPrintFuncCache = new ScPrintFuncCache( pDocShell, aMark, aStatus ); + } + nTotalPages = pPrintFuncCache->GetPageCount(); } - long nTotalPages = pPrintFuncCache->GetPageCount(); sal_Int32 nRenderer = lcl_GetRendererNum( nSelRenderer, aPagesStr, nTotalPages ); if ( nRenderer >= nTotalPages ) { diff --git a/sc/source/ui/view/pfuncache.cxx b/sc/source/ui/view/pfuncache.cxx index 6a206ef3eb13..b503d3a73fb7 100644 --- a/sc/source/ui/view/pfuncache.cxx +++ b/sc/source/ui/view/pfuncache.cxx @@ -72,6 +72,8 @@ ScPrintFuncCache::ScPrintFuncCache( ScDocShell* pD, const ScMarkData& rMark, long nThisTab = 0; if ( rMark.GetTableSelect( nTab ) ) { + pDoc->InvalidatePageBreaks( nTab ); // user print area (selection) may be different + ScPrintFunc aFunc( pDocSh, pPrinter, nTab, nAttrPage, 0, pSelRange, &aSelection.GetOptions() ); nThisTab = aFunc.GetTotalPages(); nFirstAttr[nTab] = aFunc.GetFirstPageNo(); // from page style or previous sheet -- cgit v1.2.3 From 85838ac5f58252083a32fd3f53dfc5c040ad0c47 Mon Sep 17 00:00:00 2001 From: Release Engineering Date: Thu, 28 Oct 2010 11:30:42 +0200 Subject: OOO330 --- solenv/inc/minor.mk | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/solenv/inc/minor.mk b/solenv/inc/minor.mk index 77732aca8548..6992bb5ac6e1 100644 --- a/solenv/inc/minor.mk +++ b/solenv/inc/minor.mk @@ -1,5 +1,5 @@ RSCVERSION=330 -RSCREVISION=330m12(Build:9537) -BUILD=9537 -LAST_MINOR=m12 +RSCREVISION=330m13(Build:9539) +BUILD=9539 +LAST_MINOR=m13 SOURCEVERSION=OOO330 -- cgit v1.2.3 From 182919b440b963137a4e7e6b0716782031846a84 Mon Sep 17 00:00:00 2001 From: obo Date: Thu, 28 Oct 2010 11:43:39 +0200 Subject: masterfix OOO330: #i10000# BrOffice removed --- instsetoo_native/util/pack.lst | 4 ---- 1 file changed, 4 deletions(-) diff --git a/instsetoo_native/util/pack.lst b/instsetoo_native/util/pack.lst index 28898c38b988..3dd3268137d0 100644 --- a/instsetoo_native/util/pack.lst +++ b/instsetoo_native/util/pack.lst @@ -9,16 +9,12 @@ OpenOffice unxlngi6.pro,unxmacxi.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxlngx6.pro en-US|ar|bg|bn|ca|ca-XV|cs|da|de|el|en-GB|es|et|eu|fi|fr|ga|gl|he|hu|it|ja|km|ko|lt|mk|nb|nl|om|pl|pt|pt-BR|ru|sh|sl|sr|sv|tr|vi|zh-CN|zh-TW openoffice #OpenOffice unxlngi6,unxmacxi,unxsoli4,unxsols4,wntmsci12 en-US openoffice -BrOffice unxlngi6.pro,unxmacxi.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxlngx6.pro pt-BR broffice OpenOffice_wJRE unxlngi6.pro,unxmacxi.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxlngx6.pro en-US|ar|bg|bn|ca|ca-XV|cs|da|de|el|en-GB|es|et|eu|fi|fr|ga|gl|he|hu|it|ja|km|ko|lt|mk|nb|nl|om|pl|pt|pt-BR|ru|sh|sl|sr|sv|tr|vi|zh-CN|zh-TW openofficewithjre -BrOffice_wJRE unxlngi6.pro,unxmacxi.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxlngx6.pro pt-BR brofficewithjre #OpenOffice_Dev unxlngi6.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxmacxi.pro,unxlngx6.pro en-US openofficedev -#BrOffice_Dev pt-BR brofficedev OpenOffice_SDK unxlngi6.pro,unxmacxi.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxlngx6.pro en-US sdkoo #OpenOffice_Dev_SDK unxlngi6.pro,unxmacxi.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxlngx6.pro en-US sdkoodev #URE unxlngi6.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxlngi6,unxsoli4,unxsols4,wntmsci12 en-US ure OpenOfficeLanguagepack unxlngi6.pro,unxmacxi.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxlngx6.pro en-US|ar|as|ast|be-BY|bg|bn|ca|ca-XV|cs|da|de|dz|el|en-GB|eo|es|et|eu|fi|fr|ga|gl|gu|he|hi|hu|id|is|it|ja|ka|km|kn|ko|ku|lt|lv|mk|ml|mr|my|nb|nl|nn|oc|om|or|pa-IN|pl|pt|pt-BR|ro|ru|sh|si|sk|sl|sr|sv|ta|te|th|tr|ug|uk|uz|vi|zh-CN|zh-TW ooolanguagepack #OpenOfficeLanguagepack unxlngi6,unxsoli4,unxsols4,wntmsci12,unxmacxi de ooolanguagepack #OpenOfficeDevLanguagepack unxlngi6.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxlngx6.pro,unxmacxi.pro ar|as|ast|bg|bn|ca|ca-XV|cs|da|de|dz|el|en-GB|es|et|eu|fi|fr|ga|gl|gu|he|hi|hu|id|is|it|ja|km|kn|ko|lt|lv|mk|ml|mr|my|nb|nl|nn|oc|om|or|pa-IN|pl|pt|pt-BR|ru|sh|si|sk|sl|sr|sv|ta|te|th|tr|ug|uk|vi|zh-CN|zh-TW ooodevlanguagepack -#BrOfficeLanguagepack unxlngi6.pro,unxsoli4.pro,unxsols4.pro,wntmsci12.pro,unxlngx6.pro pt-BR broolanguagepack -- cgit v1.2.3 From c5be81d613d729542a4dfda7680d9ce9a4beb6ee Mon Sep 17 00:00:00 2001 From: Ruediger Timm Date: Thu, 28 Oct 2010 17:11:15 +0200 Subject: masterfix OOO330: #i10000# Update list of default base addresses for windows rebase process. --- postprocess/rebase/coffbase.txt | 68 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 60 insertions(+), 8 deletions(-) diff --git a/postprocess/rebase/coffbase.txt b/postprocess/rebase/coffbase.txt index 9098ab2810cf..16be8531d383 100755 --- a/postprocess/rebase/coffbase.txt +++ b/postprocess/rebase/coffbase.txt @@ -47,7 +47,7 @@ cli_uno.dll 0x0000000065c20000 0x00030000 collator_data.dll 0x0000000065aa0000 0x00170000 communimi.dll 0x0000000065a80000 0x00010000 comphelp4msc.dll 0x0000000065980000 0x000f0000 -configmgr2.uno.dll 0x0000000065800000 0x00170000 +configmgr.uno.dll 0x000000005adb0000 0x00070000 connector.uno.dll 0x00000000657e0000 0x00010000 cppcanvasmi.dll 0x0000000065780000 0x00050000 cppu3.dll 0x0000000065740000 0x00030000 @@ -126,11 +126,11 @@ i18nsearch.uno.dll 0x0000000063570000 0x00010000 i18nutilmsc.dll 0x0000000063540000 0x00020000 icdmi.dll 0x0000000063520000 0x00010000 icgmi.dll 0x00000000634f0000 0x00020000 -icudt36l.dll 0x0000000062b00000 0x009c0000 -icuin36.dll 0x0000000062a20000 0x000d0000 -icule36.dll 0x00000000629d0000 0x00040000 -icutu36.dll 0x00000000629a0000 0x00020000 -icuuc36.dll 0x00000000628b0000 0x000e0000 +icudt40.dll 0x0000000059bb0000 0x00d50000 +icuin40.dll 0x0000000059a90000 0x00110000 +icule40.dll 0x0000000059a40000 0x00040000 +icutu40.dll 0x0000000059a10000 0x00020000 +icuuc40.dll 0x0000000059910000 0x000f0000 idxmi.dll 0x0000000062880000 0x00020000 imemi.dll 0x0000000062860000 0x00010000 index_data.dll 0x00000000627c0000 0x00090000 @@ -180,8 +180,8 @@ localedata_others.dll 0x0000000061aa0000 0x000b0000 logmi.dll 0x0000000061a70000 0x00020000 lpsolve55.dll 0x0000000061970000 0x00070000 mcnttype.dll 0x0000000061950000 0x00010000 -mozab2.dll 0x0000000061900000 0x00020000 -mozabdrv2.dll 0x0000000061880000 0x00070000 +mozabmi.dll 0x00000000597a0000 0x00020000 +mozabdrvmi.dll 0x00000000597d0000 0x00070000 msci_uno.dll 0x0000000061860000 0x00010000 mysql2.dll 0x0000000061820000 0x00030000 namingservice.uno.dll 0x0000000061800000 0x00010000 @@ -348,3 +348,55 @@ npsoplugin.dll 0x000000005b0b0000 0x00010000 migrationoo2.uno.dll 0x000000005b080000 0x00020000 inprocserv.dll 0x000000005b060000 0x00010000 lngmi.dll 0x000000005af50000 0x00100000 +adomi.dll 0x000000005aea0000 0x00080000 +cppunit_dll.dll 0x000000005ad60000 0x00040000 +drawinglayermi.dll 0x000000005ac00000 0x00100000 +editengmi.dll 0x000000005aa80000 0x00170000 +formi.dll 0x000000005aa30000 0x00020000 +foruimi.dll 0x000000005a9f0000 0x00030000 +freebl3.dll 0x000000005a9a0000 0x00040000 +hsqldb.dll 0x000000005a950000 0x00040000 +i18npapermi.dll 0x000000005a930000 0x00010000 +jdbcmi.dll 0x00000000598b0000 0x00050000 +jpipx.dll 0x0000000059890000 0x00010000 +log_uno_uno.dll 0x0000000059870000 0x00010000 +migrationoo3.uno.dll 0x0000000059850000 0x00010000 +msfiltermi.dll 0x00000000596e0000 0x000b0000 +msformsmi.uno.dll 0x0000000059680000 0x00050000 +mswordmi.dll 0x0000000059560000 0x00110000 +mysqlcppconn.dll 0x00000000594c0000 0x00090000 +mysqlmi.dll 0x0000000059480000 0x00030000 +neon.dll 0x0000000059450000 0x00020000 +nspr4.dll 0x0000000059410000 0x00030000 +nss3.dll 0x0000000059330000 0x000d0000 +nssckbi.dll 0x00000000592c0000 0x00060000 +nssdbm3.dll 0x0000000059290000 0x00020000 +nssutil3.dll 0x0000000059260000 0x00020000 +odbcbasemi.dll 0x00000000591f0000 0x00060000 +odbcmi.dll 0x00000000591d0000 0x00010000 +ooofilt_x64.dll 0x0000000059130000 0x00090000 +oooimprovementmi.dll 0x0000000059100000 0x00020000 +plc4.dll 0x00000000590e0000 0x00010000 +plds4.dll 0x00000000590c0000 0x00010000 +propertyhdl.dll 0x0000000059070000 0x00040000 +propertyhdl_x64.dll 0x0000000058fe0000 0x00080000 +python26.dll 0x0000000058da0000 0x00230000 +rebase.dll 0x0000000058d50000 0x00040000 +reg64msi.dll 0x0000000058cc0000 0x00030000 +scfiltmi.dll 0x0000000058aa0000 0x001c0000 +sdfiltmi.dll 0x0000000058a20000 0x00070000 +shlxthdl_x64.dll 0x0000000058940000 0x000d0000 +smime3.dll 0x0000000058910000 0x00020000 +so_activex_x64.dll 0x00000000588c0000 0x00040000 +softokn3.dll 0x0000000058880000 0x00030000 +sqlite3.dll 0x00000000587c0000 0x00070000 +ssl3.dll 0x0000000058780000 0x00030000 +svxcoremi.dll 0x0000000058230000 0x00540000 +test.dll 0x0000000058120000 0x00010000 +test_converter.dll 0x0000000058100000 0x00010000 +ucpext.uno.dll 0x00000000580d0000 0x00020000 +ucpmyucp1.uno.dll 0x00000000580a0000 0x00020000 +vbaeventsmi.uno.dll 0x0000000058070000 0x00020000 +vbahelpermi.dll 0x0000000057fc0000 0x000a0000 +vbaswobjmi.uno.dll 0x0000000057ef0000 0x000c0000 +wpftmi.dll 0x0000000057e50000 0x00060000 -- cgit v1.2.3