Android: Improve OpenModeToAndroid's handling of 'b'

Now it also works when b isn't at the very end. (+ goes after b.)
This commit is contained in:
JosJuice 2021-10-13 17:39:09 +02:00
parent 4541abd1c0
commit b28e5149a7
1 changed files with 2 additions and 2 deletions

View File

@ -3,6 +3,7 @@
#include "jni/AndroidCommon/AndroidCommon.h"
#include <algorithm>
#include <ios>
#include <string>
#include <string_view>
@ -67,8 +68,7 @@ bool IsPathAndroidContent(const std::string& uri)
std::string OpenModeToAndroid(std::string mode)
{
// The 'b' specifier is not supported by Android. Since we're on POSIX, it's fine to just skip it.
if (!mode.empty() && mode.back() == 'b')
mode.pop_back();
mode.erase(std::remove(mode.begin(), mode.end(), 'b'));
if (mode == "r+")
mode = "rw";