Loading core/java/android/os/ZygoteProcess.java +10 −0 Original line number Diff line number Diff line Loading @@ -425,6 +425,8 @@ public class ZygoteProcess { throw new ZygoteStartFailedEx("Embedded newlines not allowed"); } else if (arg.indexOf('\r') >= 0) { throw new ZygoteStartFailedEx("Embedded carriage returns not allowed"); } else if (arg.indexOf('\u0000') >= 0) { throw new ZygoteStartFailedEx("Embedded nulls not allowed"); } } Loading Loading @@ -965,6 +967,14 @@ public class ZygoteProcess { return true; } for (/* NonNull */ String s : mApiDenylistExemptions) { // indexOf() is intrinsified and faster than contains(). if (s.indexOf('\n') >= 0 || s.indexOf('\r') >= 0 || s.indexOf('\u0000') >= 0) { Slog.e(LOG_TAG, "Failed to set API denylist exemptions: Bad character"); mApiDenylistExemptions = Collections.emptyList(); return false; } } try { state.mZygoteOutputWriter.write(Integer.toString(mApiDenylistExemptions.size() + 1)); state.mZygoteOutputWriter.newLine(); Loading Loading
core/java/android/os/ZygoteProcess.java +10 −0 Original line number Diff line number Diff line Loading @@ -425,6 +425,8 @@ public class ZygoteProcess { throw new ZygoteStartFailedEx("Embedded newlines not allowed"); } else if (arg.indexOf('\r') >= 0) { throw new ZygoteStartFailedEx("Embedded carriage returns not allowed"); } else if (arg.indexOf('\u0000') >= 0) { throw new ZygoteStartFailedEx("Embedded nulls not allowed"); } } Loading Loading @@ -965,6 +967,14 @@ public class ZygoteProcess { return true; } for (/* NonNull */ String s : mApiDenylistExemptions) { // indexOf() is intrinsified and faster than contains(). if (s.indexOf('\n') >= 0 || s.indexOf('\r') >= 0 || s.indexOf('\u0000') >= 0) { Slog.e(LOG_TAG, "Failed to set API denylist exemptions: Bad character"); mApiDenylistExemptions = Collections.emptyList(); return false; } } try { state.mZygoteOutputWriter.write(Integer.toString(mApiDenylistExemptions.size() + 1)); state.mZygoteOutputWriter.newLine(); Loading