summaryrefslogtreecommitdiff
path: root/ruby/src
diff options
context:
space:
mode:
Diffstat (limited to 'ruby/src')
-rw-r--r--ruby/src/IceRuby/Connection.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/ruby/src/IceRuby/Connection.cpp b/ruby/src/IceRuby/Connection.cpp
index 1f5c627c1dc..3d1398e8778 100644
--- a/ruby/src/IceRuby/Connection.cpp
+++ b/ruby/src/IceRuby/Connection.cpp
@@ -151,7 +151,14 @@ IceRuby_Connection_setACM(VALUE self, VALUE t, VALUE c, VALUE h)
heartbeat = static_cast<Ice::ACMHeartbeat>(FIX2LONG(heartbeatValue));
}
- (*p)->setACM(timeout, close, heartbeat);
+ try
+ {
+ (*p)->setACM(timeout, close, heartbeat);
+ }
+ catch(const IceUtil::IllegalArgumentException& ex)
+ {
+ throw RubyException(rb_eArgError, ex.reason().c_str());
+ }
}
ICE_RUBY_CATCH
return Qnil;