If you choose to publish your source code to the public you also have to prepare for the possibility of misuse. This is a problem several open source projects have faced.
Just check out this site for example:
http://gpl-violations.org/Several large companies have violated the GPL and it can be hard to do anything about it unless you have the funds for a lengthy court battle. And it can get even harder if the violator is based in a country on the other side of the world.
I don't really know what to say except: Welcome to the real world, where the good guys don't necessarily get the girl in the end and where the bad guys often get away with it.
If you do choose to put your source code online I suggest you post it on a hosting site for open source project like
SourceForge. Then you at least have a verifiable date for when you uploaded it. Anyone who wants to claim the code as theirs would have to prove they had it earlier than that date.