diff options
Diffstat (limited to 'libprocessgroup')
-rw-r--r-- | libprocessgroup/Android.mk | 1 | ||||
-rw-r--r-- | libprocessgroup/processgroup.cpp | 12 |
2 files changed, 7 insertions, 6 deletions
diff --git a/libprocessgroup/Android.mk b/libprocessgroup/Android.mk index 051999a..ee6ba58 100644 --- a/libprocessgroup/Android.mk +++ b/libprocessgroup/Android.mk @@ -8,7 +8,6 @@ LOCAL_C_INCLUDES := $(LOCAL_PATH)/include LOCAL_EXPORT_C_INCLUDE_DIRS := $(LOCAL_PATH)/include LOCAL_CFLAGS := -Wall -Werror LOCAL_REQUIRED_MODULE := processgroup_cleanup -include external/libcxx/libcxx.mk include $(BUILD_SHARED_LIBRARY) include $(CLEAR_VARS) diff --git a/libprocessgroup/processgroup.cpp b/libprocessgroup/processgroup.cpp index 49f5903..a80965f 100644 --- a/libprocessgroup/processgroup.cpp +++ b/libprocessgroup/processgroup.cpp @@ -19,7 +19,9 @@ #include <assert.h> #include <dirent.h> +#include <errno.h> #include <fcntl.h> +#include <inttypes.h> #include <stdbool.h> #include <stdio.h> #include <stdlib.h> @@ -100,7 +102,7 @@ static int refillBuffer(struct ctx *ctx) ctx->buf_len += ret; ctx->buf[ctx->buf_len] = 0; - SLOGV("Read %d to buffer: %s", ret, ctx->buf); + SLOGV("Read %zd to buffer: %s", ret, ctx->buf); assert(ctx->buf_len <= sizeof(ctx->buf)); @@ -251,7 +253,7 @@ int killProcessGroup(uid_t uid, int initialPid, int signal) { int processes; int sleep_us = 100; - long startTime = android::uptimeMillis(); + int64_t startTime = android::uptimeMillis(); while ((processes = killProcessGroupOnce(uid, initialPid, signal)) > 0) { SLOGV("killed %d processes for processgroup %d\n", processes, initialPid); @@ -265,7 +267,7 @@ int killProcessGroup(uid_t uid, int initialPid, int signal) } } - SLOGV("Killed process group uid %d pid %d in %ldms, %d procs remain", uid, initialPid, + SLOGV("Killed process group uid %d pid %d in %" PRId64 "ms, %d procs remain", uid, initialPid, android::uptimeMillis()-startTime, processes); if (processes == 0) { @@ -279,12 +281,12 @@ static int mkdirAndChown(const char *path, mode_t mode, uid_t uid, gid_t gid) { int ret; - ret = mkdir(path, 0750); + ret = mkdir(path, mode); if (ret < 0 && errno != EEXIST) { return -errno; } - ret = chown(path, AID_SYSTEM, AID_SYSTEM); + ret = chown(path, uid, gid); if (ret < 0) { ret = -errno; rmdir(path); |