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

Commit 7b2a46fe authored by Yang Ni's avatar Yang Ni
Browse files

Moved limit constants for kernel and script group

b/20728113

so that we can share them with support lib.

Change-Id: I231c0d20c41ee53342d8a975c2db5a31854b9d40
parent 5bd20a3e
Loading
Loading
Loading
Loading
+4 −7
Original line number Diff line number Diff line
@@ -44,9 +44,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;

@@ -376,7 +373,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;
  }
@@ -461,7 +458,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;
  }
@@ -526,7 +523,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;
  }
@@ -1877,7 +1874,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;