You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by sm...@apache.org on 2007/03/27 12:04:16 UTC

svn commit: r522851 - in /harmony/enhanced/jdktools/trunk/modules/jpda: make/ src/main/native/jdwp/common/agent/commands/

Author: smishura
Date: Tue Mar 27 03:04:13 2007
New Revision: 522851

URL: http://svn.apache.org/viewvc?view=rev&rev=522851
Log:
Apply patch for HARMONY-3304:
([jdktools][jpda] JDWP tests for method invocation fails with error <110(OUT_OF_MEMORY)>)

Modified:
    harmony/enhanced/jdktools/trunk/modules/jpda/make/exclude.common
    harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ArrayReference.cpp
    harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ClassType.cpp
    harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ObjectReference.cpp

Modified: harmony/enhanced/jdktools/trunk/modules/jpda/make/exclude.common
URL: http://svn.apache.org/viewvc/harmony/enhanced/jdktools/trunk/modules/jpda/make/exclude.common?view=diff&rev=522851&r1=522850&r2=522851
==============================================================================
--- harmony/enhanced/jdktools/trunk/modules/jpda/make/exclude.common (original)
+++ harmony/enhanced/jdktools/trunk/modules/jpda/make/exclude.common Tue Mar 27 03:04:13 2007
@@ -1,7 +1,3 @@
-#3304
-org/apache/harmony/jpda/tests/jdwp/ClassType/InvokeMethodTest.java
-org/apache/harmony/jpda/tests/jdwp/ClassType/NewInstanceTest.java
-org/apache/harmony/jpda/tests/jdwp/ObjectReference/InvokeMethodTest.java
 #3305
 org/apache/harmony/jpda/tests/jdwp/VirtualMachine/CapabilitiesNewTest.java
 #3309

Modified: harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ArrayReference.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ArrayReference.cpp?view=diff&rev=522851&r1=522850&r2=522851
==============================================================================
--- harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ArrayReference.cpp (original)
+++ harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ArrayReference.cpp Tue Mar 27 03:04:13 2007
@@ -483,4 +483,15 @@
             JDWP_TRACE_DATA("SetValues: bad type signature: " << JDWP_CHECK_NULL(signature));
             throw AgentException(JDWP_ERROR_INVALID_ARRAY);
     }           
+
+    // check if exception occured
+    {
+        jthrowable ex = jni->ExceptionOccurred();
+        
+        // indicate error if any exception occured
+        if (ex != 0) {
+            jni->ExceptionClear();
+            throw AgentException(JDWP_ERROR_INVALID_ARRAY);
+        }
+    }
 }

Modified: harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ClassType.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ClassType.cpp?view=diff&rev=522851&r1=522850&r2=522851
==============================================================================
--- harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ClassType.cpp (original)
+++ harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ClassType.cpp Tue Mar 27 03:04:13 2007
@@ -411,13 +411,13 @@
     }
     m_returnException = jni->ExceptionOccurred();
     if (m_returnException != 0) {
+        jni->ExceptionClear();
         m_returnException =
             static_cast<jthrowable>(jni->NewGlobalRef(m_returnException));
         if (m_returnException == 0) {
             m_returnError = JDWP_ERROR_OUT_OF_MEMORY;
         }
     }
-    jni->ExceptionClear();
 }
 
 //-----------------------------------------------------------------------------
@@ -551,11 +551,11 @@
     }
     m_returnException = jni->ExceptionOccurred();
     if (m_returnException != 0) {
+        jni->ExceptionClear();
         m_returnException =
             static_cast<jthrowable>(jni->NewGlobalRef(m_returnException));
         if (m_returnException == 0) {
             m_returnError = JDWP_ERROR_OUT_OF_MEMORY;
         }
     }
-    jni->ExceptionClear();
 }

Modified: harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ObjectReference.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ObjectReference.cpp?view=diff&rev=522851&r1=522850&r2=522851
==============================================================================
--- harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ObjectReference.cpp (original)
+++ harmony/enhanced/jdktools/trunk/modules/jpda/src/main/native/jdwp/common/agent/commands/ObjectReference.cpp Tue Mar 27 03:04:13 2007
@@ -860,11 +860,11 @@
     }
     m_returnException = jni->ExceptionOccurred();
     if (m_returnException != 0) {
+        jni->ExceptionClear();
         m_returnException =
             static_cast<jthrowable>(jni->NewGlobalRef(m_returnException));
         if (m_returnException == 0) {
             m_returnError = JDWP_ERROR_OUT_OF_MEMORY;
         }
     }
-    jni->ExceptionClear();
 }