-
Notifications
You must be signed in to change notification settings - Fork 278
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Crash using binary_memory
on a dead process
#95
Comments
We recently tried to remove our workaround for this issue, but it appears to still exist in the current version 2.5.6 — the repro I posted above results in exactly the same internal crash (source line, which was not changed in #97). |
See if #115 works; I'm sorry I couldn't get to this better, it was a straightforward fix and the test should be robust enough. |
Thanks @ferd, from our testing so far this issue seems fixed, as long as we handle the possible |
erlang:process_info/2
can returnundefined
— the docs don't explain why, but it's in the typespec and definitely happens when the queried process is dead. If usingrecon:info/2
with thebinary_memory
attribute, Recon doesn't handle this return value and crashes in an internal call toproc_fake
(see here).Additionally, the typespec for
recon:info/2
doesn't includeundefined
as a possible return value, even though it can return this (e.g. if used on a dead process).Example in Elixir, because I'm not very good at Erlang syntax, but hopefully it makes sense:
The text was updated successfully, but these errors were encountered: