diff options
| author | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-08-12 09:51:42 +0000 |
|---|---|---|
| committer | akr <akr@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2008-08-12 09:51:42 +0000 |
| commit | 818fcdc3a0180b19f3867da1936cf260e574a251 (patch) | |
| tree | ae8992c9ff1a107c582659eccd94b02b6475a298 | |
| parent | d63c149b8abb063867994b7c7a158de16b2263e5 (diff) | |
| download | ruby-818fcdc3a0180b19f3867da1936cf260e574a251.tar.gz ruby-818fcdc3a0180b19f3867da1936cf260e574a251.tar.xz ruby-818fcdc3a0180b19f3867da1936cf260e574a251.zip | |
* transcode.c (rb_trans_open): free ts before raise.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@18535 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
| -rw-r--r-- | ChangeLog | 4 | ||||
| -rw-r--r-- | transcode.c | 1 |
2 files changed, 5 insertions, 0 deletions
@@ -1,3 +1,7 @@ +Tue Aug 12 18:51:11 2008 Tanaka Akira <akr@fsij.org> + + * transcode.c (rb_trans_open): free ts before raise. + Tue Aug 12 18:46:36 2008 Yukihiro Matsumoto <matz@ruby-lang.org> * ext/bigdecimal/bigdecimal.c (BigDecimalCmp): should not ignore diff --git a/transcode.c b/transcode.c index bfc3382de..5cc93da63 100644 --- a/transcode.c +++ b/transcode.c @@ -648,6 +648,7 @@ rb_trans_open(const char *from, const char *to, int flags) for (i = 0; i < ts->num_trans; i++) { tc = rb_transcoding_open(ts->elems[i].from, ts->elems[i].to, 0); if (!tc) { + xfree(ts); rb_raise(rb_eArgError, "converter open failed (from %s to %s)", from, to); } ts->elems[i].tc = tc; |
