Ah - OK.  I just interpolated that a NULL hash was in some sense meaningful, given that the code coped with it.
Albeit the present code could more tersely be: <code>
if (!a || !b) { return (!a) == (!b); } </code>