mirror of
https://github.com/openjdk/jdk.git
synced 2025-09-22 20:14:43 +02:00
8212197: OpenDataException thrown when constructing CompositeData for StackTraceElement
Reviewed-by: alanb
This commit is contained in:
parent
180a8773fb
commit
a9b4ac9c37
2 changed files with 17 additions and 4 deletions
|
@ -78,14 +78,16 @@ public class StackTraceElementCompositeData extends LazyCompositeData {
|
|||
// CONTENTS OF THIS ARRAY MUST BE SYNCHRONIZED WITH
|
||||
// STACK_TRACE_ELEMENT_ATTRIBUTES!
|
||||
final Object[] stackTraceElementItemValues = {
|
||||
ste.getClassLoaderName(),
|
||||
ste.getModuleName(),
|
||||
ste.getModuleVersion(),
|
||||
// JDK 5 attributes
|
||||
ste.getClassName(),
|
||||
ste.getMethodName(),
|
||||
ste.getFileName(),
|
||||
ste.getLineNumber(),
|
||||
ste.isNativeMethod(),
|
||||
// JDK 9 attributes
|
||||
ste.getClassLoaderName(),
|
||||
ste.getModuleName(),
|
||||
ste.getModuleVersion(),
|
||||
};
|
||||
try {
|
||||
return new CompositeDataSupport(STACK_TRACE_ELEMENT_COMPOSITE_TYPE,
|
||||
|
|
|
@ -36,7 +36,7 @@ import static org.testng.Assert.*;
|
|||
|
||||
/*
|
||||
* @test
|
||||
* @bug 8139587
|
||||
* @bug 8139587 8212197
|
||||
* @modules java.management/sun.management
|
||||
* @summary Check backward compatibility of StackTraceElementCompositeData
|
||||
* @author Jaroslav Bachorik
|
||||
|
@ -154,5 +154,16 @@ public class CompatibilityTest {
|
|||
assertEquals(ste.isNativeMethod(), false);
|
||||
assertEquals(ste.getLineNumber(), 123);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testCompositeData() throws Exception {
|
||||
StackTraceElement ste = new StackTraceElement("app",
|
||||
"m", "1.0",
|
||||
"p.MyClass", "myMethod",
|
||||
"MyClass.java", 123);
|
||||
CompositeData cd = StackTraceElementCompositeData.toCompositeData(ste);
|
||||
StackTraceElement ste1 = StackTraceElementCompositeData.from(cd);
|
||||
assertEquals(ste, ste1);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue