Fix failure on file-5.15.  That has a bug and/or change in behvior
where the first call to magic_load results in magic_error returning a
string even though there was no error.  Fixed by being more precise
about checking the return values (either nul or -1 depending on
function) rather than relying on magic_error.