Integer list between objects does not work under Windows but works under OS X
Aug 13 2011 | 7:18 pm
Hello, I am facing a really weird problem. I am writing Max externals both for Mac and Win platforms, and my external which works perfectly under Mac OS does not work as expected under Windows.
I have two externals, one sending a int list, the second one receiving the int list.
On sender side, I create the outlet like this in the new() method: x->HDOutlet=listout(x)
I send the int list like this: atom_setlong(argv, 1); atom_setlong(argv+1, 2); outlet_list(x->HDOutlet, 0L, 2, &argv);
If I put a print object on the outlet, I see this (as expected) on Max window hdtest 1 2
On receiver side, I have created the inlet like this class_addmethod (c, (method)hd_test_hdlist, "int", A_GIMME, 0);
and the hd_test_hdlist method is defined like this : void hd_test_hdlist (t_hd_test *x, t_symbol* s, long argc, t_atom* argv);
Here is my problem : when I check argc on OS X, it equals 2 (which is correct), but on Windows I get 0... The code of my external is exactly the same on Windows and Mac, so I have no idea why I get this behaviour.
Any idea of what could explain that ?
Thank you by advance