summaryrefslogtreecommitdiff
path: root/ext/gdbm
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-11-14 16:01:45 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2004-11-14 16:01:45 +0000
commitfa521485718447e8a936ae9bddb6df2e9aa60705 (patch)
treef5a47d2772beea7e30bd43117c33df7832c41f14 /ext/gdbm
parentaee1d3d56ccc29cfbf03d9aed9b32fe810cc0b76 (diff)
* ext/gdbm/gdbm.c (fgdbm_store): StringValue() may alter string
pointer. [ruby-dev:24783] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@7268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/gdbm')
-rw-r--r--ext/gdbm/gdbm.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ext/gdbm/gdbm.c b/ext/gdbm/gdbm.c
index 799445a89c..ac208efbe8 100644
--- a/ext/gdbm/gdbm.c
+++ b/ext/gdbm/gdbm.c
@@ -598,10 +598,11 @@ fgdbm_store(obj, keystr, valstr)
rb_gdbm_modify(obj);
StringValue(keystr);
+ StringValue(valstr);
+
key.dptr = RSTRING(keystr)->ptr;
key.dsize = RSTRING(keystr)->len;
- StringValue(valstr);
val.dptr = RSTRING(valstr)->ptr;
val.dsize = RSTRING(valstr)->len;