< prev index next >

src/hotspot/share/prims/jvm.cpp

Print this page

        

*** 2676,2689 **** ATTRIBUTE_PRINTF(3, 0) int jio_vsnprintf(char *str, size_t count, const char *fmt, va_list args) { // Reject count values that are negative signed values converted to // unsigned; see bug 4399518, 4417214 ! if ((intptr_t)count <= 0) return -1; int result = os::vsnprintf(str, count, fmt, args); ! if (result > 0 && (size_t)result >= count) { result = -1; } return result; } --- 2676,2689 ---- ATTRIBUTE_PRINTF(3, 0) int jio_vsnprintf(char *str, size_t count, const char *fmt, va_list args) { // Reject count values that are negative signed values converted to // unsigned; see bug 4399518, 4417214 ! if ((intptr_t)count < 0) return -1; int result = os::vsnprintf(str, count, fmt, args); ! if (count > 0 && result > 0 && (size_t)result >= count) { result = -1; } return result; }
< prev index next >