| Age | Commit message (Collapse) | Author |
|
To get rid of a bug of `onig_region_set` which takes `int`s
instead of `OnigPosition`s, set elements of `beg` and `end`
members directly, for the time being.
|
|
* Handle BasicObject in drb
Also fix a bug in rescue clause of any_to_s because sprintf
does not handle the %l modifier.
Fixes [Bug #7833]
* Do not send a reply to the client if there is a connection error
This allows for normal TCP shutdown (fin-ack-fin-ack instead of
fin-ack-push-rst).
Patch from pierre@mouraf.org (Pierre-Alexandre Meyer).
Fixes [Bug #2339]
* Detect fork and do not reuse forked connections in drb
This associates each DRbConn with a pid, and if the pid changes,
it closes any DRbConns in the pool with a pid that no longer
matches. This fixes DRb servers from sending messages intended
for one client to another client after forking.
Fixes [Bug #2718]
Fixes [Bug #14471]
|
|
Notes:
Merged-By: kou <kou@clear-code.com>
|
|
in active_units
Hoping to fix:
http://ci.rvm.jp/results/trunk-mjit@silicon-docker/2311375
|
|
`if (unit->iseq)` might have referred to a freed unit. Therefore this
commit delays its free.
|
|
|
|
Now I'm not exactly sure why I needed to check `stop_worker_p` after
`mjit_copy_cache_from_main_thread` of `convert_unit_to_func`
in 4161674b2fbea6bdd01783ac5d3b39d88db22972.
If it's for avoiding deadlock under `in_gc` condition, we should keep it.
However, if it's not the case and it's just for retrying accidental
compilation failure or just to avoid `MJIT_ATOMIC_SET` and
`compact_all_jit_code`, I think this quick stop path is not mandatory.
Because this path is somewhat problematic in my upcoming fix in
mjit_worker, let me try to remove this first and see how CI goes.
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/2542
|
|
|
|
Coverity Scan points out that all the return values of GLOB_ALLOC_N are
NULL-checked except this call.
|
|
Coverity Scan points out that ext/socket/unixsocket.c may pass -1 to
rb_update_max_fd. I'm unsure whether it can happen actually or not, but
it would be good for the function to reject a negative value.
|
|
Found by Coverity Scan
|
|
|
|
If fmt is NULL, ptitle is uninitialized and used.
SETPROCTITLE(3bsd) says "If fmt is NULL, the process title is restored",
but looks like the feature is not implemented in missing/setproctitle.c.
At least the source code of ruby does not pass NULL to the function.
So I assume this function requires non-NULL fmt.
This issue was found by Coverity Scan.
|
|
|
|
|
|
This macro is used here before defined in ruby.h.
|
|
Cited from mount(8):
```
strictatime
Always update the file access time when reading from a
file. Without this option the filesystem may default to a
less strict update mode, where some access time updates
are skipped for performance reasons. This option could be
ignored if it is not supported by the filesystem.
```
|
|
Notes:
Merged-By: kou <kou@clear-code.com>
|
|
|
|
|
|
Notes:
Merged-By: kou <kou@clear-code.com>
|
|
ioctl accepts int as request arguments on some platforms, but some
requests are more than INT_MAX, e.g., RNDGETENTCNT(0x80045200).
Passing (0x80045200 | (-1 << 32)) may work around the issue, but it may
not work on a platform where ioctl accepts unsigned long. So this
change uses NUM2LONG and then casts it to int.
|
|
On Android, nl_langinfo() always returns UTF-8 even when LANG is C.
|
|
On Android 28, LOG_PERROR is defined, but not implemented yet.
This change skips Syslog#log explicitly.
|
|
|
|
NtSocketsInitialized behavior changed in e33b1690, requiring
a call to rb_w32_sysinit for starting Windows Sockets.
This commit removes NtSocketsInitialized entirely to avoid confusion.
Signed-off-by: Gabriel Nagy <gabriel.nagy@puppet.com>
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/1465
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/2151
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/2447
|
|
When reading Binding#irb, the file of the calling source is reflected in __FILE__ and __dir__.
Notes:
Merged: https://github.com/ruby/ruby/pull/1896
|
|
In the grammar, all expressions are statements, but not all
statements are expressions. Some parts of the grammar accept
expressions and not other types of statements, which causes
similar looking code to parse differently due to operator
precedence.
Mostly from Dan0042 (Daniel DeLorme).
Fixes [Bug #16092]
|
|
|
|
For BasicObject, bind the Kernel respond_to? instance method to the
object and call it instead of calling the method directly.
Also, use bind_call(recv, ...) for better performance.
Fixes [Bug #16127]
Notes:
Merged: https://github.com/ruby/ruby/pull/2546
|
|
To avoid:
cannot locate symbol "modf" referenced by .../_ruby_mjit_XXX.so"
|
|
Otherwise, requiring syslog results in:
cannot locate symbol "__android_log_print" referenced by "syslog.so"
|
|
The root directory may be owned by the current user, for example, in
chroot environment.
|
|
|
|
* ext/openssl/ossl_asn1.c (Init_ossl_asn1): prefer
`rb_gc_register_mark_object`, which is better for constant
objects, over `rb_gc_register_address` for global/static
variables which can be re-assigned at runtime. [Bug #16196]
|
|
|
|
|
|
Suggested by ko1. rb_fatal requires GVL so just in case one lacks,
print that information and let the process die. As commented,
we cannot print the given messages on such situations.
|
|
Requested by ko1 that ability of calling rb_raise from anywhere
outside of GVL is "too much". Give up that part, move the GVL
aquisition routine into gc.c, and make our new gc_raise().
|
|
Indicate that the situation is fatal.
|
|
|
|
* ext/openssl/ossl_asn1.c (Init_ossl_asn1): register the static
variable to grab an internal object, before creating the object.
otherwise the just-created object could get collected during the
global variable list allocation. [Bug #16196]
|
|
https://gist.github.com/ko1/a88834d744a0682711dab53fd9015a04#file-brlog-trunk-nopara-20191005-235153-L393-L472
https://github.com/rubygems/rubygems/commit/707408d8e7
|
|
https://github.com/rubygems/rubygems/commit/1bd77f53df
|
|
https://github.com/rubygems/rubygems/commit/1de8f39ac4
|
|
|