Crash when parsing gRPC schemas

When I enter one of our internal gRPC server’s address in the endpoint field, Yaak instantly crashes and can’t be relaunched without crashing unless I clear its data.

I narrowed down the issue to a stack overflow “json_schema::message_to_json_schema”. If I comment out

properties.insert(f.name().to_string(), message_to_json_schema(pool, m));

then it doesn’t crash anymore.

Adding some logs show that it gets stuck in one of the many places where our protobuf messages have circular references

eg:

message Item {
 oneof typeditem {
   ArrayItem foo;
 }
}

message ArrayItem {
 //...
 Item previous;
}

I am not submitting a PR because I don’t know how to really fix this instead of just breaking the schema paring feature.

Have a nice day,

Please authenticate to join the conversation.

Upvoters
Status

Released

Board

Feedback

Tags

Bug

Date

About 1 year ago

Author

Arnaud Barisain-Monrose

Subscribe to post

Get notified by email when there are changes.