Skip to content
This repository was archived by the owner on Apr 4, 2023. It is now read-only.

Conversation

benjdewan
Copy link
Contributor

If an HTTP connection returns unsuccessfully, gorequest will return nil for the response object, so attempting to view the StatusCode will trigger a SIGSEGV panic.

It is therefore only safe to make that check after ensuring that the response is non-nil

I have a code snippet that I used to track down the root of the panic, as well as verify that this fix works: https://gist.github.com/benjdewan/4941195e771a42f076383c95aaf796d8

When we hit this corner case the errors gorequest may return will never be properly processed by ProcessErrors because they are not returned by the compose API, but from within the gorequest library or one of its dependencies which is why the new code does not invoke that method.

If an HTTP connection returns unsuccessfully, gorequest
will return nil for the response object, so attempting
to view the StatusCode will trigger a SIGSEGV panic().

It is therefore only safe to make that check after
ensuring that the response is non-nil
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant