Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 552518e3 authored by Yang Ni's avatar Yang Ni Committed by Android (Google) Code Review
Browse files

Merge "Moved limit constants for kernel and script group" into mnc-dev

parents cb556e0d 9310e3db
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
@@ -43,9 +43,6 @@

//#define LOG_API ALOGE
static constexpr bool kLogApi = false;
static constexpr size_t kMaxNumberArgsAndBindings = 1000;
static constexpr size_t kMaxNumberClosuresInScriptGroup = 1000000;
static constexpr size_t kMaxNumberKernelArguments = 256;

using namespace android;

@@ -371,7 +368,7 @@ nClosureCreate(JNIEnv *_env, jobject _this, jlong con, jlong kernelID,
      goto exit;
  }

  if (numValues > kMaxNumberArgsAndBindings) {
  if (numValues > RS_CLOSURE_MAX_NUMBER_ARGS_AND_BINDINGS) {
      ALOGE("Too many arguments or globals in closure creation");
      goto exit;
  }
@@ -456,7 +453,7 @@ nInvokeClosureCreate(JNIEnv *_env, jobject _this, jlong con, jlong invokeID,

  numValues = (size_t) fieldIDs_length;

  if (numValues > kMaxNumberArgsAndBindings) {
  if (numValues > RS_CLOSURE_MAX_NUMBER_ARGS_AND_BINDINGS) {
      ALOGE("Too many arguments or globals in closure creation");
      goto exit;
  }
@@ -521,7 +518,7 @@ nScriptGroup2Create(JNIEnv *_env, jobject _this, jlong con, jstring name,

  RsClosure* closures;

  if (numClosures > (jsize) kMaxNumberClosuresInScriptGroup) {
  if (numClosures > (jsize) RS_SCRIPT_GROUP_MAX_NUMBER_CLOSURES) {
    ALOGE("Too many closures in script group");
    goto exit;
  }
@@ -1867,7 +1864,7 @@ nScriptForEach(JNIEnv *_env, jobject _this, jlong con, jlong script, jint slot,

    if (ains != nullptr) {
        in_len = _env->GetArrayLength(ains);
        if (in_len > (jint)kMaxNumberKernelArguments) {
        if (in_len > (jint)RS_KERNEL_MAX_ARGUMENTS) {
            ALOGE("Too many arguments in kernel launch.");
            // TODO (b/20758983): Report back to Java and throw an exception
            return;