Fix class having method Connect() creating a name collision with SwigDirectorConnect().
Issue is fixed by prepending director methods with `SwigDirectorMethod` instead of `SwigDirector`.
This commit is contained in:
parent
de5a2c496b
commit
0a102e2846
3 changed files with 12 additions and 9 deletions
|
|
@ -1935,7 +1935,7 @@ public:
|
|||
String *methid = Getattr(udata, "class_methodidx");
|
||||
String *overname = Getattr(udata, "overname");
|
||||
Printf(proxy_class_code, " if (SwigDerivedClassHasMethod(\"%s\", swigMethodTypes%s))\n", method, methid);
|
||||
Printf(proxy_class_code, " swigDelegate%s = new SwigDelegate%s_%s(SwigDirector%s);\n", methid, proxy_class_name, methid, overname);
|
||||
Printf(proxy_class_code, " swigDelegate%s = new SwigDelegate%s_%s(SwigDirectorMethod%s);\n", methid, proxy_class_name, methid, overname);
|
||||
}
|
||||
String *director_connect_method_name = Swig_name_member(getNSpace(), getClassPrefix(), "director_connect");
|
||||
Printf(proxy_class_code, " %s.%s(swigCPtr", imclass_name, director_connect_method_name);
|
||||
|
|
@ -3864,7 +3864,7 @@ public:
|
|||
Printf(director_delegate_definitions, " %s\n", im_directoroutattributes);
|
||||
}
|
||||
|
||||
Printf(callback_def, " private %s SwigDirector%s(", tm, overloaded_name);
|
||||
Printf(callback_def, " private %s SwigDirectorMethod%s(", tm, overloaded_name);
|
||||
if (!ignored_method) {
|
||||
const String *csdirectordelegatemodifiers = Getattr(n, "feature:csdirectordelegatemodifiers");
|
||||
String *modifiers = (csdirectordelegatemodifiers ? NewStringf("%s%s", csdirectordelegatemodifiers, Len(csdirectordelegatemodifiers) > 0 ? " " : "") : NewStringf("public "));
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue