diff options
author | Rüdiger Timm <rt@openoffice.org> | 2005-10-24 07:21:25 +0000 |
---|---|---|
committer | Rüdiger Timm <rt@openoffice.org> | 2005-10-24 07:21:25 +0000 |
commit | 8d0433fc64bd0a8633c2be73fb02c37533cc3d8b (patch) | |
tree | 32574d7ff9ec99b72a90acb0a060c81f4d351aa2 /connectivity | |
parent | 66cccb91978b4a210454795ffc8eece7c4db1cf0 (diff) |
INTEGRATION: CWS dba201d (1.8.10); FILE MERGED
2005/09/27 08:12:34 oj 1.8.10.1: commits from dba201c
Diffstat (limited to 'connectivity')
-rw-r--r-- | connectivity/source/drivers/hsqldb/HStorageMap.cxx | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/connectivity/source/drivers/hsqldb/HStorageMap.cxx b/connectivity/source/drivers/hsqldb/HStorageMap.cxx index 7116c4698cb2..fceb20c1f995 100644 --- a/connectivity/source/drivers/hsqldb/HStorageMap.cxx +++ b/connectivity/source/drivers/hsqldb/HStorageMap.cxx @@ -4,9 +4,9 @@ * * $RCSfile: HStorageMap.cxx,v $ * - * $Revision: 1.8 $ + * $Revision: 1.9 $ * - * last change: $Author: rt $ $Date: 2005-09-08 06:04:08 $ + * last change: $Author: rt $ $Date: 2005-10-24 08:21:25 $ * * The Contents of this file are made available subject to * the terms of GNU Lesser General Public License Version 2.1. @@ -170,22 +170,29 @@ namespace connectivity ::rtl::OUString StorageContainer::jstring2ustring(JNIEnv * env, jstring jstr) { - const char * cstr; - rtl_uString * ustr = NULL; - cstr = env->GetStringUTFChars(jstr, NULL); if (JNI_FALSE != env->ExceptionCheck()) { env->ExceptionClear(); OSL_ENSURE(0,"ExceptionClear"); } - rtl_uString_newFromAscii(&ustr, cstr); - env->ReleaseStringUTFChars(jstr, cstr); + ::rtl::OUString aStr; + if ( jstr ) + { + jboolean bCopy(sal_True); + const jchar* pChar = env->GetStringChars(jstr,&bCopy); + jsize len = env->GetStringLength(jstr); + aStr = ::rtl::OUString(pChar,len); + + if(bCopy) + env->ReleaseStringChars(jstr,pChar); + } + if (JNI_FALSE != env->ExceptionCheck()) { env->ExceptionClear(); OSL_ENSURE(0,"ExceptionClear"); } - return ustr ? ::rtl::OUString(ustr,SAL_NO_ACQUIRE) : ::rtl::OUString(); + return aStr; } // ----------------------------------------------------------------------------- |