Project

General

Profile

Actions

Bug #5171

closed

[PATCH] date_core: RB_GC_GUARD temporary strings

Added by normalperson (Eric Wong) over 13 years ago. Updated over 13 years ago.

Status:
Closed
Target version:
ruby -v:
ruby 1.9.4dev (2011-08-07 trunk 32885) [x86_64-linux]
Backport:
[ruby-core:38861]

Description

ext/date/date_core.c (d_lite_inspect): RB_GC_GUARD temporary strings

test/date/test_date.rb: add test case with GC.stress=true

RSTRING_PTR() should not be used directly on function calls:

  1. it may drop the VALUE reference from the stack/register set
    and and allow GC to collect it
  2. macros can evaluate the function call multiple times

If DNDEBUG is not defined, Date#inspect_raw also has the same issue.
However, I think removing the Date#inspect_raw code entirely is better.

If you prefer to use "git pull":
git pull git://bogomips.org/ruby date_core-gc-guard


Files

Actions

Also available in: Atom PDF

Like0
Like0Like0