diff options
author | Alon Zakai <alonzakai@gmail.com> | 2012-05-29 17:31:25 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2012-05-29 17:31:25 -0700 |
commit | 2b6a3dbadf24de1fc21ee8776ad1271c4045955d (patch) | |
tree | 1133b71ab8943c0f6dfdcff15e5c0bc34a493b27 /tools/bindings_generator.py | |
parent | a6e9973beec114dbf68f0ba481893b3b6650c1fa (diff) |
fix bindings generator bug with overloaded functions whose parameters differ in type between class and non-class
Diffstat (limited to 'tools/bindings_generator.py')
-rwxr-xr-x | tools/bindings_generator.py | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/tools/bindings_generator.py b/tools/bindings_generator.py index 3fbff13d..fad784a7 100755 --- a/tools/bindings_generator.py +++ b/tools/bindings_generator.py @@ -671,18 +671,6 @@ def generate_class(generating_classname, classname, clazz): # TODO: deprecate ge has_string_convs = False - # We can assume that NULL is passed for null pointers, so object arguments can always - # have .ptr done on them - justargs_fixed = justargs(args)[:] - for i in range(len(args)): - arg = args[i] - clean = clean_type(arg['type']) - if clean in classes: - justargs_fixed[i] += '.ptr' - elif arg['type'].replace(' ', '').endswith('char*'): - justargs_fixed[i] = 'ensureString(' + justargs_fixed[i] + ')' - has_string_convs = True - calls = '' if has_string_convs: calls += 'var stack = Runtime.stackSave();\n'; @@ -690,6 +678,18 @@ def generate_class(generating_classname, classname, clazz): # TODO: deprecate ge #print 'js loopin', params, '|', len(args)#, args for args in params: + # We can assume that NULL is passed for null pointers, so object arguments can always + # have .ptr done on them + justargs_fixed = justargs(args)[:] + for i in range(len(args)): + arg = args[i] + clean = clean_type(arg['type']) + if clean in classes: + justargs_fixed[i] += '.ptr' + elif arg['type'].replace(' ', '').endswith('char*'): + justargs_fixed[i] = 'ensureString(' + justargs_fixed[i] + ')' + has_string_convs = True + i = len(args) if args != params[0]: calls += ' else ' |