1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* ext/dbm/dbm.c (fdbm_initialize): Make the file variable

volatile, because FilePathValue() currently does not protect the
  given variable from GC. (Probably it should)

* ext/sdbm/init.c (fsdbm_initialize): Ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@23057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
knu 2009-03-23 12:45:23 +00:00
parent 61e6f9b81c
commit 38d2bcd952
3 changed files with 12 additions and 2 deletions

View file

@ -1,3 +1,11 @@
Mon Mar 23 21:41:14 2009 Akinori MUSHA <knu@iDaemons.org>
* ext/dbm/dbm.c (fdbm_initialize): Make the file variable
volatile, because FilePathValue() currently does not protect the
given variable from GC. (Probably it should)
* ext/sdbm/init.c (fsdbm_initialize): Ditto.
Mon Mar 23 19:22:14 2009 Akinori MUSHA <knu@iDaemons.org>
* file.c (rb_file_s_lstat): Back out.

View file

@ -91,7 +91,8 @@ fdbm_alloc(VALUE klass)
static VALUE
fdbm_initialize(int argc, VALUE *argv, VALUE obj)
{
VALUE file, vmode, vflags;
volatile VALUE file;
VALUE vmode, vflags;
DBM *dbm;
struct dbmdata *dbmp;
int mode, flags = 0;

View file

@ -82,7 +82,8 @@ fsdbm_alloc(VALUE klass)
static VALUE
fsdbm_initialize(int argc, VALUE *argv, VALUE obj)
{
VALUE file, vmode;
volatile VALUE file;
VALUE vmode;
DBM *dbm;
struct dbmdata *dbmp;
int mode;