Fix a bad comparison (&& and || without parens.)

I thinks this is what's inteded.  I still think it's bad to guess at errors without testing.
Fix some initialization order warnings.
Fix a code alignment warning.

I'm not really clear on why this code would not be 4 byte aligned,
but cmake says it ain't on iOS, so okay.
Merge pull request #5076 from unknownbrackets/warnings

Fix some warnings