diff --git a/Lib/csharp/std_string.i b/Lib/csharp/std_string.i index 9eff76f35..73c164153 100644 --- a/Lib/csharp/std_string.i +++ b/Lib/csharp/std_string.i @@ -38,6 +38,10 @@ class string; %typemap(typecheck) string = char *; +%typemap(throws) string %{ + SWIG_CSharpThrowException(SWIG_CSharpException, $1.c_str()); +%} + // const string & %typemap(ctype) const string & "char *" %typemap(imtype) const string & "string" @@ -56,5 +60,9 @@ class string; %typemap(typecheck) const string & = char *; +%typemap(throws) const string & %{ + SWIG_CSharpThrowException(SWIG_CSharpException, $1.c_str()); +%} + }