mirror of
https://github.com/openjdk/jdk.git
synced 2025-08-28 15:24:43 +02:00
8308022: update for deprecated sprintf for java.base
Reviewed-by: naoto
This commit is contained in:
parent
1264902517
commit
42ca6e6942
6 changed files with 37 additions and 32 deletions
|
@ -908,10 +908,11 @@ SetClassPath(const char *s)
|
|||
if (sizeof(format) - 2 + JLI_StrLen(s) < JLI_StrLen(s))
|
||||
// s is became corrupted after expanding wildcards
|
||||
return;
|
||||
def = JLI_MemAlloc(sizeof(format)
|
||||
size_t defSize = sizeof(format)
|
||||
- 2 /* strlen("%s") */
|
||||
+ JLI_StrLen(s));
|
||||
sprintf(def, format, s);
|
||||
+ JLI_StrLen(s);
|
||||
def = JLI_MemAlloc(defSize);
|
||||
snprintf(def, defSize, format, s);
|
||||
AddOption(def, NULL);
|
||||
if (s != orig)
|
||||
JLI_MemFree((char *) s);
|
||||
|
@ -1364,8 +1365,9 @@ ParseArguments(int *pargc, char ***pargv,
|
|||
JLI_StrCCmp(arg, "-oss") == 0 ||
|
||||
JLI_StrCCmp(arg, "-ms") == 0 ||
|
||||
JLI_StrCCmp(arg, "-mx") == 0) {
|
||||
char *tmp = JLI_MemAlloc(JLI_StrLen(arg) + 6);
|
||||
sprintf(tmp, "-X%s", arg + 1); /* skip '-' */
|
||||
size_t tmpSize = JLI_StrLen(arg) + 6;
|
||||
char *tmp = JLI_MemAlloc(tmpSize);
|
||||
snprintf(tmp, tmpSize, "-X%s", arg + 1); /* skip '-' */
|
||||
AddOption(tmp, NULL);
|
||||
} else if (JLI_StrCmp(arg, "-checksource") == 0 ||
|
||||
JLI_StrCmp(arg, "-cs") == 0 ||
|
||||
|
@ -1699,8 +1701,9 @@ AddApplicationOptions(int cpathc, const char **cpathv)
|
|||
s = (char *) JLI_WildcardExpandClasspath(s);
|
||||
/* 40 for -Denv.class.path= */
|
||||
if (JLI_StrLen(s) + 40 > JLI_StrLen(s)) { // Safeguard from overflow
|
||||
envcp = (char *)JLI_MemAlloc(JLI_StrLen(s) + 40);
|
||||
sprintf(envcp, "-Denv.class.path=%s", s);
|
||||
size_t envcpSize = JLI_StrLen(s) + 40;
|
||||
envcp = (char *)JLI_MemAlloc(envcpSize);
|
||||
snprintf(envcp, envcpSize, "-Denv.class.path=%s", s);
|
||||
AddOption(envcp, NULL);
|
||||
}
|
||||
}
|
||||
|
@ -1712,8 +1715,9 @@ AddApplicationOptions(int cpathc, const char **cpathv)
|
|||
}
|
||||
|
||||
/* 40 for '-Dapplication.home=' */
|
||||
apphome = (char *)JLI_MemAlloc(JLI_StrLen(home) + 40);
|
||||
sprintf(apphome, "-Dapplication.home=%s", home);
|
||||
size_t apphomeSize = JLI_StrLen(home) + 40;
|
||||
apphome = (char *)JLI_MemAlloc(apphomeSize);
|
||||
snprintf(apphome, apphomeSize, "-Dapplication.home=%s", home);
|
||||
AddOption(apphome, NULL);
|
||||
|
||||
/* How big is the application's classpath? */
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1999, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -588,14 +588,14 @@ getGMTOffsetID()
|
|||
// Ignore daylight saving settings to calculate current time difference
|
||||
localtm.tm_isdst = 0;
|
||||
int gmt_off = (int)(difftime(mktime(&localtm), mktime(&gmt)) / 60.0);
|
||||
sprintf(buf, (const char *)"GMT%c%02.2d:%02.2d",
|
||||
snprintf(buf, sizeof(buf), (const char *)"GMT%c%02.2d:%02.2d",
|
||||
gmt_off < 0 ? '-' : '+' , abs(gmt_off / 60), gmt_off % 60);
|
||||
#else
|
||||
if (strftime(offset, 6, "%z", &localtm) != 5) {
|
||||
return strdup("GMT");
|
||||
}
|
||||
|
||||
sprintf(buf, (const char *)"GMT%c%c%c:%c%c", offset[0], offset[1], offset[2],
|
||||
snprintf(buf, sizeof(buf), (const char *)"GMT%c%c%c:%c%c", offset[0], offset[1], offset[2],
|
||||
offset[3], offset[4]);
|
||||
#endif
|
||||
return strdup(buf);
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1998, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -387,7 +387,7 @@ CreateExecutionEnvironment(int *pargc, char ***pargv,
|
|||
if (lastslash)
|
||||
*lastslash = '\0';
|
||||
|
||||
sprintf(new_runpath, LD_LIBRARY_PATH "="
|
||||
snprintf(new_runpath, new_runpath_size, LD_LIBRARY_PATH "="
|
||||
"%s:"
|
||||
"%s/lib:"
|
||||
"%s/../lib",
|
||||
|
|
|
@ -56,10 +56,10 @@ Java_java_io_Console_encoding(JNIEnv *env, jclass cls)
|
|||
char buf[64];
|
||||
int cp = GetConsoleCP();
|
||||
if (cp >= 874 && cp <= 950)
|
||||
sprintf(buf, "ms%d", cp);
|
||||
snprintf(buf, sizeof(buf), "ms%d", cp);
|
||||
else if (cp == 65001)
|
||||
sprintf(buf, "UTF-8");
|
||||
snprintf(buf, sizeof(buf), "UTF-8");
|
||||
else
|
||||
sprintf(buf, "cp%d", cp);
|
||||
snprintf(buf, sizeof(buf), "cp%d", cp);
|
||||
return JNU_NewStringPlatform(env, buf);
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1999, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1999, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -122,7 +122,7 @@ getValueInRegistry(HKEY hKey,
|
|||
/*
|
||||
* Produces custom name "GMT+hh:mm" from the given bias in buffer.
|
||||
*/
|
||||
static void customZoneName(LONG bias, char *buffer) {
|
||||
static void customZoneName(LONG bias, char *buffer, size_t bufSize) {
|
||||
LONG gmtOffset;
|
||||
int sign;
|
||||
|
||||
|
@ -134,7 +134,7 @@ static void customZoneName(LONG bias, char *buffer) {
|
|||
sign = 1;
|
||||
}
|
||||
if (gmtOffset != 0) {
|
||||
sprintf(buffer, "GMT%c%02d:%02d",
|
||||
snprintf(buffer, bufSize, "GMT%c%02d:%02d",
|
||||
((sign >= 0) ? '+' : '-'),
|
||||
gmtOffset / 60,
|
||||
gmtOffset % 60);
|
||||
|
@ -146,7 +146,7 @@ static void customZoneName(LONG bias, char *buffer) {
|
|||
/*
|
||||
* Gets the current time zone entry in the "Time Zones" registry.
|
||||
*/
|
||||
static int getWinTimeZone(char *winZoneName)
|
||||
static int getWinTimeZone(char *winZoneName, size_t winZoneNameBufSize)
|
||||
{
|
||||
DYNAMIC_TIME_ZONE_INFORMATION dtzi;
|
||||
DWORD timeType;
|
||||
|
@ -173,7 +173,7 @@ static int getWinTimeZone(char *winZoneName)
|
|||
*/
|
||||
if (dtzi.TimeZoneKeyName[0] != 0) {
|
||||
if (dtzi.DynamicDaylightTimeDisabled) {
|
||||
customZoneName(dtzi.Bias, winZoneName);
|
||||
customZoneName(dtzi.Bias, winZoneName, winZoneNameBufSize);
|
||||
return VALUE_GMTOFFSET;
|
||||
}
|
||||
wcstombs(winZoneName, dtzi.TimeZoneKeyName, MAX_ZONE_CHAR);
|
||||
|
@ -206,7 +206,7 @@ static int getWinTimeZone(char *winZoneName)
|
|||
* is disabled.
|
||||
*/
|
||||
if (val == 1) {
|
||||
customZoneName(dtzi.Bias, winZoneName);
|
||||
customZoneName(dtzi.Bias, winZoneName, winZoneNameBufSize);
|
||||
(void) RegCloseKey(hKey);
|
||||
return VALUE_GMTOFFSET;
|
||||
}
|
||||
|
@ -251,7 +251,7 @@ static int getWinTimeZone(char *winZoneName)
|
|||
if (ret == ERROR_SUCCESS) {
|
||||
if (val == 1 && tzi.DaylightDate.wMonth != 0) {
|
||||
(void) RegCloseKey(hKey);
|
||||
customZoneName(tzi.Bias, winZoneName);
|
||||
customZoneName(tzi.Bias, winZoneName, winZoneNameBufSize);
|
||||
return VALUE_GMTOFFSET;
|
||||
}
|
||||
}
|
||||
|
@ -518,7 +518,7 @@ char *findJavaTZ_md(const char *java_home_dir)
|
|||
char *std_timezone = NULL;
|
||||
int result;
|
||||
|
||||
result = getWinTimeZone(winZoneName);
|
||||
result = getWinTimeZone(winZoneName, sizeof(winZoneName));
|
||||
|
||||
if (result != VALUE_UNKNOWN) {
|
||||
if (result == VALUE_GMTOFFSET) {
|
||||
|
@ -568,6 +568,6 @@ getGMTOffsetID()
|
|||
}
|
||||
}
|
||||
|
||||
customZoneName(bias, zonename);
|
||||
customZoneName(bias, zonename, sizeof(zonename));
|
||||
return _strdup(zonename);
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 1998, 2022, Oracle and/or its affiliates. All rights reserved.
|
||||
* Copyright (c) 1998, 2023, Oracle and/or its affiliates. All rights reserved.
|
||||
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
|
||||
*
|
||||
* This code is free software; you can redistribute it and/or modify it
|
||||
|
@ -134,18 +134,19 @@ getEncodingInternal(LCID lcid)
|
|||
|
||||
static char* getConsoleEncoding()
|
||||
{
|
||||
char* buf = malloc(16);
|
||||
size_t buflen = 16;
|
||||
char* buf = malloc(buflen);
|
||||
int cp;
|
||||
if (buf == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
cp = GetConsoleCP();
|
||||
if (cp >= 874 && cp <= 950)
|
||||
sprintf(buf, "ms%d", cp);
|
||||
snprintf(buf, buflen, "ms%d", cp);
|
||||
else if (cp == 65001)
|
||||
sprintf(buf, "UTF-8");
|
||||
snprintf(buf, buflen, "UTF-8");
|
||||
else
|
||||
sprintf(buf, "cp%d", cp);
|
||||
snprintf(buf, buflen, "cp%d", cp);
|
||||
return buf;
|
||||
}
|
||||
|
||||
|
@ -575,7 +576,7 @@ GetJavaProperties(JNIEnv* env)
|
|||
sprops.os_name = "Windows (unknown)";
|
||||
break;
|
||||
}
|
||||
sprintf(buf, "%d.%d", majorVersion, minorVersion);
|
||||
snprintf(buf, sizeof(buf), "%d.%d", majorVersion, minorVersion);
|
||||
sprops.os_version = _strdup(buf);
|
||||
#if defined(_M_AMD64)
|
||||
sprops.os_arch = "amd64";
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue