For security, you should definitely create a new role (e.g., Editor) with an authority level number of 5 or 10 (or 50 if you like -- as long as it’s lower than the member number) and use that as the minimum role rather than member.
Otherwise, if it’s working, it looks good to me, except that it’s unwise to modify the core code. It’s very seldom necessary and it will be overwritten when you upgrade. OTOH, it looks like you may be working around a bug, in which case it’s fine.
You can get the current dev. version (2.0.5) from git if it has a fix for your problem (and if not, you can contribute by issuing a pull request that includes your change).
FYI: file_upload, file_list, file_update, file_remove, are permissions, not policies (but then you probably know that already).