From: Bernhard Glueck Date: 2002-09-28T03:03:27+09:00 Subject: Visual C++ and RUBY Hi there! I am again evaluating RUBY as an embedded scripting language for a large C++ application which is developed using Microsoft VIsual C++ .NET 2003 Beta 1 ( aka "Everet" ) its the successor to Visual Studio .NET or VC7.0 and has VC7.1 as its version tag as well as the MSVC compiler version 1310.. Ok back to my question. I am using RUBY 1.6.7 and everything works ok.. however someone pointed out to me that whenever an exception occurs in RUBY code RUBy executes a long jump ...and thus the stack gets not cleaned up ... in particular consider this example: class SomeClass { .... } void MyFunction() { SomeClass localInstanceOnStack; CallSomeRubyMethod( "MyRubyMethod" ); } Now when the call to the ruby method "MyRubyMethod" results in an exception, the "LocalInstanceOnStack" class var will never be deleted/the destructor not called..... Is this true ? Or are the problems different with the longjmp "feature" ? I need to clarify this, since i am embedding Ruby into a high available server application so it needs to be stable..... If this is true, is there any way around this, or any future changes that will solve this ? Thanks in advance Bernahrd GLueck