OpenAPITools / openapi-diff

Utility for comparing two OpenAPI specifications.
Apache License 2.0
787 stars 152 forks source link

StackOverflowError during Processing #422

Open KaiSuchomel opened 1 year ago

KaiSuchomel commented 1 year ago

Hey, with the attached openapi_prev_reduced.yam it is possible to force a StackOverflowError!!

Exception in thread "main" java.lang.StackOverflowError
    at java.base/java.util.Arrays.spliterator(Arrays.java:5296)
    at java.base/java.util.Arrays.stream(Arrays.java:5447)
    at java.base/java.util.Arrays.stream(Arrays.java:5428)
    at java.base/java.util.stream.Stream.of(Stream.java:1426)
    at org.openapitools.openapidiff.core.model.ChangedExtensions.getChangedElements(ChangedExtensions.java:27)
    at org.openapitools.openapidiff.core.model.ComposedChanged.isChanged(ComposedChanged.java:19)
    at org.openapitools.openapidiff.core.model.Changed.isUnchanged(Changed.java:21)
    at org.openapitools.openapidiff.core.utils.ChangedUtils.isUnchanged(ChangedUtils.java:11)
    at org.openapitools.openapidiff.core.utils.ChangedUtils.isChanged(ChangedUtils.java:19)
    at org.openapitools.openapidiff.core.compare.ExtensionsDiff.diff(ExtensionsDiff.java:78)
    at org.openapitools.openapidiff.core.compare.schemadiffresult.SchemaDiffResult.diff(SchemaDiff

openapi_prev_reduced.yaml.zip

Command used:

java -jar cli/target/openapi-diff-cli-2.1.0-SNAPSHOT-all.jar openapi_prev_reduced.yaml openapi_prev_reduced.yaml
EfimenkoAndrew commented 2 months ago

same issue. Please address it if possible