summaryrefslogtreecommitdiff
path: root/ext/syck
diff options
context:
space:
mode:
authorocean <ocean@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-10-26 00:28:39 +0000
committerocean <ocean@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2005-10-26 00:28:39 +0000
commitf44333cbff95e520e8c41b9cd455b1a16ed7cf22 (patch)
tree33074b7b12d6faa6919e026d956f5cfc2c7df1fe /ext/syck
parentc3da3df2f6918abf2dca90265f0d279a9dded30f (diff)
* ext/syck/implicit.c (syck_type_id_to_uri): should return
newly allocated memory. otherwise, type_id will be freed twice. [ruby-dev:27384] [ruby-core:6385] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'ext/syck')
-rw-r--r--ext/syck/implicit.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/ext/syck/implicit.c b/ext/syck/implicit.c
index d8016986b4..d356faf7d9 100644
--- a/ext/syck/implicit.c
+++ b/ext/syck/implicit.c
@@ -2481,7 +2481,7 @@ yy244: ++YYCURSOR;
goto yy245;
yy245:
#line 174 "implicit.re"
-{ return type_id; }
+{ return syck_strndup( type_id, strlen( type_id ) ); }
#line 2485 "<stdout>"
yy246: yych = *++YYCURSOR;
switch(yych){
@@ -2928,7 +2928,7 @@ yy264: ++YYCURSOR;
goto yy265;
yy265:
#line 172 "implicit.re"
-{ return type_id; }
+{ return syck_strndup( type_id, strlen( type_id ) ); }
#line 2932 "<stdout>"
yy266: yych = *++YYCURSOR;
switch(yych){