Loading core/jni/AndroidRuntime.cpp +8 −0 Original line number Diff line number Diff line Loading @@ -301,6 +301,8 @@ AndroidRuntime::~AndroidRuntime() } void AndroidRuntime::setArgv0(const char* argv0, bool setProcName) { // Set the kernel's task name, for as much of the name as we can fit. // The kernel's TASK_COMM_LEN minus one for the terminating NUL == 15. if (setProcName) { int len = strlen(argv0); if (len < 15) { Loading @@ -309,8 +311,14 @@ void AndroidRuntime::setArgv0(const char* argv0, bool setProcName) { pthread_setname_np(pthread_self(), argv0 + len - 15); } } // Directly change the memory pointed to by argv[0]. memset(mArgBlockStart, 0, mArgBlockLength); strlcpy(mArgBlockStart, argv0, mArgBlockLength); // Let bionic know that we just did that, because __progname points // into argv[0] (https://issuetracker.google.com/152893281). setprogname(mArgBlockStart); } status_t AndroidRuntime::callMain(const String8& className, jclass clazz, Loading Loading
core/jni/AndroidRuntime.cpp +8 −0 Original line number Diff line number Diff line Loading @@ -301,6 +301,8 @@ AndroidRuntime::~AndroidRuntime() } void AndroidRuntime::setArgv0(const char* argv0, bool setProcName) { // Set the kernel's task name, for as much of the name as we can fit. // The kernel's TASK_COMM_LEN minus one for the terminating NUL == 15. if (setProcName) { int len = strlen(argv0); if (len < 15) { Loading @@ -309,8 +311,14 @@ void AndroidRuntime::setArgv0(const char* argv0, bool setProcName) { pthread_setname_np(pthread_self(), argv0 + len - 15); } } // Directly change the memory pointed to by argv[0]. memset(mArgBlockStart, 0, mArgBlockLength); strlcpy(mArgBlockStart, argv0, mArgBlockLength); // Let bionic know that we just did that, because __progname points // into argv[0] (https://issuetracker.google.com/152893281). setprogname(mArgBlockStart); } status_t AndroidRuntime::callMain(const String8& className, jclass clazz, Loading