summaryrefslogtreecommitdiff
path: root/gc.c
diff options
context:
space:
mode:
authortenderlove <tenderlove@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2019-04-02 19:13:12 +0000
committertenderlove <tenderlove@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2019-04-02 19:13:12 +0000
commite377eb0e75d6307ac379f575bf3caf0b8b08fab4 (patch)
tree00cbffc21ca9972791f174b23d7fdb61eb30a9b6 /gc.c
parent4283fb42bc7a4f7e6de1263756b32fdd2356bf3a (diff)
Fix ASAN error
This code was trying to access memory before unpoisoning it. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'gc.c')
-rw-r--r--gc.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gc.c b/gc.c
index 4681f1f823..d878a86b92 100644
--- a/gc.c
+++ b/gc.c
@@ -2630,8 +2630,8 @@ internal_object_p(VALUE obj)
{
RVALUE *p = (RVALUE *)obj;
void *ptr = __asan_region_is_poisoned(p, SIZEOF_VALUE);
- bool used_p = p->as.basic.flags;
unpoison_object(obj, false);
+ bool used_p = p->as.basic.flags;
if (used_p) {
switch (BUILTIN_TYPE(p)) {