Well, the core issue is that this shouldn't happen in the first place, because validation does check the PHP settings. I'll have a look at how this happens and try to fix it, rather than merge this. :)
@Gargron Yeah, it checks PHP setting for the post_max_size here but problem appeared in upload_max_filesize :) And may be it will be enough just to add checking for upload_max_filesize near existing check for post_max_size
Now this section contains only on issue about finfo_file() error. But there is a simple solution :)