take the return value of the storage callback into account

instead of blindly report a store operation as successful