3261N/A * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. 0N/A * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 0N/A * This code is free software; you can redistribute it and/or modify it 0N/A * under the terms of the GNU General Public License version 2 only, as 2362N/A * published by the Free Software Foundation. Oracle designates this 0N/A * particular file as subject to the "Classpath" exception as provided 2362N/A * by Oracle in the LICENSE file that accompanied this code. 0N/A * This code is distributed in the hope that it will be useful, but WITHOUT 0N/A * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 0N/A * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 0N/A * version 2 for more details (a copy is included in the LICENSE file that 0N/A * accompanied this code). 0N/A * You should have received a copy of the GNU General Public License version 0N/A * 2 along with this work; if not, write to the Free Software Foundation, 0N/A * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 2362N/A * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 0N/A/* Due to a bug in the win32 C runtime library strings 0N/A * such as "z:" need to be appended with a "." so we 0N/A * must allocate at least 4 bytes to allow room for 0N/A * this expansion. See 4235353 for details. 0N/A * Throw a Java exception by name. Similar to SignalError. 0N/A if (
cls != 0)
/* Otherwise an exception has already been thrown */ 0N/A/* JNU_Throw common exceptions */ 0N/A/* Throw an exception by name, using the string returned by 0N/A * JVM_LastErrorString for the detail string. If the last-error 0N/A * string is NULL, use the given default detail string. 0N/A/* Throw an IOException, using the last-error string for the detail 0N/A * string. If the last-error string is NULL, use the given default 0N/A /* find out the return type */ 0N/A while (*p && *p !=
')')
0N/A /* find out the return type */ 0N/A while (*p && *p !=
')')
0N/A/* Optimized for char set ISO_8559_1 */ 0N/A/* Optimized for char set ISO646-US (us-ascii) */ 0N/A unsigned char c = (
unsigned char)
str[i];
0N/A/* enumeration of c1 row from Cp1252 */ 0N/A 0x20AC,
0xFFFD,
0x201A,
0x0192,
0x201E,
0x2026,
0x2020,
0x2021,
0N/A 0x02C6,
0x2030,
0x0160,
0x2039,
0x0152,
0xFFFD,
0x017D,
0xFFFD,
0N/A 0xFFFD,
0x2018,
0x2019,
0x201C,
0x201D,
0x2022,
0x2013,
0x2014,
0N/A 0x02Dc,
0x2122,
0x0161,
0x203A,
0x0153,
0xFFFD,
0x017E,
0x0178 0N/A/* Optimized for char set Cp1252 */ 0N/A unsigned char c = (
unsigned char)
str[i];
0N/A if ((c >=
0x80) && (c <=
0x9f))
0N/A/* Cached method IDs */ 0N/A/* Initialize the fast encoding. If the "sun.jnu.encoding" property 0N/A * has not yet been set, we leave fastEncoding == NO_ENCODING_YET. 0N/A * On Solaris with nl_langinfo() called in GetJavaProperties(): 0N/A * locale undefined -> NULL -> hardcoded default 0N/A * "C" locale -> "" -> hardcoded default (on 2.6) 0N/A * "C" locale -> "ISO646-US" (on Sol 7/8) 0N/A * "en_US" locale -> "ISO8859-1" 0N/A * "en_GB" locale -> "ISO8859-1" (on Sol 7/8) 0N/A * "en_UK" locale -> "ISO8859-1" (on 2.6) 0N/A /* This is a temporary fix until we move */ 0N/A /* to wide character versions of all Windows */ 0N/A /* Initialize method-id cache */ 1365N/A /*If the encoding specified in sun.jnu.encoding is not endorsed 1365N/A by "Charset.isSupported" we have to fall back to use String(byte[]) 1365N/A explicitly here without specifying the encoding name, in which the 1365N/A StringCoding class will pickup the iso-8859-1 as the fallback 0N/A * Export the platform dependent path canonicalization so that 0N/A * VM can find it when loading system classes. 0N/A /* canonicalize an already natived path */ 0N/A/************************************************************************ 0N/A/************************************************************************ 0N/A * Debugging utilities