// jvm.h - Header file for private implementation information. -*- c++ -*-
-/* Copyright (C) 1998, 1999, 2000, 2001 Free Software Foundation
+/* Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation
This file is part of libgcj.
return elts;
}
-extern "C" void _Jv_ThrowBadArrayIndex (jint bad_index);
-extern "C" void _Jv_ThrowNullPointerException (void);
+extern "C" void _Jv_ThrowBadArrayIndex (jint bad_index)
+ __attribute__((noreturn));
+extern "C" void _Jv_ThrowNullPointerException (void)
+ __attribute__((noreturn));
extern "C" jobject _Jv_NewArray (jint type, jint size)
__attribute__((__malloc__));
extern "C" jobject _Jv_NewMultiArray (jclass klass, jint dims, ...)
SET ("file.separator", "\\");
SET ("path.separator", ";");
SET ("line.separator", "\r\n");
- SET ("java.io.tmpdir", GetTempPath ());
// Use GetCurrentDirectory to set 'user.dir'.
DWORD buflen = MAX_PATH;
- char* buffer = (char *) malloc (buflen);
+ char *buffer = (char *) _Jv_MallocUnchecked (buflen);
if (buffer != NULL)
{
if (GetCurrentDirectory (buflen, buffer))
- SET ("user.dir", buffer);
- free (buffer);
+ SET ("user.dir", buffer);
+
+ if (GetTempPath (buflen, buffer))
+ SET ("java.io.tmpdir", buffer);
+
+ _Jv_free (buffer);
}
// Use GetUserName to set 'user.name'.
buflen = 257; // UNLEN + 1
- buffer = (char *) malloc (buflen);
+ buffer = (char *) _Jv_MallocUnchecked (buflen);
if (buffer != NULL)
{
if (GetUserName (buffer, &buflen))
SET ("user.name", buffer);
- free (buffer);
+ _Jv_free (buffer);
}
// According to the api documentation for 'GetWindowsDirectory()', the
// directory or a default directory. On the 3 windows machines I checked
// only 1 had it set. If it's not set, JDK1.3.1 seems to set it to
// the windows directory, so we'll do the same.
- char* userHome = NULL;
- if ((userHome = ::getenv( "HOMEPATH" )) == NULL )
+ char *userHome = NULL;
+ if ((userHome = ::getenv ("HOMEPATH")) == NULL )
{
// Check HOME since it's what I use.
- if ((userHome = ::getenv( "HOME" )) == NULL )
+ if ((userHome = ::getenv ("HOME")) == NULL )
{
// Not found - use the windows directory like JDK1.3.1 does.
- char* winHome = (char *)malloc (MAX_PATH);
- if ( winHome != NULL )
+ char *winHome = (char *) _Jv_MallocUnchecked (MAX_PATH);
+ if (winHome != NULL)
{
if (GetWindowsDirectory (winHome, MAX_PATH))
- SET ("user.home", winHome);
- free (winHome);
+ SET ("user.home", winHome);
+ _Jv_free (winHome);
}
}
}
- if( userHome != NULL )
+ if (userHome != NULL)
SET ("user.home", userHome);
// Get and set some OS info.
osvi.dwOSVersionInfoSize = sizeof(OSVERSIONINFO);
if (GetVersionEx (&osvi))
{
- char *buffer = (char *) malloc (30);
+ char *buffer = (char *) _Jv_MallocUnchecked (30);
if (buffer != NULL)
{
- sprintf (buffer, "%d.%d", (int)osvi.dwMajorVersion, (int)osvi.dwMinorVersion);
+ sprintf (buffer, "%d.%d", (int) osvi.dwMajorVersion,
+ (int) osvi.dwMinorVersion);
SET ("os.version", buffer);
- free (buffer);
+ _Jv_free (buffer);
}
switch (osvi.dwPlatformId)
// Set the OS architecture.
SYSTEM_INFO si;
GetSystemInfo (&si);
- switch( si.dwProcessorType )
+ switch (si.dwProcessorType)
{
case PROCESSOR_INTEL_386:
SET ("os.arch", "i386");
break;
}
}
-