Skip to content

Stackoverflow when using the copy constructor of an OpenApiSchema. #1095

Closed

Description

@Sventric

Using version 1.4.4 of Microsoft.OpenApi.

Describe the bug
When using the copy constructor of OpenApiSchema it comes in a recursive call and end with a stackoverflow exception.

To Reproduce

    OpenApiSchema baseSchema = new OpenApiSchema()
    {
        Type = "string",
        Format = "date"
    };

    OpenApiSchema actualSchema = new OpenApiSchema(baseSchema)
    {
        Nullable = true
    };

The "perpetrator" is the property "AdditionalProperties", this in itself is also a schema but is "copied" with AdditionalProperties = new(schema?.AdditionalProperties); so if null the constructor is again called the original parameter 'schema' and when not null it calls the constructor with AdditionalProperties as a parameter, and this is repeated untill it encounters a null and crashes.

Expected behavior
I expected to get a new OpenApiSchema with the properties from the baseSchema and the explicitly set new properties.

Activity

  1. MaggieKimani1 commented on Dec 6, 2022

    @MaggieKimani1
    Contributor

    Thank you for reporting this. This is definitely a bug caused by an oversight on our part.

  2. MaggieKimani1 commented on Dec 6, 2022

    @MaggieKimani1
    Contributor

    Update: this is now fixed in 1.4.5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

type:bugA broken experience

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions