cmcfixes76: #i112656# osl_setEnvironment/osl_clearEnvironment

This commit is contained in:
Caol?n McNamara
2010-06-24 20:59:17 +01:00
parent 5394e06d44
commit 7add7926ef
7 changed files with 207 additions and 22 deletions

View File

@@ -66,10 +66,6 @@ using com::sun::star::container::XSet;
using com::sun::star::container::XContentEnumerationAccess;
using com::sun::star::container::XEnumeration;
#ifdef SAL_W32
#define putenv _putenv
#endif
namespace {
OUString replacePrefix(OUString const & url, OUString const & prefix) {
@@ -313,14 +309,9 @@ sal_Bool parseOptions(int ac, char* av[], Options& rOptions, sal_Bool bCmdFile)
i++;
if( i < ac )
{
// leak this string as some platforms assume to own
// the pointer
sal_Char * p = (sal_Char *) rtl_allocateMemory( 13+ strlen( av[i] ) );
p[0] = 0;
strcat( p, "CLASSPATH=" ); // #100211# - checked
strcat( p, av[i] ); // #100211# - checked
putenv( p );
rtl::OUString envVar(RTL_CONSTASCII_USTRINGPARAM("CLASSPATH"));
rtl::OUString envValue(av[i], strlen(av[i]), osl_getThreadTextEncoding());
osl_setEnvironment(envVar.pData, envValue.pData);
}
break;
}