Page 1 of 1

works in OS X, not in Linux or Windows

Posted: Wed Sep 17, 2008 2:16 am
by jwkuehne
I have a group that does weird things - actually nothing - when I build a Windows or Linux standalone. In the standalones, it seems that this group does not receive messages. For example

on openstack
send startEncoder to group "encoder"
end openstack

works in OS X, but in the standalones it seems that startEncoder never gets the message. I know this because I have a test statement at the head of startEncoder - put 0 into field "log" - that in Windows & Linux does not put anything. It's only this group out of dozens that is misbehaving.

Anybody seen weirdness like this before? It reminds me of an old MetaCard bug I once saw.

My next step is simply to recrate the "encoder" group from scratch and start adding handlers one a time. But spooky stuff doesn't make me happy, because this program is controlling a million dollar telescope.

I'd be happy to drop it on one of my web sites if anyone would care to take a look.

I'm running the latest and greatest version 3, but this happens in 2.9 too.

-John

Posted: Wed Sep 17, 2008 12:22 pm
by Janschenkel
A long shot: what happens if you put quotes around the message that you send?

Code: Select all

send "startEncoder" to group "encoder"
It is theoretically possible that there's a variable in scope named 'startEncoder' that contains something else, and then it would send the content as message rather than the message 'startEncoder'.

Jan Schenkel.

Posted: Wed Sep 17, 2008 4:33 pm
by jwkuehne
yes, I tried that too, no luck. I tried renaming the handlers. If I delete every handler from this group and then make a little test script, it works.

resolved

Posted: Wed Sep 17, 2008 9:48 pm
by jwkuehne
Seems to be solved: when I take out the single character "greater than or equal" symbol you get on the mac using the option key, it works on windows (and I assume linux, will try later).

Wow that took a long time to figure out. If I had the development platform on Windows, it would have taken a few minutes.

So, the script "error" that Windows saw just left the object with no handlers, and the message sent from openstack to the group just evaporated.

-Johb

Posted: Fri Sep 26, 2008 1:15 am
by Mark Smith
Ah yes, this has bitten me, in the past.

Mac seems to be the only OS with a special 'greater than or equal to' character.

You just have to get used to ">=" in order to be cross platform.

The same applies to "less than or equal to", and (I think) the "not equal to" character.