/* DO NOT EDIT THIS FILE - it is machine generated (JCGO_116) */ #ifdef JCGO_SEPARATED #define JCGO_116 #include "jcgortl.h" #include "Main.h" #endif #ifdef JCGO_116 #ifdef CHKALL_java_io_VMFile #include "jcgobchk.h" #endif JCGO_NOSEP_INLINE java_lang_String CFASTCALL java_io_VMFile__getenv0__Ls( java_lang_String name ) { #ifdef NOJAVA_java_io_VMFile_getenv0 jcgo_jniNoNativeFunc(); return jnull; #else JCGO_JNI_BLOCK(1) return (java_lang_String)jcgo_jniLeave(jcgo_pJniEnv, (jobject)JCGO_JNI_FUNC(Java_java_io_VMFile_getenv0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jstring)JCGO_JNI_TOLOCALREF(1, name))); #endif } JCGO_NOSEP_INLINE java_lang_String CFASTCALL java_io_VMFile__getLineSeparator0__( void ) { #ifdef NOJAVA_java_io_VMFile_getLineSeparator0 jcgo_jniNoNativeFunc(); return jnull; #else JCGO_JNI_BLOCK(0) return (java_lang_String)jcgo_jniLeave(jcgo_pJniEnv, (jobject)JCGO_JNI_FUNC(Java_java_io_VMFile_getLineSeparator0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)))); #endif } JCGO_NOSEP_FRWINL jint CFASTCALL java_io_VMFile__isUniRootFileSys0__( void ) { #ifdef NOJAVA_java_io_VMFile_isUniRootFileSys0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(0) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_isUniRootFileSys0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class))); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_INLINE java_lang_String CFASTCALL java_io_VMFile__normPlatformPath0__Ls( java_lang_String path ) { #ifdef NOJAVA_java_io_VMFile_normPlatformPath0 jcgo_jniNoNativeFunc(); return jnull; #else JCGO_JNI_BLOCK(1) return (java_lang_String)jcgo_jniLeave(jcgo_pJniEnv, (jobject)JCGO_JNI_FUNC(Java_java_io_VMFile_normPlatformPath0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jstring)JCGO_JNI_TOLOCALREF(1, path))); #endif } JCGO_NOSEP_FRWINL java_lang_String CFASTCALL java_io_VMFile__getDosUnixDrivePrefix0__( void ) { #ifdef NOJAVA_java_io_VMFile_getDosUnixDrivePrefix0 jcgo_jniNoNativeFunc(); return jnull; #else JCGO_JNI_BLOCK(0) return (java_lang_String)jcgo_jniLeave(jcgo_pJniEnv, (jobject)JCGO_JNI_FUNC(Java_java_io_VMFile_getDosUnixDrivePrefix0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)))); #endif } JCGO_NOSEP_INLINE java_lang_String CFASTCALL java_io_VMFile__getVolumeCurDir0__Ls( java_lang_String path ) { #ifdef NOJAVA_java_io_VMFile_getVolumeCurDir0 jcgo_jniNoNativeFunc(); return jnull; #else JCGO_JNI_BLOCK(1) return (java_lang_String)jcgo_jniLeave(jcgo_pJniEnv, (jobject)JCGO_JNI_FUNC(Java_java_io_VMFile_getVolumeCurDir0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jstring)JCGO_JNI_TOLOCALREF(1, path))); #endif } JCGO_NOSEP_INLINE java_lang_String CFASTCALL java_io_VMFile__getDriveCurDir__IZ( jint drive, jboolean useCache ) { { java_lang_String path; path= (java_lang_String)jnull; if (drive > 0 && JCGO_ARRAY_NZLENGTH(java_io_VMFile__driveDirCache) > drive && (!useCache || (path= ((java_lang_String)JCGO_ARRAY_NZLACCESS(java_io_VMFile__driveDirCache, drive))) == jnull)) { path= (java_io_VMFile__getDriveCurDir0__I( drive)); if (path != jnull && (java_lang_String__length__( path)) > 0) { path= (java_io_VMFile__normPlatformPath__Ls( path)); if ((java_lang_String__charAt__I( path, 0)) == java_io_VMFile__FILE_SEP) { path= java_lang_VMSystem__concat0X__LsLs( (java_io_VMFile__drivePathPrefix__I( drive)), path); } } else { java_lang_String drivePrefix; java_lang_String filename; drivePrefix= java_lang_VMSystem__concat0X__LsLs( (java_io_VMFile__drivePathPrefix__I( drive)), JCGO_STRREF_OF(jcgo_string3_VMThrwbl)); filename= (java_io_VMFile__realPath0__LsIA( drivePrefix, (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, (jint)1))); if ((filename == drivePrefix || filename == jnull || (java_lang_String__length__( (path= (java_io_VMFile__normPlatformPath__Ls( filename))))) <= (jint)2 || (java_io_VMFile__driveIndexOf__C( (JCGO_CALL_FINALF(path) java_lang_String__charAt__I( path, 0)))) != drive || (JCGO_CALL_FINALF(path) java_lang_String__charAt__I( path, (jint)1)) != (jchar)58/*':'*/ || (JCGO_CALL_FINALF(path) java_lang_String__charAt__I( path, (jint)2)) != java_io_VMFile__FILE_SEP) && ((path= (java_io_VMFile__getVolumeCurDir0__Ls( drivePrefix))) == jnull || (java_lang_String__length__( (path= (java_io_VMFile__normPlatformPath__Ls( path))))) <= (jint)2 || (java_io_VMFile__driveIndexOf__C( (java_lang_String__charAt__I( path, 0)))) != drive || (java_lang_String__charAt__I( path, (jint)1)) != (jchar)58/*':'*/ || (java_lang_String__charAt__I( path, (jint)2)) != java_io_VMFile__FILE_SEP)) { return (java_lang_String)jnull; } } if (((java_lang_String)JCGO_ARRAY_NZLACCESS(java_io_VMFile__driveDirCache, drive)) == jnull) { *(java_lang_String*)&JCGO_ARRAY_NZLACCESS(java_io_VMFile__driveDirCache, drive)= path; } } return path; } } JCGO_NOSEP_FRWINL jint CFASTCALL java_io_VMFile__isCaseSensitive0__( void ) { #ifdef NOJAVA_java_io_VMFile_isCaseSensitive0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(0) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_isCaseSensitive0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class))); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_FRWINL jint CFASTCALL java_io_VMFile__dirDataSizeAndIsFind0__( void ) { #ifdef NOJAVA_java_io_VMFile_dirDataSizeAndIsFind0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(0) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_dirDataSizeAndIsFind0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class))); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_FRWINL jint CFASTCALL java_io_VMFile__dirOpNeedsSync0__( void ) { #ifdef NOJAVA_java_io_VMFile_dirOpNeedsSync0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(0) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_dirOpNeedsSync0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class))); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_INLINE jint CFASTCALL java_io_VMFile__access0__LsIII( java_lang_String path, jint chkRead, jint chkWrite, jint chkExec ) { #ifdef NOJAVA_java_io_VMFile_access0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(1) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_access0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jstring)JCGO_JNI_TOLOCALREF(1, path), chkRead, chkWrite, chkExec); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_INLINE jint CFASTCALL java_io_VMFile__isRegFileOrDir0__Ls( java_lang_String path ) { #ifdef NOJAVA_java_io_VMFile_isRegFileOrDir0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(1) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_isRegFileOrDir0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jstring)JCGO_JNI_TOLOCALREF(1, path)); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_INLINE jint CFASTCALL java_io_VMFile__pathListPlatformSep0__Ls( java_lang_String pathlist ) { #ifdef NOJAVA_java_io_VMFile_pathListPlatformSep0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(1) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_pathListPlatformSep0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jstring)JCGO_JNI_TOLOCALREF(1, pathlist)); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_INLINE jchar CFASTCALL java_io_VMFile__pathListPlatformSep__Ls( java_lang_String pathlist ) { { jint val; jchar ch; val= (java_io_VMFile__pathListPlatformSep0__Ls( pathlist)); return (jchar)(val > 0? (jchar)val : (jchar)(((JCGO_CALL_FINALF(pathlist) java_lang_String__length__( pathlist)) > (jint)2 && (java_lang_String__charAt__I( pathlist, (jint)1)) == (jchar)58/*':'*/ && (java_io_VMFile__driveIndexOf__C( (java_lang_String__charAt__I( pathlist, 0)))) > 0 && ((ch= (java_lang_String__charAt__I( pathlist, (jint)2))) == (jchar)47/*'/'*/ || ch == (jchar)92/*'\\'*/)) || (java_lang_String__indexOf__II( pathlist, (jchar)59/*';'*/, 0)) >= 0 || ((java_lang_String__indexOf__II( pathlist, (jchar)92/*'\\'*/, 0)) > 0 && (val= (java_lang_String__indexOf__II( pathlist, (jchar)58/*':'*/, 0))) > (jint)1 && (java_lang_String__indexOf__II( pathlist, (jchar)58/*':'*/, val + (jint)1)) < 0)? (jchar)59/*';'*/ : (jchar)((ch= java_io_VMFile__PATH_SEP) == (jchar)59/*';'*/ || (ch != (jchar)58/*':'*/ && (java_lang_String__indexOf__II( pathlist, (jchar)58/*':'*/, 0)) >= 0)? (jchar)58/*':'*/ : ch))); } } JCGO_NOSEP_INLINE jlong CFASTCALL java_io_VMFile__currentTime0__I( jint isNano ) { #ifdef NOJAVA_java_io_VMFile_currentTime0 jcgo_jniNoNativeFunc(); return (jlong)0; #else jlong jcgo_retval; JCGO_JNI_BLOCK(0) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_currentTime0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), isNano); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_INLINE jObjectArr CFASTCALL java_io_VMFile__list__Ls( java_lang_String path ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { jbyteArr dirdata; jObjectArr names; jint dirDSize; dirDSize= java_io_VMFile__DIR_DATASIZE_ISFIND; if (dirDSize < 0) { dirDSize= (-dirDSize); } dirdata= (jbyteArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jbyte), 0, dirDSize); path= (java_io_VMFile__normVolumeColon__Ls( path)); if (java_io_VMFile__DIR_OP_LOCK != jnull) { { JCGO_SYNC_BLOCKSAFENZ(java_io_VMFile__DIR_OP_LOCK) { names= (java_io_VMFile__listInner__LsBA( path, dirdata)); } JCGO_SYNC_END } } else { names= (java_io_VMFile__listInner__LsBA( path, dirdata)); } return names; } } JCGO_NOSEP_STATIC jboolean CFASTCALL java_io_VMFile__isDirectory__Ls( java_lang_String path ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { return (jboolean)((JCGO_CALL_FINALF(path) java_lang_String__equals__Lo( path, (java_lang_Object)JCGO_STRREF_OF(jcgo_string3_VMThrwbl))) || (java_io_VMFile__isRegFileOrDir0__Ls( (java_io_VMFile__normVolumeColon__Ls( path)))) == (jint)2); } } JCGO_NOSEP_FRWINL jlong CFASTCALL java_io_VMFile__currentTime__Z( jboolean isNano ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { return (java_io_VMFile__currentTime0__I( isNano? (jint)1 : 0)); } } JCGO_NOSEP_FRWINL java_lang_String CFASTCALL java_io_VMFile__getFileSeparator__( void ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { return (java_lang_String__valueOf__C( java_io_VMFile__FILE_SEP)); } } JCGO_NOSEP_FRWINL java_lang_String CFASTCALL java_io_VMFile__getPathSeparator__( void ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { return (java_lang_String__valueOf__C( java_io_VMFile__PATH_SEP)); } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__pathParentOf__Ls( java_lang_String path ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { jint prefixLen; jint pos; prefixLen= (java_io_VMFile__pathPrefixLength__Ls( path)); if ((java_lang_String__length__( path)) == prefixLen) { return (java_lang_String)jnull; } pos= (java_lang_String__lastIndexOf__I( path, java_io_VMFile__FILE_SEP)); if (pos <= prefixLen) { pos= prefixLen; } return pos > 0? (java_lang_String__substring__II( path, 0, pos)) : jnull; } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__makeAbsPath__Ls( java_lang_String path ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { java_lang_String curDir; jint prefixLen; prefixLen= (java_io_VMFile__pathPrefixLength__Ls( path)); if (prefixLen > 0) { if (java_io_VMFile__IS_UNIX_FS) { return path; } if (prefixLen > (jint)2) { jObject jcgo_rcvrL1; struct java_lang_StringBuilder_s jcgo_stackobj1; struct java_lang_String_s jcgo_stackobj2; return (java_lang_String__charAt__I( path, prefixLen - (jint)1)) == (jchar)58/*':'*/? (jcgo_rcvrL1= (jObject)(jcgo_rcvrL1= (jObject)(java_lang_String__substring__II( path, 0, prefixLen)), java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__this__( JCGO_STACKOBJ_NEW(jcgo_stackobj1, java_lang_StringBuilder_methods)), (java_lang_String)jcgo_rcvrL1), (java_lang_String__valueOf__CX( java_io_VMFile__FILE_SEP, JCGO_STACKOBJ_NEW(jcgo_stackobj2, java_lang_String_methods))))), java_lang_String__new__L5dy9e( java_lang_StringBuilder__append__Ls( (java_lang_StringBuilder)jcgo_rcvrL1, (java_lang_String__substring__I( path, prefixLen))))) : path; } if (prefixLen == (jint)1) { jObject jcgo_rcvrL1; return (curDir= (java_io_VMFile__getCurDir__())) != jnull && (prefixLen= (java_io_VMFile__pathPrefixLength__Ls( curDir))) > 0? (jcgo_rcvrL1= (jObject)(java_lang_String__substring__II( curDir, 0, prefixLen > (jint)3? prefixLen - (jint)1 : prefixLen)), java_io_VMFile__pathAppendName__LsLs( (java_lang_String)jcgo_rcvrL1, (java_lang_String__substring__I( path, (jint)1)))) : jnull; } curDir= (java_io_VMFile__getDriveCurDir__IZ( (java_io_VMFile__driveIndexOf__C( (java_lang_String__charAt__I( path, 0)))), (jboolean)jtrue)); path= (java_lang_String__substring__I( path, (jint)2)); } else { curDir= (java_io_VMFile__getCurDir__()); if ((java_lang_String__equals__Lo( path, (java_lang_Object)JCGO_STRREF_OF(jcgo_string3_VMThrwbl)))) { return curDir; } } return curDir != jnull? (java_io_VMFile__pathAppendName__LsLs( curDir, (java_lang_String__length__( path)) > (jint)1 && (java_lang_String__charAt__I( path, 0)) == (jchar)46/*'.'*/ && (java_lang_String__charAt__I( path, (jint)1)) == java_io_VMFile__FILE_SEP? (java_lang_String__substring__I( path, (jint)2)) : path)) : jnull; } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__collapsePathDots__Ls( java_lang_String path ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { jint ofs; jint skip; ofs= (java_io_VMFile__pathPrefixLength__Ls( path)); skip= 0; { jint pos; pos= (java_lang_String__length__( path)); for (; pos > ofs; pos--) { jint next; next= pos; pos= (JCGO_CALL_FINALF(path) java_lang_String__lastIndexOf__II( path, java_io_VMFile__FILE_SEP, next - (jint)1)) + (jint)1; if (pos <= ofs) { pos= ofs; } if (next - (jint)1 == pos && (java_lang_String__charAt__I( path, pos)) == (jchar)46/*'.'*/) { jObject jcgo_rcvrL1; if ((java_lang_String__length__( path)) == next) { if (pos <= ofs) { if (pos > 0) { path= (java_lang_String__substring__II( path, 0, pos)); } break; } next--; } path= (jcgo_rcvrL1= (jObject)(java_lang_String__substring__II( path, 0, next - (jint)1)), java_lang_VMSystem__concat0X__LsLs( (java_lang_String)jcgo_rcvrL1, (java_lang_String__substring__I( path, next + (jint)1)))); } else { if (next - (jint)1 > pos && (java_lang_String__charAt__I( path, pos)) == (jchar)46/*'.'*/ && (java_lang_String__charAt__I( path, pos + (jint)1)) == (jchar)46/*'.'*/) { jint i; i= pos + (jint)2; if (!java_io_VMFile__IS_UNIX_FS) { while (i < next && (java_lang_String__charAt__I( path, i)) == (jchar)46/*'.'*/) { i++; } } if (i == next) { skip+= next - pos; } } if (skip > 0) { jint i; jObject jcgo_rcvrL1; i= pos; skip--; if ((java_lang_String__length__( path)) == next) { next--; if (pos <= ofs) { if (pos <= 0) { path= JCGO_STRREF_OF(jcgo_string3_VMThrwbl); i= (jint)1; } } else { i--; } } path= (jcgo_rcvrL1= (jObject)(java_lang_String__substring__II( path, 0, i)), java_lang_VMSystem__concat0X__LsLs( (java_lang_String)jcgo_rcvrL1, (java_lang_String__substring__I( path, next + (jint)1)))); } } } } return path; } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__canonPathCase__Ls( java_lang_String path ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { if (!java_io_VMFile__IS_CASE_SENSITIVE) { java_lang_String name; java_lang_String canonName; jbyteArr dirdata; java_lang_Object lockObj; jint prefixLen; jint pos; jint dirDSize; jchar sep; prefixLen= (java_io_VMFile__pathPrefixLength__Ls( path)); name= (java_lang_String__substring__II( path, 0, prefixLen)); canonName= (java_lang_VMAccessorJavaLang__toUpperCaseLatinVMSystem__Ls( name)); if (canonName != name) { path= java_lang_VMSystem__concat0X__LsLs( canonName, (java_lang_String__substring__I( path, prefixLen))); } pos= prefixLen; sep= java_io_VMFile__FILE_SEP; dirDSize= java_io_VMFile__DIR_DATASIZE_ISFIND; dirdata= (jbyteArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jbyte), 0, dirDSize >= 0? dirDSize : (-dirDSize)); lockObj= java_io_VMFile__DIR_OP_LOCK; while ((JCGO_CALL_FINALF(path) java_lang_String__length__( path)) > pos) { jint next; jint i; next= (java_lang_String__indexOf__II( path, sep, pos)); if (next < 0) { next= (java_lang_String__length__( path)); } i= pos; while (i < next && (java_lang_String__charAt__I( path, i)) == (jchar)46/*'.'*/) { i++; } if (i < next) { java_lang_String curPath; curPath= (java_lang_String__substring__II( path, 0, next)); name= (java_lang_String__substring__II( path, pos, next)); if (dirDSize > 0) { if (pos > prefixLen) { jintArr resArr; java_lang_String filename; canonName= (java_lang_String__substring__II( path, 0, pos - (jint)1)); resArr= (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, (jint)1); filename= (java_io_VMFile__realPath0__LsIA( canonName, resArr)); (gnu_java_nio_VMAccessorGnuJavaNio__checkIOResCodeVMChannel__I( JCGO_ARRAY_NZIACCESS(resArr, 0))); if (filename != canonName && filename != jnull) { curPath= (java_io_VMFile__pathAppendName__LsLs( (java_io_VMFile__normPlatformPath__Ls( filename)), name)); } } if (lockObj != jnull) { { JCGO_SYNC_BLOCKSAFENZ(lockObj) { canonName= (java_io_VMFile__canonPathCaseMatch__LsBA( curPath, dirdata)); } JCGO_SYNC_END } } else { canonName= (java_io_VMFile__canonPathCaseMatch__LsBA( curPath, dirdata)); } if (canonName == jnull || (java_lang_String__indexOf__II( name, (jchar)42/*'*'*/, 0)) >= 0 || (java_lang_String__indexOf__II( name, (jchar)63/*'?'*/, 0)) >= 0) { break; } } else { jlongArr devInodeArr; jint res; devInodeArr= (jlongArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jlong), 0, (jint)2); JCGO_ARRAY_NZJACCESS(devInodeArr, 0)= JLONG_C(-1); res= (java_io_VMFile__getLnkDevInode0__LsJA( curPath, devInodeArr)); if (res < 0 && (java_io_VMFile__isIOErrorNoEntity0__I( res)) != 0) { break; } (gnu_java_nio_VMAccessorGnuJavaNio__checkIOResCodeVMChannel__I( res)); if (JCGO_ARRAY_NZJACCESS(devInodeArr, 0) == JLONG_C(-1) || JCGO_ARRAY_NZJACCESS(devInodeArr, (jint)1) == JLONG_C(0)) { break; } curPath= (java_lang_String__substring__II( path, 0, pos > prefixLen? pos - (jint)1 : pos)); if (lockObj != jnull) { { JCGO_SYNC_BLOCKSAFENZ(lockObj) { canonName= (java_io_VMFile__canonPathCaseFind__LsBALs( curPath, dirdata, name)); } JCGO_SYNC_END } } else { canonName= (java_io_VMFile__canonPathCaseFind__LsBALs( curPath, dirdata, name)); } if (canonName == jnull) { break; } if ((JCGO_CALL_FINALF(canonName) java_lang_String__length__( canonName)) == 0) { if (lockObj != jnull) { { JCGO_SYNC_BLOCKSAFENZ(lockObj) { canonName= (java_io_VMFile__canonPathCaseScan__LsBAJA( curPath, dirdata, devInodeArr)); } JCGO_SYNC_END } } else { canonName= (java_io_VMFile__canonPathCaseScan__LsBAJA( curPath, dirdata, devInodeArr)); } if (canonName == jnull || (java_lang_String__length__( canonName)) == 0) { break; } } } if (!(JCGO_CALL_FINALF(canonName) java_lang_String__equals__Lo( canonName, (java_lang_Object)name))) { jObject jcgo_rcvrL1; struct java_lang_StringBuilder_s jcgo_stackobj1; path= (jcgo_rcvrL1= (jObject)java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__this__( JCGO_STACKOBJ_NEW(jcgo_stackobj1, java_lang_StringBuilder_methods)), (java_lang_String__substring__II( path, 0, pos))), canonName), java_lang_String__new__L5dy9e( java_lang_StringBuilder__append__Ls( (java_lang_StringBuilder)jcgo_rcvrL1, (java_lang_String__substring__I( path, next))))); next= (java_lang_String__length__( canonName)) + pos; } } pos= next + (jint)1; } } return path; } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__normPlatformPath__Ls( java_lang_String path ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { java_lang_String normPath; jint len; jchar sep; len= (JCGO_CALL_FINALF(path) java_lang_String__length__( path)); if (len == 0) { return JCGO_STRREF_OF(jcgo_string3_VMThrwbl); } normPath= (java_io_VMFile__normPlatformPath0__Ls( path)); if (normPath != jnull && (java_lang_String__length__( normPath)) > 0) { jchar ch; if (!java_io_VMFile__IS_UNIX_FS && (ch= (java_lang_String__charAt__I( normPath, 0))) >= (jchar)97/*'a'*/ && ch <= (jchar)122/*'z'*/ && (java_lang_String__length__( normPath)) > (jint)1 && (java_lang_String__charAt__I( normPath, (jint)1)) == (jchar)58/*':'*/) { jObject jcgo_rcvrL1; normPath= (jcgo_rcvrL1= (jObject)(java_lang_String__valueOf__C( (jchar)(ch - ((jint)(jchar)97/*'a'*/ - (jchar)65/*'A'*/)))), java_lang_VMSystem__concat0X__LsLs( (java_lang_String)jcgo_rcvrL1, (java_lang_String__substring__I( normPath, (jint)1)))); } return normPath; } sep= java_io_VMFile__FILE_SEP; if (java_io_VMFile__IS_UNIX_FS) { path= (java_lang_String__replace__CC( path, (jchar)92/*'\\'*/, sep)); if (len > (jint)1) { jint drive; if ((java_lang_String__charAt__I( path, (jint)1)) == (jchar)58/*':'*/ && (drive= (java_io_VMFile__driveIndexOf__C( (java_lang_String__charAt__I( path, 0))))) > 0) { jObject jcgo_rcvrL1; struct java_lang_StringBuilder_s jcgo_stackobj1; struct java_lang_String_s jcgo_stackobj2; struct java_lang_String_s jcgo_stackobj3; path= drive == java_io_VMFile__defaultDrive? (len > (jint)2? (java_lang_String__substring__I( path, (jint)2)) : JCGO_STRREF_OF(jcgo_string3_VMThrwbl)) : (jcgo_rcvrL1= (jObject)(jcgo_rcvrL1= (jObject)java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__this__( JCGO_STACKOBJ_NEW(jcgo_stackobj1, java_lang_StringBuilder_methods)), java_io_VMFile__DOS_UNIX_DRIVE_PREFIX), (java_lang_String__valueOf__CX( (jchar)(drive + ((jchar)97/*'a'*/ - (jint)1)), JCGO_STACKOBJ_NEW(jcgo_stackobj2, java_lang_String_methods)))), java_lang_StringBuilder__append__Ls( (java_lang_StringBuilder)jcgo_rcvrL1, (len != (jint)2 && (java_lang_String__charAt__I( path, (jint)2)) != sep? (java_lang_String__valueOf__CX( sep, JCGO_STACKOBJ_NEW(jcgo_stackobj3, java_lang_String_methods))) : JCGO_STRREF_OF(jcgo_string3_String6D)))), java_lang_String__new__L5dy9e( java_lang_StringBuilder__append__Ls( (java_lang_StringBuilder)jcgo_rcvrL1, (java_lang_String__substring__I( path, (jint)2))))); len= (java_lang_String__length__( path)); } if ((java_lang_String__charAt__I( path, len - (jint)1)) == sep && len > (jint)1) { path= (java_lang_String__substring__II( path, 0, len - (jint)1)); } } } else { if (len > (jint)2 && (java_lang_String__charAt__I( path, 0)) == (jchar)47/*'/'*/) { if ((java_lang_String__charAt__I( path, (jint)2)) == (jchar)58/*':'*/ && (java_io_VMFile__driveIndexOf__C( (java_lang_String__charAt__I( path, (jint)1)))) > 0) { path= (java_lang_String__substring__I( path, (jint)1)); if (len == (jint)3) { path= java_lang_VMSystem__concat0X__LsLs( (java_lang_String)path, (java_lang_String__valueOf__C( sep))); } len= (java_lang_String__length__( path)); } else { java_lang_String prefix; jint pos; jchar ch; prefix= java_io_VMFile__DOS_UNIX_DRIVE_PREFIX; pos= (java_lang_String__length__( prefix)) + (jint)1; if (pos <= len && (java_lang_String__startsWith__Ls( path, prefix)) && (ch= (java_lang_String__charAt__I( path, pos - (jint)1))) >= (jchar)97/*'a'*/ && ch <= (jchar)122/*'z'*/ && (len == pos || (java_lang_String__charAt__I( path, pos)) == (jchar)47/*'/'*/)) { jObject jcgo_rcvrL1; struct java_lang_StringBuilder_s jcgo_stackobj4; struct java_lang_String_s jcgo_stackobj5; path= (jcgo_rcvrL1= (jObject)java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__this__( JCGO_STACKOBJ_NEW(jcgo_stackobj4, java_lang_StringBuilder_methods)), (java_lang_String__substring__II( path, pos - (jint)1, pos))), JCGO_STRREF_OF(jcgo_string441_Mdclnt)), java_lang_String__new__L5dy9e( java_lang_StringBuilder__append__Ls( (java_lang_StringBuilder)jcgo_rcvrL1, (len != pos? (java_lang_String__substring__I( path, pos)) : (java_lang_String__valueOf__CX( sep, JCGO_STACKOBJ_NEW(jcgo_stackobj5, java_lang_String_methods))))))); len= (java_lang_String__length__( path)); } } } path= (java_lang_String__replace__CC( path, (jchar)47/*'/'*/, sep)); if (len > (jint)1) { jchar ch; if ((java_lang_String__charAt__I( path, (jint)1)) == (jchar)58/*':'*/ && (ch= (java_lang_String__charAt__I( path, 0))) >= (jchar)97/*'a'*/ && ch <= (jchar)122/*'z'*/) { jObject jcgo_rcvrL1; path= (jcgo_rcvrL1= (jObject)(java_lang_String__valueOf__C( (jchar)(ch - ((jint)(jchar)97/*'a'*/ - (jchar)65/*'A'*/)))), java_lang_VMSystem__concat0X__LsLs( (java_lang_String)jcgo_rcvrL1, (java_lang_String__substring__I( path, (jint)1)))); } if ((java_lang_String__charAt__I( path, len - (jint)1)) == sep && (len > (jint)3 || ((java_lang_String__charAt__I( path, (jint)1)) != (jchar)58/*':'*/ && (java_lang_String__charAt__I( path, len - (jint)2)) != sep))) { path= (java_lang_String__substring__II( path, 0, len - (jint)1)); } } } return path; } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__normPlatformListOfPaths__Ls( java_lang_String pathlist ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { java_lang_String properPathSep; jint pos; jchar sep; struct java_lang_String_s jcgo_stackobj1; sep= (java_io_VMFile__pathListPlatformSep__Ls( pathlist)); pos= 0; properPathSep= sep != java_io_VMFile__PATH_SEP? (java_lang_String__valueOf__CX( java_io_VMFile__PATH_SEP, JCGO_STACKOBJ_NEW(jcgo_stackobj1, java_lang_String_methods))) : jnull; do { java_lang_String path; java_lang_String normPath; jint next; next= (JCGO_CALL_FINALF(pathlist) java_lang_String__indexOf__II( pathlist, sep, pos)); if (next < 0) { next= (java_lang_String__length__( pathlist)); } else { if (properPathSep != jnull) { jObject jcgo_rcvrL1; struct java_lang_StringBuilder_s jcgo_stackobj2; pathlist= (jcgo_rcvrL1= (jObject)java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__this__( JCGO_STACKOBJ_NEW(jcgo_stackobj2, java_lang_StringBuilder_methods)), (java_lang_String__substring__II( pathlist, 0, next))), properPathSep), java_lang_String__new__L5dy9e( java_lang_StringBuilder__append__Ls( (java_lang_StringBuilder)jcgo_rcvrL1, (java_lang_String__substring__I( pathlist, next + (jint)1))))); } } path= (java_lang_String__substring__II( pathlist, pos, next)); normPath= (java_io_VMFile__normPlatformPath__Ls( path)); if (path != normPath) { jObject jcgo_rcvrL1; struct java_lang_StringBuilder_s jcgo_stackobj3; pathlist= (jcgo_rcvrL1= (jObject)java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__this__( JCGO_STACKOBJ_NEW(jcgo_stackobj3, java_lang_StringBuilder_methods)), (java_lang_String__substring__II( pathlist, 0, pos))), normPath), java_lang_String__new__L5dy9e( java_lang_StringBuilder__append__Ls( (java_lang_StringBuilder)jcgo_rcvrL1, (java_lang_String__substring__I( pathlist, next))))); next= (java_lang_String__length__( normPath)) + pos; } pos= next + (jint)1; } while ((java_lang_String__length__( pathlist)) >= pos); return pathlist; } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__normVolumeColon__Ls( java_lang_String path ) { { jint len; len= (JCGO_CALL_FINALF(path) java_lang_String__length__( path)); return len > (jint)1? ((java_lang_String__charAt__I( path, len - (jint)1)) == (jchar)58/*':'*/ && (java_io_VMFile__pathPrefixLength__Ls( path)) == len? java_lang_VMSystem__concat0X__LsLs( path, JCGO_STRREF_OF(jcgo_string3_VMThrwbl)) : path) : len > 0? path : JCGO_STRREF_OF(jcgo_string3_VMThrwbl); } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__getenvPlatform__Ls( java_lang_String name ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { java_lang_String value; value= (java_io_VMFile__getenv0__Ls( name)); if (value != jnull && (java_lang_String__length__( value)) == 0) { value= (java_lang_String)jnull; } return value; } } JCGO_NOSEP_FRWINL java_lang_String CFASTCALL java_io_VMFile__getLineSeparator__( void ) { JCGO_CLINIT_TRIG(java_io_VMFile__class); { java_lang_String newline; newline= (java_io_VMFile__getLineSeparator0__()); return newline != jnull && (java_lang_String__length__( newline)) > 0? newline : JCGO_STRREF_OF(jcgo_string3_PrntStrm); } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__pathAppendName__LsLs( java_lang_String path, java_lang_String name ) { { jint len; struct java_lang_StringBuilder_s jcgo_stackobj1; struct java_lang_String_s jcgo_stackobj2; len= (JCGO_CALL_FINALF(path) java_lang_String__length__( path)); return len > 0? ((JCGO_CALL_FINALF(name) java_lang_String__length__( name)) > 0? ((java_lang_String__charAt__I( path, len - (jint)1)) != java_io_VMFile__FILE_SEP? java_lang_String__new__L5dy9e( java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__append__Ls( java_lang_StringBuilder__this__( JCGO_STACKOBJ_NEW(jcgo_stackobj1, java_lang_StringBuilder_methods)), path), (java_lang_String__valueOf__CX( java_io_VMFile__FILE_SEP, JCGO_STACKOBJ_NEW(jcgo_stackobj2, java_lang_String_methods)))), name)) : java_lang_VMSystem__concat0X__LsLs( path, name)) : path) : name; } } JCGO_NOSEP_STATIC jObjectArr CFASTCALL java_io_VMFile__listInner__LsBA( java_lang_String path, jbyteArr dirdata ) { { java_lang_String filename; jObjectArr JCGO_TRY_VOLATILE names; JCGO_TRY_VOLATILE jint count; filename= path; if (java_io_VMFile__DIR_DATASIZE_ISFIND > 0) { filename= (java_io_VMFile__realPath0__LsIA( path, (jintArr)jcgo_newArray(JCGO_CORECLASS_FOR(OBJT_jint), 0, (jint)1))); filename= (java_io_VMFile__pathAppendName__LsLs( filename != path && filename != jnull? (java_io_VMFile__normPlatformPath__Ls( filename)) : path, JCGO_STRREF_OF(jcgo_string2_VMFile))); } filename= (java_io_VMFile__dirOpenReadFirst0__BALs( dirdata, filename)); if (filename == jnull || (java_lang_String__length__( filename)) == 0) { return (jObjectArr)jnull; } ; { JCGO_TRY_BLOCK { names= (jObjectArr)jcgo_newArray(JCGO_CLASSREF_OF(java_lang_String__class), 0, (jint)1); count= 0; do { if (!(JCGO_CALL_FINALF(filename) java_lang_String__equals__Lo( filename, (java_lang_Object)JCGO_STRREF_OF(jcgo_string3_VMThrwbl))) && !(java_lang_String__equals__Lo( filename, (java_lang_Object)JCGO_STRREF_OF(jcgo_string301_VMSstmPr)))) { if (JCGO_ARRAY_LENGTH(names) <= count) { jObjectArr newNames; newNames= (jObjectArr)jcgo_newArray(JCGO_CLASSREF_OF(java_lang_String__class), 0, JCGO_SHR_F(count, (jint)1) + count + (jint)32); (java_lang_System__arraycopy__LoILoII( (java_lang_Object)names, (java_lang_Object)newNames, 0, 0, count)); names= newNames; } *(java_lang_String*)&JCGO_ARRAY_NZLACCESS(names, count++)= filename; } filename= (java_io_VMFile__dirReadNext0__BA( dirdata)); } while (filename != jnull && (java_lang_String__length__( filename)) > 0); } JCGO_TRY_LEAVE { (java_io_VMFile__dirClose0__BA( dirdata)); } JCGO_TRY_FINALLYEND } if (JCGO_ARRAY_LENGTH(names) > count) { jObjectArr newNames; newNames= (jObjectArr)jcgo_newArray(JCGO_CLASSREF_OF(java_lang_String__class), 0, count); (java_lang_System__arraycopy__LoILoII( (java_lang_Object)names, (java_lang_Object)newNames, 0, 0, count)); names= newNames; } return names; } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__canonPathCaseMatch__LsBA( java_lang_String curPath, jbyteArr dirdata ) { { java_lang_String JCGO_TRY_VOLATILE canonName; canonName= (java_io_VMFile__dirOpenReadFirst0__BALs( dirdata, curPath)); if (canonName != jnull && (java_lang_String__length__( canonName)) > 0) { { JCGO_TRY_BLOCK { java_lang_String filename; filename= (java_io_VMFile__dirReadNext0__BA( dirdata)); if (filename != jnull && (java_lang_String__length__( filename)) > 0) { canonName= (java_lang_String)jnull; do { filename= (java_io_VMFile__dirReadNext0__BA( dirdata)); } while (filename != jnull && (java_lang_String__length__( filename)) > 0); } } JCGO_TRY_LEAVE { (java_io_VMFile__dirClose0__BA( dirdata)); } JCGO_TRY_FINALLYEND } } else { jint res; res= (java_io_VMFile__access0__LsIII( curPath, 0, 0, 0)); if (res < 0 && (java_io_VMFile__isIOErrorNoEntity0__I( res)) == 0) { (gnu_java_nio_VMAccessorGnuJavaNio__checkIOResCodeVMChannel__I( res)); } canonName= (java_lang_String)jnull; } return canonName; } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__canonPathCaseFind__LsBALs( java_lang_String curPath, jbyteArr dirdata, java_lang_String name ) { { java_lang_String JCGO_TRY_VOLATILE canonName; canonName= (java_io_VMFile__dirOpenReadFirst0__BALs( dirdata, curPath)); if (canonName != jnull) { if ((java_lang_String__length__( canonName)) > 0) { { JCGO_TRY_BLOCK { do { if ((JCGO_CALL_FINALF(canonName) java_lang_String__equals__Lo( canonName, (java_lang_Object)name))) { break; } canonName= (java_io_VMFile__dirReadNext0__BA( dirdata)); } while (canonName != jnull && (java_lang_String__length__( canonName)) > 0); } JCGO_TRY_LEAVE { (java_io_VMFile__dirClose0__BA( dirdata)); } JCGO_TRY_FINALLYEND } if (canonName == jnull) { canonName= JCGO_STRREF_OF(jcgo_string3_String6D); } } else { canonName= (java_lang_String)jnull; } } return canonName; } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__canonPathCaseScan__LsBAJA( java_lang_String curPath, jbyteArr dirdata, jlongArr devInodeArr ) { { java_lang_String JCGO_TRY_VOLATILE canonName; canonName= (java_io_VMFile__dirOpenReadFirst0__BALs( dirdata, curPath)); if (canonName != jnull && (java_lang_String__length__( canonName)) > 0) { { JCGO_TRY_BLOCK { jlong stDev; jlong stIno; jint compared; stDev= JCGO_ARRAY_JACCESS(devInodeArr, 0); stIno= JCGO_ARRAY_NZJACCESS(devInodeArr, (jint)1); compared= 0; do { if (!(JCGO_CALL_FINALF(canonName) java_lang_String__equals__Lo( canonName, (java_lang_Object)JCGO_STRREF_OF(jcgo_string3_VMThrwbl))) && !(java_lang_String__equals__Lo( canonName, (java_lang_Object)JCGO_STRREF_OF(jcgo_string301_VMSstmPr)))) { jint res; JCGO_ARRAY_NZJACCESS(devInodeArr, 0)= JLONG_C(-1); res= (java_io_VMFile__getLnkDevInode0__LsJA( (java_io_VMFile__pathAppendName__LsLs( curPath, canonName)), devInodeArr)); if (res >= 0) { if (JCGO_ARRAY_NZJACCESS(devInodeArr, 0) == stDev && JCGO_ARRAY_NZJACCESS(devInodeArr, (jint)1) == stIno) { java_lang_String filename; if (compared > 0) { break; } filename= (java_io_VMFile__dirReadNext0__BA( dirdata)); if (filename == jnull || (java_lang_String__length__( filename)) == 0) { break; } JCGO_ARRAY_NZJACCESS(devInodeArr, 0)= JLONG_C(-1); if ((java_io_VMFile__getLnkDevInode0__LsJA( (java_io_VMFile__pathAppendName__LsLs( curPath, filename)), devInodeArr)) >= 0 && JCGO_ARRAY_NZJACCESS(devInodeArr, 0) == stDev && JCGO_ARRAY_NZJACCESS(devInodeArr, (jint)1) == stIno) { canonName= (java_lang_String)jnull; } break; } compared++; } else { if ((java_io_VMFile__isIOErrorNoEntity0__I( res)) == 0) { (gnu_java_nio_VMAccessorGnuJavaNio__checkIOResCodeVMChannel__I( res)); } } } canonName= (java_io_VMFile__dirReadNext0__BA( dirdata)); } while (canonName != jnull && (java_lang_String__length__( canonName)) > 0); } JCGO_TRY_LEAVE { (java_io_VMFile__dirClose0__BA( dirdata)); } JCGO_TRY_FINALLYEND } } return canonName; } } JCGO_NOSEP_STATIC jint CFASTCALL java_io_VMFile__pathPrefixLength__Ls( java_lang_String path ) { { jint pos; jint len; pos= 0; len= (JCGO_CALL_FINALF(path) java_lang_String__length__( path)); if (len > 0) { jchar sep; sep= java_io_VMFile__FILE_SEP; if (java_io_VMFile__IS_UNIX_FS) { if ((java_lang_String__charAt__I( path, 0)) == sep) { pos= (jint)1; } } else { if ((java_lang_String__charAt__I( path, 0)) == sep) { pos= (jint)1; if (len != (jint)1 && (java_lang_String__charAt__I( path, (jint)1)) == sep) { while (++pos < len) { if ((java_lang_String__charAt__I( path, pos)) == sep) { break; } } if (pos < len) { while (++pos < len) { if ((java_lang_String__charAt__I( path, pos)) == sep) { break; } } if (pos < len) { pos++; } } } } else { pos= (java_lang_String__indexOf__II( path, (jchar)58/*':'*/, 0)) + (jint)1; if (pos > (jint)1) { jint i; if ((java_lang_String__lastIndexOf__II( path, (jchar)46/*'.'*/, pos - (jint)2)) >= 0 || ((i= (java_lang_String__lastIndexOf__II( path, sep, pos - (jint)2))) > 0 && (java_lang_String__lastIndexOf__II( path, sep, i - (jint)1)) >= 0)) { pos= 0; } else { if (pos < len) { if ((java_lang_String__charAt__I( path, pos)) == sep) { pos++; } else { if (pos > (jint)2 && (java_lang_String__indexOf__II( path, (jchar)58/*':'*/, pos)) < 0 && (java_lang_String__indexOf__II( path, sep, pos + (jint)1)) < 0) { pos= 0; } } } } } } } } return pos; } } JCGO_NOSEP_STATIC jint CFASTCALL java_io_VMFile__driveIndexOf__C( jchar ch ) { { if (ch >= (jchar)65/*'A'*/ && ch <= (jchar)90/*'Z'*/) { return ch - ((jchar)65/*'A'*/ - (jint)1); } if (ch >= (jchar)97/*'a'*/ && ch <= (jchar)122/*'z'*/) { return ch - ((jchar)97/*'a'*/ - (jint)1); } return (-(jint)1); } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__drivePathPrefix__I( jint drive ) { { return drive > 0 && drive <= (jint)(jchar)90/*'Z'*/ - (jchar)65/*'A'*/ + (jint)1? java_lang_VMSystem__concat0X__LsLs( (java_lang_String__valueOf__C( (jchar)(drive + ((jchar)65/*'A'*/ - (jint)1)))), JCGO_STRREF_OF(jcgo_string441_Mdclnt)) : jnull; } } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__getCurDir__( void ) { { java_lang_String path; path= ((java_lang_String)JCGO_ARRAY_NZLACCESS(java_io_VMFile__driveDirCache, 0)); if (path == jnull) { jint drive; path= (java_io_VMFile__getDriveCurDir0__I( 0)); if (path == jnull || (java_lang_String__length__( path)) == 0) { return (java_lang_String)jnull; } if (java_io_VMFile__IS_UNIX_FS && (java_lang_String__length__( path)) > (jint)2 && (java_lang_String__charAt__I( path, (jint)1)) == (jchar)58/*':'*/ && (java_lang_String__charAt__I( path, (jint)2)) == java_io_VMFile__FILE_SEP) { java_io_VMFile__defaultDrive= (java_io_VMFile__driveIndexOf__C( (java_lang_String__charAt__I( path, 0)))); } path= (java_io_VMFile__normPlatformPath__Ls( path)); *(java_lang_String*)&JCGO_ARRAY_NZLACCESS(java_io_VMFile__driveDirCache, 0)= path; if (JCGO_ARRAY_NZLENGTH(java_io_VMFile__driveDirCache) > (jint)1 && (java_lang_String__length__( path)) > (jint)2 && (java_lang_String__charAt__I( path, (jint)1)) == (jchar)58/*':'*/ && (drive= (java_io_VMFile__driveIndexOf__C( (java_lang_String__charAt__I( path, 0))))) > 0 && (java_lang_String__charAt__I( path, (jint)2)) == java_io_VMFile__FILE_SEP) { *(java_lang_String*)&JCGO_ARRAY_NZLACCESS(java_io_VMFile__driveDirCache, drive)= path; } } return path; } } JCGO_NOSEP_STATIC jint CFASTCALL java_io_VMFile__getFilePathSepChar0__I( jint isPath ) { #ifdef NOJAVA_java_io_VMFile_getFilePathSepChar0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(0) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_getFilePathSepChar0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), isPath); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_STATIC jint CFASTCALL java_io_VMFile__isIOErrorNoEntity0__I( jint res ) { #ifdef NOJAVA_java_io_VMFile_isIOErrorNoEntity0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(0) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_isIOErrorNoEntity0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), res); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__realPath0__LsIA( java_lang_String path, jintArr resArr ) { #ifdef NOJAVA_java_io_VMFile_realPath0 jcgo_jniNoNativeFunc(); return jnull; #else JCGO_JNI_BLOCK(2) return (java_lang_String)jcgo_jniLeave(jcgo_pJniEnv, (jobject)JCGO_JNI_FUNC(Java_java_io_VMFile_realPath0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jstring)JCGO_JNI_TOLOCALREF(1, path), (jintArray)JCGO_JNI_TOLOCALREF(2, resArr))); #endif } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__getDriveCurDir0__I( jint drive ) { #ifdef NOJAVA_java_io_VMFile_getDriveCurDir0 jcgo_jniNoNativeFunc(); return jnull; #else JCGO_JNI_BLOCK(0) return (java_lang_String)jcgo_jniLeave(jcgo_pJniEnv, (jobject)JCGO_JNI_FUNC(Java_java_io_VMFile_getDriveCurDir0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), drive)); #endif } JCGO_NOSEP_STATIC jint CFASTCALL java_io_VMFile__getLnkDevInode0__LsJA( java_lang_String path, jlongArr devInodeArr ) { #ifdef NOJAVA_java_io_VMFile_getLnkDevInode0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(2) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_getLnkDevInode0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jstring)JCGO_JNI_TOLOCALREF(1, path), (jlongArray)JCGO_JNI_TOLOCALREF(2, devInodeArr)); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__dirOpenReadFirst0__BALs( jbyteArr dirdata, java_lang_String path ) { #ifdef NOJAVA_java_io_VMFile_dirOpenReadFirst0 jcgo_jniNoNativeFunc(); return jnull; #else JCGO_JNI_BLOCK(2) return (java_lang_String)jcgo_jniLeave(jcgo_pJniEnv, (jobject)JCGO_JNI_FUNC(Java_java_io_VMFile_dirOpenReadFirst0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jbyteArray)JCGO_JNI_TOLOCALREF(1, dirdata), (jstring)JCGO_JNI_TOLOCALREF(2, path))); #endif } JCGO_NOSEP_STATIC java_lang_String CFASTCALL java_io_VMFile__dirReadNext0__BA( jbyteArr dirdata ) { #ifdef NOJAVA_java_io_VMFile_dirReadNext0 jcgo_jniNoNativeFunc(); return jnull; #else JCGO_JNI_BLOCK(1) return (java_lang_String)jcgo_jniLeave(jcgo_pJniEnv, (jobject)JCGO_JNI_FUNC(Java_java_io_VMFile_dirReadNext0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jbyteArray)JCGO_JNI_TOLOCALREF(1, dirdata))); #endif } JCGO_NOSEP_STATIC jint CFASTCALL java_io_VMFile__dirClose0__BA( jbyteArr dirdata ) { #ifdef NOJAVA_java_io_VMFile_dirClose0 jcgo_jniNoNativeFunc(); return (jint)0; #else jint jcgo_retval; JCGO_JNI_BLOCK(1) jcgo_retval= JCGO_JNI_FUNC(Java_java_io_VMFile_dirClose0)(jcgo_pJniEnv, (jclass)JCGO_JNI_TOLOCALREF(0, JCGO_CLASSREF_OF(java_io_VMFile__class)), (jbyteArray)JCGO_JNI_TOLOCALREF(1, dirdata)); jcgo_jniLeave(jcgo_pJniEnv, NULL); return jcgo_retval; #endif } JCGO_NOSEP_STATIC void CFASTCALL java_io_VMFile__class__0( void ) { jObject jcgo_rcvrL1; JCGO_CLINIT_BEGIN(java_io_VMFile__class); java_io_VMFile__IS_CASE_SENSITIVE= (java_io_VMFile__isCaseSensitive0__()) != 0; java_io_VMFile__IS_UNIX_FS= (java_io_VMFile__isUniRootFileSys0__()) != 0; java_io_VMFile__FILE_SEP= (jchar)(java_io_VMFile__getFilePathSepChar0__I( 0)); java_io_VMFile__PATH_SEP= (jchar)(java_io_VMFile__getFilePathSepChar0__I( (jint)1)); java_io_VMFile__DIR_DATASIZE_ISFIND= (java_io_VMFile__dirDataSizeAndIsFind0__()); java_io_VMFile__DIR_OP_LOCK= (java_io_VMFile__dirOpNeedsSync0__()) != 0? java_lang_Object__new__() : jnull; java_io_VMFile__driveDirCache= (jObjectArr)jcgo_newArray(JCGO_CLASSREF_OF(java_lang_String__class), 0, java_io_VMFile__IS_UNIX_FS? (jint)1 : (jint)(jchar)90/*'Z'*/ - (jchar)65/*'A'*/ + (jint)2); java_io_VMFile__DOS_UNIX_DRIVE_PREFIX= (jcgo_rcvrL1= (jObject)(java_io_VMFile__getDosUnixDrivePrefix0__()), JCGO_CALL_FINALF((java_lang_String)jcgo_rcvrL1) java_lang_String__replace__CC( (java_lang_String)jcgo_rcvrL1, (jchar)47/*'/'*/, java_io_VMFile__FILE_SEP)); JCGO_CLINIT_DONE(java_io_VMFile__class); } JCGO_NOSEP_DATA CONST struct jcgo_methods_s java_io_VMFile_methods= { JCGO_CLASSREF_OF(java_io_VMFile__class), JCGO_GCJDESCR_ZEROINIT OBJT_java_io_VMFile, 0, NULL, JCGO_CLINIT_INIT(java_io_VMFile__class__0) 0 }; JCGO_NOSEP_DATA struct java_io_VMFile_class_s java_io_VMFile__class ATTRIBNONGC= { { &java_lang_Class_methods, JCGO_MON_INIT JCGO_OBJREF_OF(*(java_lang_Object)&java_io_VMFile_methods), JCGO_STRREF_OF(jcgo_string1_VMFile), JCGO_CLASSREF_OF(java_lang_Object__class), ((jObjectArr)JCGO_OBJREF_OF(jcgo_array3_Object)), 0x1d0 } }; JCGO_NOSEP_GCDATA java_lang_Object java_io_VMFile__DIR_OP_LOCK ATTRIBGCBSS= jnull; JCGO_NOSEP_GCDATA jObjectArr java_io_VMFile__driveDirCache ATTRIBGCBSS= jnull; JCGO_NOSEP_GCDATA java_lang_String java_io_VMFile__DOS_UNIX_DRIVE_PREFIX ATTRIBGCBSS= jnull; JCGO_NOSEP_DATA jint java_io_VMFile__DIR_DATASIZE_ISFIND= (jint)0; JCGO_NOSEP_DATA jint java_io_VMFile__defaultDrive= (jint)0; JCGO_NOSEP_DATA jchar java_io_VMFile__FILE_SEP= (jchar)0; JCGO_NOSEP_DATA jchar java_io_VMFile__PATH_SEP= (jchar)0; JCGO_NOSEP_DATA jboolean java_io_VMFile__IS_CASE_SENSITIVE= (jboolean)0; JCGO_NOSEP_DATA jboolean java_io_VMFile__IS_UNIX_FS= (jboolean)0; JCGO_NOSEP_DATA CONST jcgo_arrtype63_GmCnnctn jcgo_array3_VMFile= { (jvtable)&jbyteArr_methods, JCGO_MON_INIT 14, { (jbyte)(jchar)106/*'j'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)118/*'v'*/, (jbyte)(jchar)97/*'a'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)111/*'o'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)86/*'V'*/, (jbyte)(jchar)77/*'M'*/, (jbyte)(jchar)70/*'F'*/, (jbyte)(jchar)105/*'i'*/, (jbyte)(jchar)108/*'l'*/, (jbyte)(jchar)101/*'e'*/ } }; JCGO_NOSEP_DATA CONST jcgo_arrtype640_Mdclnt jcgo_array4_VMFile= { (jvtable)&jbyteArr_methods, JCGO_MON_INIT 3, { (jbyte)(jchar)42/*'*'*/, (jbyte)(jchar)46/*'.'*/, (jbyte)(jchar)42/*'*'*/ } }; JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string1_VMFile JCGO_THRD_ATTRNONGC= { &java_lang_String_methods, JCGO_MON_INIT (java_lang_Object)JCGO_OBJREF_OF(jcgo_array3_VMFile), 0, 14, (jint)0xb4691dcfL }; JCGO_NOSEP_DATA JCGO_NOTHR_CONST struct java_lang_String_s jcgo_string2_VMFile JCGO_THRD_ATTRNONGC= { &java_lang_String_methods, JCGO_MON_INIT (java_lang_Object)JCGO_OBJREF_OF(jcgo_array4_VMFile), 0, 3, (jint)0xa366L }; #ifdef CHKALL_java_io_VMFile #include "jcgochke.h" #endif #endif