diff options
| author | Jeremy Evans <code@jeremyevans.net> | 2024-07-18 12:08:06 -0700 |
|---|---|---|
| committer | Jeremy Evans <code@jeremyevans.net> | 2024-09-12 07:24:02 -0700 |
| commit | ad761ad2d0a63270fbd243a477dc962446a5116e (patch) | |
| tree | 1d06d07e3781b77d3ba515fc9c08336b455a4480 /array.c | |
| parent | b10500b72b2a696608015c2a2e60422a296d8614 (diff) | |
Release GVL for get{pwnam,pwuid,grgid,grnam}_r calls in process.c
Do not release GVL around get{pwuid,pwnam,grgid,grnam} calls,
as doing so is not thread-safe. Another C extension could have
a concurrent call, and derefencing the returned pointer from
these calls could result in a segfault.
Have rb_home_dir_of call rb_getpwdirnam_for_login if available,
so it can use getpwnam_r and release GVL in a thread-safe manner.
This is related to GVL releasing work in [Bug #20587].
Notes
Notes:
Merged: https://github.com/ruby/ruby/pull/11202
Diffstat (limited to 'array.c')
0 files changed, 0 insertions, 0 deletions
