Ticket 48805 - Misleading indent and Uninitialised struct member
Bug Description: Gcc 6.0 adds a number of new warning types that will help
us proactively find errors. We should apply these fixes.
Fix Description:
* Fix misleading indent. This led to the infamous goto fail; goto fail;. This
involves wrapping if branches in {}, and retabbing in some places. This means
that as the developer reading the code, we can correct see what statements are
guarded, and what is not.
* Missing struct members: We were not completely intialising structs
completely in many cases. Gcc was helping by padding the rest as '0', but we
should be explicit in our code and actions.
https://fedorahosted.org/389/ticket/48805
Author: wibrown
Review by: mreynolds (Thanks!)