changeset 14557:097f47e7fe97 jdk8u262-b06

8246223: Windows build fails after JDK-8227269 Summary: MSVC 2013 uses a modified variant of C90 and requires all declarations before statements Reviewed-by: andrew Contributed-by: Alex Kashchenko <akashche@redhat.com>
author andrew
date Sun, 07 Jun 2020 18:54:32 +0100
parents 4f39a567be5b
children a8d895846054
files src/share/back/classTrack.c
diffstat 1 files changed, 11 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/back/classTrack.c	Mon Jun 01 14:46:24 2020 +0100
+++ b/src/share/back/classTrack.c	Sun Jun 07 18:54:32 2020 +0100
@@ -81,13 +81,14 @@
 struct bag *
 classTrack_processUnloads(JNIEnv *env)
 {
+    struct bag* deleted;
     debugMonitorEnter(classTrackLock);
     if (deletedSignatures == NULL) {
         // Class tracking not initialized, nobody's interested.
         debugMonitorExit(classTrackLock);
         return NULL;
     }
-    struct bag* deleted = deletedSignatures;
+    deleted = deletedSignatures;
     deletedSignatures = bagCreateBag(sizeof(char*), 10);
     debugMonitorExit(classTrackLock);
     return deleted;
@@ -101,6 +102,7 @@
 {
     jvmtiError error;
     jvmtiEnv* env = trackingEnv;
+    char* signature;
 
     if (gdata && gdata->assertOn) {
         // Check this is not already tagged.
@@ -112,7 +114,6 @@
         JDI_ASSERT(tag == NOT_TAGGED);
     }
 
-    char* signature;
     error = classSignature(klass, &signature, NULL);
     if (error != JVMTI_ERROR_NONE) {
         EXIT_ERROR(error,"signature");
@@ -127,14 +128,15 @@
 static jboolean
 setupEvents()
 {
+    jvmtiError error;
+    jvmtiEventCallbacks cb;
     jvmtiCapabilities caps;
     memset(&caps, 0, sizeof(caps));
     caps.can_generate_object_free_events = 1;
-    jvmtiError error = JVMTI_FUNC_PTR(trackingEnv, AddCapabilities)(trackingEnv, &caps);
+    error = JVMTI_FUNC_PTR(trackingEnv, AddCapabilities)(trackingEnv, &caps);
     if (error != JVMTI_ERROR_NONE) {
         return JNI_FALSE;
     }
-    jvmtiEventCallbacks cb;
     memset(&cb, 0, sizeof(cb));
     cb.ObjectFree = cbTrackingObjectFree;
     error = JVMTI_FUNC_PTR(trackingEnv, SetEventCallbacks)(trackingEnv, &cb, sizeof(cb));
@@ -154,6 +156,11 @@
 void
 classTrack_initialize(JNIEnv *env)
 {
+    jint classCount;
+    jclass *classes;
+    jvmtiError error;
+    jint i;
+
     deletedSignatures = NULL;
     classTrackLock = debugMonitorCreate("Deleted class tag lock");
     trackingEnv = getSpecialJvmti();
@@ -166,11 +173,6 @@
         EXIT_ERROR(AGENT_ERROR_INTERNAL, "Unable to setup ObjectFree tracking");
     }
 
-    jint classCount;
-    jclass *classes;
-    jvmtiError error;
-    jint i;
-
     error = allLoadedClasses(&classes, &classCount);
     if ( error == JVMTI_ERROR_NONE ) {
         for (i = 0; i < classCount; i++) {