diff options
author | Xiaofei Zhang <Zhangxiaofei@openoffice.org> | 2010-11-10 13:50:33 +0800 |
---|---|---|
committer | Xiaofei Zhang <Zhangxiaofei@openoffice.org> | 2010-11-10 13:50:33 +0800 |
commit | 3491b4ac4fe34cacea5f4d0a4594d4a88cbbe7b2 (patch) | |
tree | 8dc60b794b88dd87c965d149c93fa3ac81e3096c /tools/source | |
parent | 66e7dc1197e76e686ba731382d032a9a72849959 (diff) | |
parent | 95f71183414a50d12cd4bbacf47d711672e63268 (diff) |
removetooltypes01: #i112600# resync to DEV300_m92; remove tooltypes from xmloff, linguistic, vcl, svtools, accessibility, fpicker, uui and framework
Diffstat (limited to 'tools/source')
-rwxr-xr-x | tools/source/fsys/dirent.cxx | 10 | ||||
-rwxr-xr-x | tools/source/fsys/fstat.cxx | 5 | ||||
-rw-r--r-- | tools/source/fsys/urlobj.cxx | 9 | ||||
-rw-r--r-- | tools/source/generic/color.cxx | 4 | ||||
-rw-r--r-- | tools/source/generic/makefile.mk | 3 | ||||
-rw-r--r-- | tools/source/generic/poly.cxx | 5 | ||||
-rw-r--r-- | tools/source/generic/svlibrary.cxx | 129 | ||||
-rw-r--r-- | tools/source/misc/extendapplicationenvironment.cxx | 19 | ||||
-rw-r--r-- | tools/source/rc/resmgr.cxx | 214 | ||||
-rw-r--r-- | tools/source/solar/makefile.mk | 63 | ||||
-rw-r--r-- | tools/source/solar/solar.c | 562 | ||||
-rw-r--r-- | tools/source/stream/strmos2.cxx | 106 | ||||
-rw-r--r-- | tools/source/stream/strmunx.cxx | 6 | ||||
-rw-r--r-- | tools/source/string/strucvt.cxx | 2 | ||||
-rw-r--r-- | tools/source/testtoolloader/testtoolloader.cxx | 8 |
15 files changed, 294 insertions, 851 deletions
diff --git a/tools/source/fsys/dirent.cxx b/tools/source/fsys/dirent.cxx index b38d510322ac..a7219aa73f85 100755 --- a/tools/source/fsys/dirent.cxx +++ b/tools/source/fsys/dirent.cxx @@ -136,13 +136,13 @@ sal_Bool bInRedirection = sal_True; #else sal_Bool bInRedirection = sal_False; #endif -static NAMESPACE_VOS( OMutex )* pRedirectMutex = 0; +static vos:: OMutex * pRedirectMutex = 0; //------------------------------------------------------------------------ void FSysRedirector::Register( FSysRedirector *pRedirector ) { if ( pRedirector ) - pRedirectMutex = new NAMESPACE_VOS( OMutex ); + pRedirectMutex = new vos:: OMutex ; else DELETEZ( pRedirectMutex ); _pRedirector = pRedirector; @@ -165,7 +165,7 @@ void FSysRedirector::DoRedirect( String &rPath ) // Redirection is acessible only by one thread per time // dont move the guard behind the bInRedirection check!!! // think of nested calls (when called from callback) - NAMESPACE_VOS( OGuard ) aGuard( pRedirectMutex ); + vos:: OGuard aGuard( pRedirectMutex ); // if already in redirection, dont redirect if ( bInRedirection ) @@ -1040,8 +1040,8 @@ DirEntry* DirEntry::ImpChangeParent( DirEntry* pNewParent, sal_Bool bNormalize ) sal_Bool DirEntry::Exists( FSysAccess nAccess ) const { #ifndef BOOTSTRAP - static NAMESPACE_VOS(OMutex) aLocalMutex; - NAMESPACE_VOS(OGuard) aGuard( aLocalMutex ); + static vos::OMutex aLocalMutex; + vos::OGuard aGuard( aLocalMutex ); #endif if ( !IsValid() ) return sal_False; diff --git a/tools/source/fsys/fstat.cxx b/tools/source/fsys/fstat.cxx index 8949ada7a612..17995b9f7983 100755 --- a/tools/source/fsys/fstat.cxx +++ b/tools/source/fsys/fstat.cxx @@ -28,11 +28,6 @@ // MARKER(update_precomp.py): autogen include statement, do not remove #include "precompiled_tools.hxx" -#if defined( WIN) -#include <stdio.h> -#include <dos.h> -#endif - #ifdef UNX #include <errno.h> #endif diff --git a/tools/source/fsys/urlobj.cxx b/tools/source/fsys/urlobj.cxx index a6d7bc6fd04e..56e6b8ef47cc 100644 --- a/tools/source/fsys/urlobj.cxx +++ b/tools/source/fsys/urlobj.cxx @@ -424,7 +424,9 @@ static INetURLObject::SchemeInfo const aSchemeInfoMap[INET_PROT_END] false, false, false, true, false }, { "", "", 0, false, false, false, false, true, true, true, false }, { "smb", "smb://", 139, true, true, false, true, true, true, true, - true } }; + true }, + { "hid", "hid:", 0, false, false, false, false, false, false, + false, true } }; // static inline INetURLObject::SchemeInfo const & @@ -2094,6 +2096,8 @@ INetURLObject::getPrefix(sal_Unicode const *& rBegin, { "db:", "staroffice.db:", INET_PROT_DB, PrefixInfo::INTERNAL }, { "file:", 0, INET_PROT_FILE, PrefixInfo::OFFICIAL }, { "ftp:", 0, INET_PROT_FTP, PrefixInfo::OFFICIAL }, + { "hid:", "staroffice.hid:", INET_PROT_HID, + PrefixInfo::INTERNAL }, { "http:", 0, INET_PROT_HTTP, PrefixInfo::OFFICIAL }, { "https:", 0, INET_PROT_HTTPS, PrefixInfo::OFFICIAL }, { "imap:", 0, INET_PROT_IMAP, PrefixInfo::OFFICIAL }, @@ -2129,6 +2133,8 @@ INetURLObject::getPrefix(sal_Unicode const *& rBegin, INET_PROT_PRIV_SOFFICE, PrefixInfo::EXTERNAL }, { "staroffice.helpid:", "private:helpid/", INET_PROT_PRIV_SOFFICE, PrefixInfo::EXTERNAL }, + { "staroffice.hid:", "hid:", INET_PROT_HID, + PrefixInfo::EXTERNAL }, { "staroffice.java:", "private:java/", INET_PROT_PRIV_SOFFICE, PrefixInfo::EXTERNAL }, { "staroffice.macro:", "macro:", INET_PROT_MACRO, @@ -3120,6 +3126,7 @@ bool INetURLObject::parsePath(INetProtocol eScheme, case INET_PROT_PRIV_SOFFICE: case INET_PROT_SLOT: + case INET_PROT_HID: case INET_PROT_MACRO: case INET_PROT_UNO: case INET_PROT_COMPONENT: diff --git a/tools/source/generic/color.cxx b/tools/source/generic/color.cxx index 8f62cc82b156..ec325b9ca3d3 100644 --- a/tools/source/generic/color.cxx +++ b/tools/source/generic/color.cxx @@ -244,8 +244,8 @@ ColorData Color::HSBtoRGB( sal_uInt16 nHue, sal_uInt16 nSat, sal_uInt16 nBri ) f = dH - n; sal_uInt8 a = (sal_uInt8) ( nB * ( 100 - nSat ) / 100 ); - sal_uInt8 b = (sal_uInt8) ( nB * ( 100 - ( (double)nSat * f + 0.5 ) ) / 100 ); - sal_uInt8 c = (sal_uInt8) ( nB * ( 100 - ( (double)nSat * ( 1.0 - f ) + 0.5 ) ) / 100 ); + sal_uInt8 b = (sal_uInt8) ( nB * ( 100 - ( (double)nSat * f ) ) / 100 ); + sal_uInt8 c = (sal_uInt8) ( nB * ( 100 - ( (double)nSat * ( 1.0 - f ) ) ) / 100 ); switch( n ) { diff --git a/tools/source/generic/makefile.mk b/tools/source/generic/makefile.mk index 5cdaa02065ae..07bab82f32b0 100644 --- a/tools/source/generic/makefile.mk +++ b/tools/source/generic/makefile.mk @@ -37,9 +37,10 @@ TARGET=gen # --- Files -------------------------------------------------------- -EXCEPTIONSFILES = $(SLO)$/poly.obj $(OBJ)$/poly.obj +EXCEPTIONSFILES = $(SLO)$/poly.obj $(OBJ)$/poly.obj $(SLO)$/svlibrary.obj SLOFILES= $(SLO)$/toolsin.obj \ + $(SLO)$/svlibrary.obj \ $(SLO)$/b3dtrans.obj \ $(SLO)$/link.obj \ $(SLO)$/bigint.obj \ diff --git a/tools/source/generic/poly.cxx b/tools/source/generic/poly.cxx index 75124ab9a59b..73e89c73900f 100644 --- a/tools/source/generic/poly.cxx +++ b/tools/source/generic/poly.cxx @@ -243,6 +243,11 @@ void ImplPolygon::ImplSetSize( sal_uInt16 nNewSize, sal_Bool bResize ) void ImplPolygon::ImplSplit( sal_uInt16 nPos, sal_uInt16 nSpace, ImplPolygon* pInitPoly ) { const sal_uIntPtr nSpaceSize = nSpace * sizeof( Point ); + + //Can't fit this in :-(, throw ? + if (mnPoints + nSpace > USHRT_MAX) + return; + const sal_uInt16 nNewSize = mnPoints + nSpace; if( nPos >= mnPoints ) diff --git a/tools/source/generic/svlibrary.cxx b/tools/source/generic/svlibrary.cxx new file mode 100644 index 000000000000..6ebfd0086b5c --- /dev/null +++ b/tools/source/generic/svlibrary.cxx @@ -0,0 +1,129 @@ +/*************************************************************************
+ *
+ * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+ *
+ * Copyright 2000, 2010 Oracle and/or its affiliates.
+ *
+ * OpenOffice.org - a multi-platform office productivity suite
+ *
+ * This file is part of OpenOffice.org.
+ *
+ * OpenOffice.org is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License version 3
+ * only, as published by the Free Software Foundation.
+ *
+ * OpenOffice.org is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License version 3 for more details
+ * (a copy is included in the LICENSE file that accompanied this code).
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * version 3 along with OpenOffice.org. If not, see
+ * <http://www.openoffice.org/license.html>
+ * for a copy of the LGPLv3 License.
+ *
+ ************************************************************************/
+
+// MARKER(update_precomp.py): autogen include statement, do not remove
+#include "precompiled_tools.hxx"
+
+#include <tools/svlibrary.hxx>
+#include <com/sun/star/uno/Sequence.hxx>
+#include <com/sun/star/uno/Reference.hxx>
+#include <com/sun/star/uno/XComponentContext.hpp>
+#include <com/sun/star/util/XMacroExpander.hpp>
+#include <com/sun/star/lang/XMultiServiceFactory.hpp>
+#include <com/sun/star/beans/XPropertySet.hpp>
+#include <comphelper/processfactory.hxx>
+#include <tools/string.hxx>
+#include <rtl/uri.hxx>
+
+using namespace com::sun::star;
+
+static uno::Sequence< rtl::OUString > GetMultiPaths_Impl()
+{
+ uno::Sequence< rtl::OUString > aRes;
+ uno::Sequence< rtl::OUString > aInternalPaths;
+ uno::Sequence< rtl::OUString > aUserPaths;
+
+ bool bSuccess = true;
+ uno::Reference< lang::XMultiServiceFactory > xMgr( comphelper::getProcessServiceFactory() );
+ if (xMgr.is())
+ {
+ try
+ {
+ String aInternal;
+ aInternal.AppendAscii("Libraries");
+ String aUser;
+ aUser.AppendAscii("Libraries");
+ aInternal .AppendAscii( "_internal" );
+ aUser .AppendAscii( "_user" );
+
+ uno::Reference< beans::XPropertySet > xPathSettings( xMgr->createInstance(
+ rtl::OUString::createFromAscii( "com.sun.star.util.PathSettings" ) ), uno::UNO_QUERY_THROW );
+ xPathSettings->getPropertyValue( aInternal ) >>= aInternalPaths;
+ xPathSettings->getPropertyValue( aUser ) >>= aUserPaths;
+ }
+ catch (uno::Exception &)
+ {
+ bSuccess = false;
+ }
+ }
+ if (bSuccess)
+ {
+ sal_Int32 nMaxEntries = aInternalPaths.getLength() + aUserPaths.getLength();
+ aRes.realloc( nMaxEntries );
+ rtl::OUString *pRes = aRes.getArray();
+ sal_Int32 nCount = 0; // number of actually added entries
+ for (int i = 0; i < 2; ++i)
+ {
+ const uno::Sequence< rtl::OUString > &rPathSeq = i == 0 ? aUserPaths : aInternalPaths;
+ const rtl::OUString *pPathSeq = rPathSeq.getConstArray();
+ for (sal_Int32 k = 0; k < rPathSeq.getLength(); ++k)
+ {
+ const bool bAddUser = (&rPathSeq == &aUserPaths);
+ const bool bAddInternal = (&rPathSeq == &aInternalPaths);
+ if ((bAddUser || bAddInternal) && pPathSeq[k].getLength() > 0)
+ pRes[ nCount++ ] = pPathSeq[k];
+ }
+ }
+ aRes.realloc( nCount );
+ }
+
+ return aRes;
+}
+
+bool SvLibrary::LoadModule( osl::Module& rModule, const rtl::OUString& rLibName, ::oslGenericFunction baseModule, ::sal_Int32 mode )
+{
+ static uno::Sequence < rtl::OUString > aPaths = GetMultiPaths_Impl();
+ bool bLoaded = false;
+
+ for (sal_Int32 n=0; n<aPaths.getLength(); n++)
+ {
+ rtl::OUString aMod = aPaths[n];
+ if ( aPaths[n].indexOfAsciiL("vnd.sun.star.expand",19) == 0)
+ {
+ uno::Reference< uno::XComponentContext > xComponentContext = comphelper::getProcessComponentContext();
+ uno::Reference< util::XMacroExpander > xMacroExpander;
+ xComponentContext->getValueByName(
+ ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("/singletons/com.sun.star.util.theMacroExpander") ) )
+ >>= xMacroExpander;
+
+ aMod = aMod.copy( sizeof("vnd.sun.star.expand:") -1 );
+ aMod = ::rtl::Uri::decode( aMod, rtl_UriDecodeWithCharset, RTL_TEXTENCODING_UTF8 );
+ aMod = xMacroExpander->expandMacros( aMod );
+ }
+
+ aMod += ::rtl::OUString( sal_Unicode('/') );
+ aMod += rLibName;
+ bLoaded = rModule.load( aMod, mode );
+ if ( bLoaded )
+ break;
+ }
+
+ if (!bLoaded )
+ bLoaded = rModule.loadRelative( baseModule, rLibName, mode );
+
+ return bLoaded;
+}
diff --git a/tools/source/misc/extendapplicationenvironment.cxx b/tools/source/misc/extendapplicationenvironment.cxx index fe76e5329cbb..440f5a5cb207 100644 --- a/tools/source/misc/extendapplicationenvironment.cxx +++ b/tools/source/misc/extendapplicationenvironment.cxx @@ -29,8 +29,6 @@ #include "sal/config.h" #include <stdlib.h> - // not <cstdlib> as putenv is POSIX-only; setenv instead of putenv would be - // better but is not supported by Solaris 9 and earlier #if defined UNX #include <sys/resource.h> @@ -63,10 +61,9 @@ void extendApplicationEnvironment() { // Make sure URE_BOOTSTRAP environment variable is set (failure is fatal): rtl::OUStringBuffer env; - env.appendAscii(RTL_CONSTASCII_STRINGPARAM("URE_BOOTSTRAP=")); + rtl::OUString envVar(RTL_CONSTASCII_USTRINGPARAM("URE_BOOTSTRAP")); rtl::OUString uri; - if (rtl::Bootstrap::get( - rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("URE_BOOTSTRAP")), uri)) + if (rtl::Bootstrap::get(envVar, uri)) { if (!uri.matchIgnoreAsciiCaseAsciiL( RTL_CONSTASCII_STRINGPARAM("vnd.sun.star.pathname:"))) @@ -86,16 +83,8 @@ void extendApplicationEnvironment() { env.appendAscii( RTL_CONSTASCII_STRINGPARAM(SAL_CONFIGFILE("fundamental"))); } - rtl::OString s; - if (!env.makeStringAndClear().convertToString( - &s, osl_getThreadTextEncoding(), - RTL_UNICODETOTEXT_FLAGS_UNDEFINED_ERROR - | RTL_UNICODETOTEXT_FLAGS_INVALID_ERROR)) - { - abort(); - } - rtl_string_acquire(s.pData); // argument to putenv must leak - if (putenv(const_cast< char * >(s.getStr())) != 0) { + rtl::OUString envValue(env.makeStringAndClear()); + if (osl_setEnvironment(envVar.pData, envValue.pData) != osl_Process_E_None) { abort(); } } diff --git a/tools/source/rc/resmgr.cxx b/tools/source/rc/resmgr.cxx index ff9f016c9aea..4ddb753a0df3 100644 --- a/tools/source/rc/resmgr.cxx +++ b/tools/source/rc/resmgr.cxx @@ -46,6 +46,7 @@ #include <osl/file.hxx> #include <osl/mutex.hxx> #include <rtl/ustrbuf.hxx> +#include <rtl/strbuf.hxx> #include <tools/urlobj.hxx> #include <rtl/instance.hxx> #include <rtl/bootstrap.hxx> @@ -837,18 +838,18 @@ void ResMgr::RscError_Impl( const sal_Char* pMessage, ResMgr* pResMgr, static void RscException_Impl() { - switch ( NAMESPACE_VOS(OSignalHandler)::raise( OSL_SIGNAL_USER_RESOURCEFAILURE, (void*)"" ) ) + switch ( vos::OSignalHandler::raise( OSL_SIGNAL_USER_RESOURCEFAILURE, (void*)"" ) ) { - case NAMESPACE_VOS(OSignalHandler)::TAction_CallNextHandler: + case vos::OSignalHandler::TAction_CallNextHandler: abort(); - case NAMESPACE_VOS(OSignalHandler)::TAction_Ignore: + case vos::OSignalHandler::TAction_Ignore: return; - case NAMESPACE_VOS(OSignalHandler)::TAction_AbortApplication: + case vos::OSignalHandler::TAction_AbortApplication: abort(); - case NAMESPACE_VOS(OSignalHandler)::TAction_KillApplication: + case vos::OSignalHandler::TAction_KillApplication: exit(-1); } } @@ -1351,7 +1352,8 @@ sal_uInt64 ResMgr::GetUInt64( void* pDatum ) // ----------------------------------------------------------------------- sal_uInt32 ResMgr::GetStringWithoutHook( UniString& rStr, const sal_uInt8* pStr ) { - sal_uInt32 nRet = GetStringSize( pStr ); + sal_uInt32 nLen=0; + sal_uInt32 nRet = GetStringSize( pStr, nLen ); UniString aString( (sal_Char*)pStr, RTL_TEXTENCODING_UTF8, RTL_TEXTTOUNICODE_FLAGS_UNDEFINED_MAPTOPRIVATE | RTL_TEXTTOUNICODE_FLAGS_MBUNDEFINED_DEFAULT | @@ -1370,11 +1372,20 @@ sal_uInt32 ResMgr::GetString( UniString& rStr, const sal_uInt8* pStr ) return nRet; } +sal_uInt32 ResMgr::GetByteString( rtl::OString& rStr, const sal_uInt8* pStr ) +{ + sal_uInt32 nLen=0; + sal_uInt32 nRet = GetStringSize( pStr, nLen ); + rStr = rtl::OString( (const sal_Char*)pStr, nLen ); + return nRet; +} + // ------------------------------------------------------------------ -sal_uInt32 ResMgr::GetStringSize( const sal_uInt8* pStr ) +sal_uInt32 ResMgr::GetStringSize( const sal_uInt8* pStr, sal_uInt32& nLen ) { - return GetStringSize( strlen( (const char*)pStr ) ); + nLen = static_cast< sal_uInt32 >( strlen( (const char*)pStr ) ); + return GetStringSize( nLen ); } // ----------------------------------------------------------------------- @@ -1765,90 +1776,125 @@ UniString ResMgr::ReadString() return aRet; } +rtl::OString ResMgr::ReadByteString() +{ + osl::Guard<osl::Mutex> aGuard( getResMgrMutex() ); + + if( pFallbackResMgr ) + return pFallbackResMgr->ReadByteString(); + + rtl::OString aRet; + + const ImpRCStack& rTop = aStack[nCurStack]; + if( (rTop.Flags & RC_NOTFOUND) ) + { + #if OSL_DEBUG_LEVEL > 0 + aRet = OString( "<resource not found>" ); + #endif + } + else + Increment( GetByteString( aRet, (const sal_uInt8*)GetClass() ) ); + + return aRet; +} + // ----------------------------------------------------------------------- -sal_uIntPtr ResMgr::GetAutoHelpId() +rtl::OString ResMgr::GetAutoHelpId() { osl::Guard<osl::Mutex> aGuard( getResMgrMutex() ); if( pFallbackResMgr ) return pFallbackResMgr->GetAutoHelpId(); - DBG_ASSERT( nCurStack, "resource stack empty in Auto help id generation" ); + OSL_ENSURE( nCurStack, "resource stack empty in Auto help id generation" ); if( nCurStack < 1 || nCurStack > 2 ) - return 0; - - const ImpRCStack *pRC = StackTop( nCurStack==1 ? 0 : 1 ); - - DBG_ASSERT( pRC->pResource, "MM hat gesagt, dass der immer einen hat" ); - sal_uIntPtr nGID = pRC->pResource->GetId(); - - if( !nGID || nGID > 32767 ) - return 0; - - sal_uIntPtr nHID = 0; - - // GGGg gggg::gggg gggg::ggLL LLLl::llll llll - switch( pRC->pResource->GetRT() ) { // maximal 7 - case RSC_DOCKINGWINDOW: - nHID += 0x20000000L; - case RSC_WORKWIN: - nHID += 0x20000000L; - case RSC_MODELESSDIALOG: - nHID += 0x20000000L; - case RSC_FLOATINGWINDOW: - nHID += 0x20000000L; - case RSC_MODALDIALOG: - nHID += 0x20000000L; - case RSC_TABPAGE: - nHID += 0x20000000L; - - if( nCurStack == 2 ) { - pRC = StackTop(); - sal_uIntPtr nLID = pRC->pResource->GetId(); - - if( !nLID || nLID > 511 ) - return 0; - - switch( pRC->pResource->GetRT() ) { // maximal 32 - case RSC_TABCONTROL: nHID |= 0x0000; break; - case RSC_RADIOBUTTON: nHID |= 0x0200; break; - case RSC_CHECKBOX: nHID |= 0x0400; break; - case RSC_TRISTATEBOX: nHID |= 0x0600; break; - case RSC_EDIT: nHID |= 0x0800; break; - case RSC_MULTILINEEDIT: nHID |= 0x0A00; break; - case RSC_MULTILISTBOX: nHID |= 0x0C00; break; - case RSC_LISTBOX: nHID |= 0x0E00; break; - case RSC_COMBOBOX: nHID |= 0x1000; break; - case RSC_PUSHBUTTON: nHID |= 0x1200; break; - case RSC_SPINFIELD: nHID |= 0x1400; break; - case RSC_PATTERNFIELD: nHID |= 0x1600; break; - case RSC_NUMERICFIELD: nHID |= 0x1800; break; - case RSC_METRICFIELD: nHID |= 0x1A00; break; - case RSC_CURRENCYFIELD: nHID |= 0x1C00; break; - case RSC_DATEFIELD: nHID |= 0x1E00; break; - case RSC_TIMEFIELD: nHID |= 0x2000; break; - case RSC_IMAGERADIOBUTTON: nHID |= 0x2200; break; - case RSC_NUMERICBOX: nHID |= 0x2400; break; - case RSC_METRICBOX: nHID |= 0x2600; break; - case RSC_CURRENCYBOX: nHID |= 0x2800; break; - case RSC_DATEBOX: nHID |= 0x2A00; break; - case RSC_TIMEBOX: nHID |= 0x2C00; break; - case RSC_IMAGEBUTTON: nHID |= 0x2E00; break; - case RSC_MENUBUTTON: nHID |= 0x3000; break; - case RSC_MOREBUTTON: nHID |= 0x3200; break; + return rtl::OString(); + + // prepare HID, start with resource prefix + rtl::OStringBuffer aHID( 32 ); + aHID.append( rtl::OUStringToOString( pImpRes->aPrefix, RTL_TEXTENCODING_UTF8 ) ); + aHID.append( '.' ); + + // append type + const ImpRCStack *pRC = StackTop(); + OSL_ENSURE( pRC, "missing resource stack level" ); + + if ( nCurStack == 1 ) + { + // auto help ids for top level windows + switch( pRC->pResource->GetRT() ) { + case RSC_DOCKINGWINDOW: aHID.append( "DockingWindow" ); break; + case RSC_WORKWIN: aHID.append( "WorkWindow" ); break; + case RSC_MODELESSDIALOG: aHID.append( "ModelessDialog" ); break; + case RSC_FLOATINGWINDOW: aHID.append( "FloatingWindow" ); break; + case RSC_MODALDIALOG: aHID.append( "ModalDialog" ); break; + case RSC_TABPAGE: aHID.append( "TabPage" ); break; + default: return rtl::OString(); + } + } + else + { + // only controls with the following parents get auto help ids + const ImpRCStack *pRC1 = StackTop(1); + switch( pRC1->pResource->GetRT() ) { + case RSC_DOCKINGWINDOW: + case RSC_WORKWIN: + case RSC_MODELESSDIALOG: + case RSC_FLOATINGWINDOW: + case RSC_MODALDIALOG: + case RSC_TABPAGE: + // intentionally no breaks! + // auto help ids for controls + switch( pRC->pResource->GetRT() ) { + case RSC_TABCONTROL: aHID.append( "TabControl" ); break; + case RSC_RADIOBUTTON: aHID.append( "RadioButton" ); break; + case RSC_CHECKBOX: aHID.append( "CheckBox" ); break; + case RSC_TRISTATEBOX: aHID.append( "TriStateBox" ); break; + case RSC_EDIT: aHID.append( "Edit" ); break; + case RSC_MULTILINEEDIT: aHID.append( "MultiLineEdit" ); break; + case RSC_MULTILISTBOX: aHID.append( "MultiListBox" ); break; + case RSC_LISTBOX: aHID.append( "ListBox" ); break; + case RSC_COMBOBOX: aHID.append( "ComboBox" ); break; + case RSC_PUSHBUTTON: aHID.append( "PushButton" ); break; + case RSC_SPINFIELD: aHID.append( "SpinField" ); break; + case RSC_PATTERNFIELD: aHID.append( "PatternField" ); break; + case RSC_NUMERICFIELD: aHID.append( "NumericField" ); break; + case RSC_METRICFIELD: aHID.append( "MetricField" ); break; + case RSC_CURRENCYFIELD: aHID.append( "CurrencyField" ); break; + case RSC_DATEFIELD: aHID.append( "DateField" ); break; + case RSC_TIMEFIELD: aHID.append( "TimeField" ); break; + case RSC_IMAGERADIOBUTTON: aHID.append( "ImageRadioButton" ); break; + case RSC_NUMERICBOX: aHID.append( "NumericBox" ); break; + case RSC_METRICBOX: aHID.append( "MetricBox" ); break; + case RSC_CURRENCYBOX: aHID.append( "CurrencyBox" ); break; + case RSC_DATEBOX: aHID.append( "DateBox" ); break; + case RSC_TIMEBOX: aHID.append( "TimeBox" ); break; + case RSC_IMAGEBUTTON: aHID.append( "ImageButton" ); break; + case RSC_MENUBUTTON: aHID.append( "MenuButton" ); break; + case RSC_MOREBUTTON: aHID.append( "MoreButton" ); break; default: - return 0; - } // of switch - nHID |= nLID; - } // of if - break; - default: - return 0; - } // of switch - nHID |= nGID << 14; + // no type, no auto HID + return rtl::OString(); + } + break; + default: + return rtl::OString(); + } + } + + // append resource id hierarchy + for( int nOff = nCurStack-1; nOff >= 0; nOff-- ) + { + aHID.append( '.' ); + pRC = StackTop( nOff ); + + OSL_ENSURE( pRC->pResource, "missing resource in resource stack level !" ); + if( pRC->pResource ) + aHID.append( sal_Int32( pRC->pResource->GetId() ) ); + } - return nHID; + return aHID.makeStringAndClear(); } // ----------------------------------------------------------------------- @@ -1919,7 +1965,7 @@ SimpleResMgr* SimpleResMgr::Create( const sal_Char* pPrefixName, com::sun::star: // ----------------------------------------------------------------------- bool SimpleResMgr::IsAvailable( RESOURCE_TYPE _resourceType, sal_uInt32 _resourceId ) { - NAMESPACE_VOS(OGuard) aGuard(m_aAccessSafety); + vos::OGuard aGuard(m_aAccessSafety); if ( ( RSC_STRING != _resourceType ) && ( RSC_RESOURCE != _resourceType ) ) return false; @@ -1931,7 +1977,7 @@ bool SimpleResMgr::IsAvailable( RESOURCE_TYPE _resourceType, sal_uInt32 _resourc // ----------------------------------------------------------------------- UniString SimpleResMgr::ReadString( sal_uInt32 nId ) { - NAMESPACE_VOS(OGuard) aGuard(m_aAccessSafety); + vos::OGuard aGuard(m_aAccessSafety); DBG_ASSERT( m_pResImpl, "SimpleResMgr::ReadString : have no impl class !" ); // perhaps constructed with an invalid filename ? @@ -2002,7 +2048,7 @@ const ::com::sun::star::lang::Locale& SimpleResMgr::GetLocale() const sal_uInt32 SimpleResMgr::ReadBlob( sal_uInt32 nId, void** pBuffer ) { - NAMESPACE_VOS(OGuard) aGuard(m_aAccessSafety); + vos::OGuard aGuard(m_aAccessSafety); DBG_ASSERT( m_pResImpl, "SimpleResMgr::ReadBlob : have no impl class !" ); diff --git a/tools/source/solar/makefile.mk b/tools/source/solar/makefile.mk deleted file mode 100644 index 6f5dd85c608b..000000000000 --- a/tools/source/solar/makefile.mk +++ /dev/null @@ -1,63 +0,0 @@ -#************************************************************************* -# -# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. -# -# Copyright 2000, 2010 Oracle and/or its affiliates. -# -# OpenOffice.org - a multi-platform office productivity suite -# -# This file is part of OpenOffice.org. -# -# OpenOffice.org is free software: you can redistribute it and/or modify -# it under the terms of the GNU Lesser General Public License version 3 -# only, as published by the Free Software Foundation. -# -# OpenOffice.org is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Lesser General Public License version 3 for more details -# (a copy is included in the LICENSE file that accompanied this code). -# -# You should have received a copy of the GNU Lesser General Public License -# version 3 along with OpenOffice.org. If not, see -# <http://www.openoffice.org/license.html> -# for a copy of the LGPLv3 License. -# -#************************************************************************* - -PRJ=..$/.. - -PRJNAME=tools -TARGET=mksvconf -TARGETTYPE=CUI - -LIBSALCPPRT=$(0) - -# --- Settings ----------------------------------------------------- - -.INCLUDE : settings.mk -.INCLUDE : $(PRJ)$/util$/makefile.pmk - -# --- Files -------------------------------------------------------- - -CFILES= solar.c - -OBJFILES= $(OBJ)$/solar.obj - -APP1TARGET= $(TARGET) -APP1OBJS= $(OBJFILES) -APP1STDLIBS= -APP1DEPN= -APP1DEF= - -# --- Targets ------------------------------------------------------ - -.INCLUDE : target.mk - -.IF "$(L10N-framework)"=="" -ALLTAR : $(INCCOM)$/svconf.h -.ENDIF # "$(L10N-framework)"=="" - -$(INCCOM)$/svconf.h : $(BIN)$/$(TARGET) - $(BIN)$/$(TARGET) $@ - diff --git a/tools/source/solar/solar.c b/tools/source/solar/solar.c deleted file mode 100644 index 608f0baf5129..000000000000 --- a/tools/source/solar/solar.c +++ /dev/null @@ -1,562 +0,0 @@ -/************************************************************************* - * - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. - * - * Copyright 2000, 2010 Oracle and/or its affiliates. - * - * OpenOffice.org - a multi-platform office productivity suite - * - * This file is part of OpenOffice.org. - * - * OpenOffice.org is free software: you can redistribute it and/or modify - * it under the terms of the GNU Lesser General Public License version 3 - * only, as published by the Free Software Foundation. - * - * OpenOffice.org is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License version 3 for more details - * (a copy is included in the LICENSE file that accompanied this code). - * - * You should have received a copy of the GNU Lesser General Public License - * version 3 along with OpenOffice.org. If not, see - * <http://www.openoffice.org/license.html> - * for a copy of the LGPLv3 License. - * - ************************************************************************/ - -/* POSIX defines that a program is undefined after a SIG_SEGV. The - * code stopped working on Linux Kernel 2.6 so I have moved this back to - * use FORK. - * If at a later time the signals work correctly with the Linux Kernel 2.6 - * then this change may be reverted although not strictly posix safe. */ -#define USE_FORK_TO_CHECK 1 - -#include <stdio.h> -#include <stdlib.h> -#include <errno.h> -#include <string.h> - -#include <unistd.h> -#include <sys/types.h> - -#define I_STDARG -#ifdef I_STDARG -#include <stdarg.h> -#else -#include <varargs.h> -#endif - -#define NO_USE_FORK_TO_CHECK -#ifdef USE_FORK_TO_CHECK -#include <sys/wait.h> -#else -#include <signal.h> -#include <setjmp.h> -#endif - -#define printTypeSize(Type,Name) printf( "sizeof(%s)\t= %d\n", Name, sizeof (Type) ) - -#define isSignedType(Type) (((Type)-1) < 0) -#define printTypeSign(Type,Name) printf( "%s\t= %s %s\n", Name, ( isSignedType(Type) ? "signed" : "unsigned" ), Name ) - - -/************************************************************************* -|* -|* IsBigEndian() -|* -|* Beschreibung True, wenn CPU BigEndian ist -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -int IsBigEndian() -{ - long l = 1; - return ! *(char*)&l; -} - -/************************************************************************* -|* -|* IsStackGrowingDown() -|* -|* Beschreibung True, wenn der Stack nach unten waechst -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -int IsStackGrowingDown_2( int * pI ) -{ - int i = 1; - return ((unsigned long)&i) < (unsigned long)pI; -} - -int IsStackGrowingDown() -{ - int i = 1; - return IsStackGrowingDown_2(&i); -} - -/************************************************************************* -|* -|* GetStackAlignment() -|* -|* Beschreibung Alignment von char Parametern, die (hoffentlich) -|* ueber den Stack uebergeben werden -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -int GetStackAlignment_3( char*p, long l, int i, short s, char b, char c, ... ) -{ - if ( IsStackGrowingDown() ) - return &c - &b; - else - return &b - &c; -} - -int GetStackAlignment_2( char*p, long l, int i, short s, char b, char c ) -{ - if ( IsStackGrowingDown() ) - return &c - &b; - else - return &b - &c; -} - -int GetStackAlignment() -{ - int nStackAlignment = GetStackAlignment_3(0,1,2,3,4,5); - if ( nStackAlignment != GetStackAlignment_2(0,1,2,3,4,5) ) - printf( "Pascal calling convention\n" ); - return nStackAlignment; -} - - -/************************************************************************* -|* -|* Typdeclarations for memory access test functions -|* -*************************************************************************/ -typedef enum { t_char, t_short, t_int, t_long, t_double } Type; -typedef int (*TestFunc)( Type, void* ); - - -/************************************************************************* -|* -|* PrintArgs() -|* -|* Beschreibung Testfunktion fuer variable Parameter -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -#ifdef I_STDARG -void PrintArgs( int p, ... ) -#else -void PrintArgs( p, va_alist ) -int p; -va_dcl -#endif -{ - int value; - va_list ap; - -#ifdef I_STDARG - va_start( ap, p ); -#else - va_start( ap ); -#endif - - printf( "value = %d", p ); - - while ( ( value = va_arg(ap, int) ) != 0 ) - printf( " %d", value ); - - printf( "\n" ); - va_end(ap); -} - -#ifndef USE_FORK_TO_CHECK -/************************************************************************* -|* -|* SignalHdl() -|* -|* Beschreibung faengt SIGBUS und SIGSEGV in check() ab -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -static jmp_buf check_env; -static int bSignal; -void SignalHdl( int sig ) -{ - bSignal = 1; - - fprintf( stderr, "Signal %d caught\n", sig ); - signal( SIGSEGV, SIG_DFL ); - signal( SIGBUS, SIG_DFL ); - siglongjmp( check_env, sig ); -} -#endif - -/************************************************************************* -|* -|* check() -|* -|* Beschreibung Testet MemoryZugriff (read/write) -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -int check( TestFunc func, Type eT, void* p ) -{ -#ifdef USE_FORK_TO_CHECK - pid_t nChild = fork(); - if ( nChild ) - { - int exitVal; - wait( &exitVal ); - if ( exitVal & 0xff ) - return -1; - else - return exitVal >> 8; - } - else - { - exit( func( eT, p ) ); - } -#else - int result; - - bSignal = 0; - - if ( !sigsetjmp( check_env, 1 ) ) - { - signal( SIGSEGV, SignalHdl ); - signal( SIGBUS, SignalHdl ); - result = func( eT, p ); - signal( SIGSEGV, SIG_DFL ); - signal( SIGBUS, SIG_DFL ); - } - - if ( bSignal ) - return -1; - else - return 0; -#endif -} - -/************************************************************************* -|* -|* GetAtAddress() -|* -|* Beschreibung memory read access -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -int GetAtAddress( Type eT, void* p ) -{ - switch ( eT ) - { - case t_char: return *((char*)p); - case t_short: return *((short*)p); - case t_int: return *((int*)p); - case t_long: return *((long*)p); - case t_double: return *((double*)p); - } - abort(); -} - -/************************************************************************* -|* -|* SetAtAddress() -|* -|* Beschreibung memory write access -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -int SetAtAddress( Type eT, void* p ) -{ - switch ( eT ) - { - case t_char: return *((char*)p) = 0; - case t_short: return *((short*)p) = 0; - case t_int: return *((int*)p) = 0; - case t_long: return *((long*)p) = 0; - case t_double: return *((double*)p)= 0; - } - abort(); -} - -char* TypeName( Type eT ) -{ - switch ( eT ) - { - case t_char: return "char"; - case t_short: return "short"; - case t_int: return "int"; - case t_long: return "long"; - case t_double: return "double"; - } - abort(); -} - -/************************************************************************* -|* -|* Check(Get|Set)Access() -|* -|* Beschreibung Testet MemoryZugriff (read/write) -|* Zugriffsverletzungen werden abgefangen -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -int CheckGetAccess( Type eT, void* p ) -{ - int b; - b = -1 != check( (TestFunc)GetAtAddress, eT, p ); -#if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, - "%s read %s at %p\n", - (b? "can" : "can not" ), TypeName(eT), p ); -#endif - return b; -} -int CheckSetAccess( Type eT, void* p ) -{ - int b; - - b = -1 != check( (TestFunc)SetAtAddress, eT, p ); -#if OSL_DEBUG_LEVEL > 1 - fprintf( stderr, - "%s write %s at %p\n", - (b? "can" : "can not" ), TypeName(eT), p ); -#endif - return b; -} - -/************************************************************************* -|* -|* GetAlignment() -|* -|* Beschreibung Bestimmt das Alignment verschiedener Typen -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -int GetAlignment( Type eT ) -{ - char a[ 16*8 ]; - long p = (long)(void*)a; - int i; - - /* clear a[...] to set legal value for double access */ - for ( i = 0; i < 16*8; i++ ) - a[i] = 0; - - p = ( p + 0xF ) & ~0xF; - for ( i = 1; i < 16; i++ ) - if ( CheckGetAccess( eT, (void*)(p+i) ) ) - return i; - return 0; -} - -/************************************************************************* -|* -|* struct Description -|* -|* Beschreibung Beschreibt die Parameter der Architektur -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -struct Description -{ - int bBigEndian; - int bStackGrowsDown; - int nStackAlignment; - int nAlignment[3]; /* 2,4,8 */ -}; - -/************************************************************************* -|* -|* Description_Ctor() -|* -|* Beschreibung Bestimmt die Parameter der Architektur -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -void Description_Ctor( struct Description* pThis ) -{ - pThis->bBigEndian = IsBigEndian(); - pThis->bStackGrowsDown = IsStackGrowingDown(); - pThis->nStackAlignment = GetStackAlignment(); - - if ( sizeof(short) != 2 ) - abort(); - pThis->nAlignment[0] = GetAlignment( t_short ); - if ( sizeof(int) != 4 ) - abort(); - pThis->nAlignment[1] = GetAlignment( t_int ); - - if ( sizeof(long) == 8 ) - pThis->nAlignment[2] = GetAlignment( t_long ); - else if ( sizeof(double) == 8 ) - pThis->nAlignment[2] = GetAlignment( t_double ); - else - abort(); -} - -/************************************************************************* -|* -|* Description_Print() -|* -|* Beschreibung Schreibt die Parameter der Architektur als Header -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -void Description_Print( struct Description* pThis, char* name ) -{ - int i; - FILE* f = fopen( name, "w" ); - if( ! f ) { - fprintf( stderr, "Unable to open file %s: %s\n", name, strerror( errno ) ); - exit( 99 ); - } - fprintf( f, "#define __%s\n", - pThis->bBigEndian ? "BIGENDIAN" : "LITTLEENDIAN" ); - for ( i = 0; i < 3; i++ ) - fprintf( f, "#define __ALIGNMENT%d\t%d\n", - 1 << (i+1), pThis->nAlignment[i] ); - fprintf( f, "/* Stack alignment is not used... */\n" ); - fprintf( f, "#define __STACKALIGNMENT\t%d\n", pThis->nStackAlignment ); - fprintf( f, "#define __STACKDIRECTION\t%d\n", - pThis->bStackGrowsDown ? -1 : 1 ); - fprintf( f, "#define __SIZEOFCHAR\t%d\n", sizeof( char ) ); - fprintf( f, "#define __SIZEOFSHORT\t%d\n", sizeof( short ) ); - fprintf( f, "#define __SIZEOFINT\t%d\n", sizeof( int ) ); - fprintf( f, "#define __SIZEOFLONG\t%d\n", sizeof( long ) ); - fprintf( f, "#define __SIZEOFPOINTER\t%d\n", sizeof( void* ) ); - fprintf( f, "#define __SIZEOFDOUBLE\t%d\n", sizeof( double ) ); - fprintf( f, "#define __IEEEDOUBLE\n" ); - fclose( f ); -} - -/************************************************************************* -|* -|* InfoMemoryAccess() -|* -|* Beschreibung Informeller Bytezugriffstest -|* -|* Ersterstellung EG 26.06.96 -|* Letzte Aenderung -|* -*************************************************************************/ -void InfoMemoryAccess( char* p ) -{ - if ( CheckGetAccess( t_char, p ) ) - printf( "can read address %p\n", p ); - else - printf( "can not read address %p\n", p ); - - if ( CheckSetAccess( t_char, p ) ) - printf( "can write address %p\n", p ); - else - printf( "can not write address %p\n", p ); -} - -/************************************************************************* -|* -|* InfoMemoryTypeAccess() -|* -|* Beschreibung Informeller Zugriffstest verschiedener Typen -|* -|* Ersterstellung EG 15.08.96 -|* Letzte Aenderung -|* -*************************************************************************/ -void InfoMemoryTypeAccess( Type eT ) -{ - char a[64]; - int i; - - /* clear a[...] to set legal value for double access */ - for ( i = 0; i < 64; i++ ) - a[i] = 0; - - for ( i = 56; i >= 7; i >>= 1 ) - { - printf( "Zugriff %s auf %i-Aligned Adresse : ", TypeName( eT ), i / 7 ); - printf( ( CheckGetAccess( eT, (long*)&a[i] ) ? "OK\n" : "ERROR\n" ) ); - } -} -/************************************************************************ - * - * Use C code to determine the characteristics of the building platform. - * - ************************************************************************/ -int main( int argc, char* argv[] ) -{ - printTypeSign( char, "char" ); - printTypeSign( short, "short" ); - printTypeSign( int, "int" ); - printTypeSign( long, "long" ); - - printTypeSize( char, "char" ); - printTypeSize( short, "short" ); - printTypeSize( int, "int" ); - printTypeSize( long, "long" ); - printTypeSize( float, "float" ); - printTypeSize( double, "double" ); - printTypeSize( void *, "void *" ); - - if ( IsBigEndian() ) - printf( "BIGENDIAN (Sparc, MC680x0, RS6000, IP22, IP32, g3)\n" ); - else - printf( "LITTLEENDIAN (Intel, VAX, PowerPC)\n" ); - - if( IsStackGrowingDown() ) - printf( "Stack waechst nach unten\n" ); - else - printf( "Stack waechst nach oben\n" ); - - printf( "STACKALIGNMENT : %d\n", GetStackAlignment() ); - - /* PrintArgs( 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 ); */ - - if ( argc > 1 ) - { - struct Description description; - Description_Ctor( &description ); - Description_Print( &description, argv[1] ); - } - { - char* p = NULL; - InfoMemoryAccess( p ); - p = (char*)&p; - InfoMemoryAccess( p ); - InfoMemoryTypeAccess( t_short ); - InfoMemoryTypeAccess( t_int ); - InfoMemoryTypeAccess( t_long ); - InfoMemoryTypeAccess( t_double ); - } - - exit( 0 ); -} diff --git a/tools/source/stream/strmos2.cxx b/tools/source/stream/strmos2.cxx index e7f760919a9a..bfe1f9750f4d 100644 --- a/tools/source/stream/strmos2.cxx +++ b/tools/source/stream/strmos2.cxx @@ -756,109 +756,3 @@ void SvFileStream::SetSize( sal_uIntPtr nSize ) SetError( ::GetSvError( nRet ) ); } } - -#if 0 -/************************************************************************* -|* -|* SvSharedMemoryStream::AllocateMemory() -|* -|* Beschreibung STREAM.SDW -|* Ersterstellung CL 05.05.95 -|* Letzte Aenderung CL 05.05.95 -|* -*************************************************************************/ - -sal_Bool SvSharedMemoryStream::AllocateMemory( sal_uIntPtr nNewSize ) -{ - DBG_ASSERT(aHandle==0,"Keine Handles unter OS/2"); - DBG_ASSERT(nNewSize,"Cannot allocate zero Bytes"); - APIRET nRet = DosAllocSharedMem( (void**)&pBuf, (PSZ)NULL, nNewSize, - PAG_READ | PAG_WRITE | PAG_COMMIT | - OBJ_GIVEABLE | OBJ_GETTABLE | OBJ_ANY); - return( nRet == 0 ); -} - -/************************************************************************* -|* -|* SvSharedMemoryStream::ReAllocateMemory() (Bozo-Algorithmus) -|* -|* Beschreibung STREAM.SDW -|* Ersterstellung CL 05.05.95 -|* Letzte Aenderung CL 05.05.95 -|* -*************************************************************************/ - -sal_Bool SvSharedMemoryStream::ReAllocateMemory( long nDiff ) -{ - DBG_ASSERT(aHandle==0,"Keine Handles unter OS/2"); - sal_Bool bRetVal = sal_False; - sal_uIntPtr nNewSize = nSize + nDiff; - if( nNewSize ) - { - // neuen Speicher nicht ueber AllocateMemory holen, da wir den - // alten Speicher behalten wollen, falls nicht genuegend Platz - // fuer den neuen Block da ist - char* pNewBuf; - APIRET nRet = DosAllocSharedMem( (void**)&pNewBuf,(PSZ)NULL,nNewSize, - PAG_READ | PAG_WRITE | PAG_COMMIT | - OBJ_GIVEABLE | OBJ_GETTABLE | OBJ_ANY); - DBG_ASSERT(!nRet,"DosAllocSharedMem failed"); - - if( !nRet ) - { - bRetVal = sal_True; // Success! - if( nNewSize < nSize ) // Verkleinern ? - { - memcpy( pNewBuf, pBuf, (size_t)nNewSize ); - if( nPos > nNewSize ) - nPos = 0L; - if( nEndOfData >= nNewSize ) - nEndOfData = nNewSize-1L; - } - else - memcpy( pNewBuf, pBuf, (size_t)nSize ); - - FreeMemory(); // den alten Block loeschen ... - - // und den neuen Block in Dienst stellen - pBuf = (sal_uInt8*)pNewBuf; - nSize = nNewSize; - } - } - else - { - bRetVal = sal_True; - FreeMemory(); - pBuf = 0; - nSize = 0; - nEndOfData = 0; - } - return bRetVal; -} - -void SvSharedMemoryStream::FreeMemory() -{ - DBG_ASSERT(aHandle==0,"Keine Handles unter OS/2"); - DosFreeMem( pBuf ); -} - -/************************************************************************* -|* -|* SvSharedMemoryStream::SetHandle() -|* -|* Beschreibung STREAM.SDW -|* Ersterstellung OV 05.10.95 -|* Letzte Aenderung OV 05.10.95 -|* -*************************************************************************/ - -void* SvSharedMemoryStream::SetHandle( void* aNewHandle, sal_Size nSize, - sal_Bool bOwnsData, sal_Size nEOF ) -{ - DBG_ERROR("OS/2 does not support memory handles"); - // return SetBuffer(aNewHandle, nSize, bOwnsData, nEOF ); - return 0; -} - - -#endif // 0 diff --git a/tools/source/stream/strmunx.cxx b/tools/source/stream/strmunx.cxx index 346c408d7f82..87e3cea4c0c7 100644 --- a/tools/source/stream/strmunx.cxx +++ b/tools/source/stream/strmunx.cxx @@ -60,7 +60,7 @@ DECLARE_LIST( InternalStreamLockList, InternalStreamLock* ) namespace { struct LockList : public rtl::Static< InternalStreamLockList, LockList > {}; } #ifndef BOOTSTRAP -namespace { struct LockMutex : public rtl::Static< NAMESPACE_VOS(OMutex), LockMutex > {}; } +namespace { struct LockMutex : public rtl::Static< vos::OMutex, LockMutex > {}; } #endif class InternalStreamLock @@ -111,7 +111,7 @@ InternalStreamLock::~InternalStreamLock() sal_Bool InternalStreamLock::LockFile( sal_Size nStart, sal_Size nEnd, SvFileStream* pStream ) { #ifndef BOOTSTRAP - NAMESPACE_VOS( OGuard ) aGuard( LockMutex::get() ); + vos:: OGuard aGuard( LockMutex::get() ); #endif ByteString aFileName(pStream->GetFileName(), osl_getThreadTextEncoding()); struct stat aStat; @@ -161,7 +161,7 @@ sal_Bool InternalStreamLock::LockFile( sal_Size nStart, sal_Size nEnd, SvFileStr void InternalStreamLock::UnlockFile( sal_Size nStart, sal_Size nEnd, SvFileStream* pStream ) { #ifndef BOOTSTRAP - NAMESPACE_VOS( OGuard ) aGuard( LockMutex::get() ); + vos:: OGuard aGuard( LockMutex::get() ); #endif InternalStreamLock* pLock = NULL; InternalStreamLockList &rLockList = LockList::get(); diff --git a/tools/source/string/strucvt.cxx b/tools/source/string/strucvt.cxx index 7198d0e8f98c..9c9ef1dc4b5a 100644 --- a/tools/source/string/strucvt.cxx +++ b/tools/source/string/strucvt.cxx @@ -201,6 +201,8 @@ UniString::UniString( const ResId& rResId ) Append( UniString::CreateFromInt32( rResId.GetId() ) ); AppendAscii( " not found>" ); #endif + if( pResMgr ) + pResMgr->PopContext(); } diff --git a/tools/source/testtoolloader/testtoolloader.cxx b/tools/source/testtoolloader/testtoolloader.cxx index d713ff94e2cc..59be94a02f4c 100644 --- a/tools/source/testtoolloader/testtoolloader.cxx +++ b/tools/source/testtoolloader/testtoolloader.cxx @@ -56,16 +56,16 @@ static bool bLoggerStarted = false; sal_uInt32 GetCommandLineParamCount() { - NAMESPACE_VOS( OStartupInfo ) aStartInfo; + vos:: OStartupInfo aStartInfo; return aStartInfo.getCommandArgCount(); } String GetCommandLineParam( sal_uInt32 nParam ) { - NAMESPACE_VOS( OStartupInfo ) aStartInfo; + vos:: OStartupInfo aStartInfo; ::rtl::OUString aParam; - NAMESPACE_VOS( OStartupInfo )::TStartupError eError = aStartInfo.getCommandArg( nParam, aParam ); - if ( eError == NAMESPACE_VOS( OStartupInfo )::E_None ) + vos:: OStartupInfo ::TStartupError eError = aStartInfo.getCommandArg( nParam, aParam ); + if ( eError == vos:: OStartupInfo ::E_None ) return String( aParam ); else { |