summaryrefslogtreecommitdiff
path: root/error.c
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-04-10 10:07:07 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-04-10 10:07:07 +0000
commitf45fc7daa00faa561c1bce32b598c06e1ec0d978 (patch)
treefe81d286401abd73b9c04ffea1c2b543e4316483 /error.c
parenta59dd4b489a86e4a2560e8f56a642b7e87550da8 (diff)
* error.c (rb_enc_raise): new function to raise an exception with
the message in the given encoding. patched by now (Nikolai Weibull) at [ruby-core:41160]. [Feature #5650] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35283 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'error.c')
-rw-r--r--error.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/error.c b/error.c
index 0562de5d84..84286cfcec 100644
--- a/error.c
+++ b/error.c
@@ -1729,6 +1729,19 @@ Init_Exception(void)
}
void
+rb_enc_raise(rb_encoding *enc, VALUE exc, const char *fmt, ...)
+{
+ va_list args;
+ VALUE mesg;
+
+ va_start(args, fmt);
+ mesg = rb_enc_vsprintf(enc, fmt, args);
+ va_end(args);
+
+ rb_exc_raise(rb_exc_new3(exc, mesg));
+}
+
+void
rb_raise(VALUE exc, const char *fmt, ...)
{
va_list args;