fix for directors, now the test-suite runs again using -directors

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@8856 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Marcelo Matus 2006-02-21 11:20:09 +00:00
commit d388046661
6 changed files with 31 additions and 10 deletions

View file

@ -1657,7 +1657,10 @@ String *vtable_method_id(Node *n)
String *name = Getattr(n, "name");
String *decl = Getattr(n, "decl");
String *local_decl = SwigType_typedef_resolve_all(decl);
Node *method_id = NewStringf("%s|%s", name, local_decl);
String *tmp = SwigType_pop_function(local_decl);
Delete(local_decl);
local_decl = tmp;
Node *method_id = NewStringf("%s|%s", name, local_decl);
Delete(local_decl);
return method_id;
}

View file

@ -1175,7 +1175,8 @@ public:
emit_action(n,f);
if (director_method) {
Printf(f->code, "} catch (Swig::DirectorException&) {\n");
Printf(f->code, "} catch (Swig::DirectorException& e) {\n");
Printf(f->code, " rb_exc_raise(e.getError());\n");
Printf(f->code, " SWIG_fail;\n");
Printf(f->code, "}\n");
}