merge of trunk revisions 500-506 into winport branch.
Added CCond() to reduce need for platform specific code.
Authored by: slruiz1 2010-09-26
Parent: [r508]
Child: [r510]