diff --git a/src/core/org/apache/jmeter/samplers/SampleResult.java b/src/core/org/apache/jmeter/samplers/SampleResult.java index c1ed1bd6af..349c0ce572 100644 --- a/src/core/org/apache/jmeter/samplers/SampleResult.java +++ b/src/core/org/apache/jmeter/samplers/SampleResult.java @@ -389,6 +389,21 @@ public class SampleResult implements Serializable { subResult.setParent(this); } + /** + * Add a subresult read from a results file. + * + * As for addSubResult(), except that the fields don't need to be accumulated + * + * @param subResult + */ + public void storeSubResult(SampleResult subResult) { + if (subResults == null) { + subResults = new ArrayList(); + } + subResults.add(subResult); + subResult.setParent(this); + } + /** * Gets the subresults associated with this sample. * diff --git a/src/core/org/apache/jmeter/save/OldSaveService.java b/src/core/org/apache/jmeter/save/OldSaveService.java index d20370d6e5..c79ea72e19 100644 --- a/src/core/org/apache/jmeter/save/OldSaveService.java +++ b/src/core/org/apache/jmeter/save/OldSaveService.java @@ -500,7 +500,7 @@ public final class OldSaveService { Configuration[] subResults = config.getChildren(SAMPLE_RESULT_TAG_NAME); for (int i = 0; i < subResults.length; i++) { - result.addSubResult(getSampleResult(subResults[i])); + result.storeSubResult(getSampleResult(subResults[i])); } Configuration[] assResults = config.getChildren(ASSERTION_RESULT_TAG_NAME); diff --git a/src/core/org/apache/jmeter/save/converters/SampleResultConverter.java b/src/core/org/apache/jmeter/save/converters/SampleResultConverter.java index 5604c5d53c..1a56813a7a 100644 --- a/src/core/org/apache/jmeter/save/converters/SampleResultConverter.java +++ b/src/core/org/apache/jmeter/save/converters/SampleResultConverter.java @@ -309,7 +309,7 @@ public class SampleResultConverter extends AbstractCollectionConverter { if (subItem instanceof AssertionResult) { res.addAssertionResult((AssertionResult) subItem); } else if (subItem instanceof SampleResult) { - res.addSubResult((SampleResult) subItem); + res.storeSubResult((SampleResult) subItem); } else if (nodeName.equals(TAG_RESPONSE_HEADER)) { res.setResponseHeaders((String) subItem); } else if (nodeName.equals(TAG_REQUEST_HEADER)) { diff --git a/xdocs/changes.xml b/xdocs/changes.xml index 81e80237bf..c5fa04875f 100644 --- a/xdocs/changes.xml +++ b/xdocs/changes.xml @@ -158,6 +158,7 @@ The XSL stylesheets also now accept either "rc" or "rs"