device: Throw the full file error code in *_new()
It doesn't make sense to pass G_FILE_ERROR_FAILED, as this one is only meant for when there isn't any existing error code for this file error, but here it isn't the case since we have the errno set on error.
Splitting from !48 (closed).