Move to C++ for debuggerd.

This is part 1, only including the bare minimum changes because
our diff tool doesn't easily show differences when a file moves. This
also breaks it into a small chunk in case some other changes break things,
as unlikely as I think that will be.

Change-Id: Ib7a3e7a2cc1ac574d15b65fda23813ebcf5d31af
This commit is contained in:
Christopher Ferris 2014-01-10 16:05:12 -08:00
parent 261ff50e32
commit d607495b89
9 changed files with 21 additions and 13 deletions

View File

@ -6,14 +6,20 @@ LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES:= \
backtrace.c \
debuggerd.c \
getevent.c \
tombstone.c \
utility.c \
$(TARGET_ARCH)/machine.c
backtrace.cpp \
debuggerd.cpp \
getevent.cpp \
tombstone.cpp \
utility.cpp \
$(TARGET_ARCH)/machine.cpp \
LOCAL_CONLYFLAGS := -std=gnu99
LOCAL_CPPFLAGS := -std=gnu++11
LOCAL_CFLAGS := \
-Wall \
-Wno-array-bounds \
-Werror \
LOCAL_CFLAGS := -Wall -Wno-unused-parameter -std=gnu99
LOCAL_MODULE := debuggerd
ifeq ($(ARCH_ARM_HAVE_VFP),true)
@ -30,6 +36,8 @@ LOCAL_SHARED_LIBRARIES := \
liblog \
libselinux \
include external/stlport/libstlport.mk
include $(BUILD_EXECUTABLE)
include $(CLEAR_VARS)
@ -38,7 +46,7 @@ LOCAL_SRC_FILES += $(TARGET_ARCH)/crashglue.S
LOCAL_MODULE := crasher
LOCAL_MODULE_PATH := $(TARGET_OUT_OPTIONAL_EXECUTABLES)
LOCAL_MODULE_TAGS := optional
LOCAL_CFLAGS += -fstack-protector-all
LOCAL_CFLAGS += -fstack-protector-all -Wno-unused-parameter -Wno-free-nonheap-object
#LOCAL_FORCE_STATIC_EXECUTABLE := true
LOCAL_SHARED_LIBRARIES := libcutils liblog libc
include $(BUILD_EXECUTABLE)

View File

@ -123,7 +123,7 @@ static void wait_for_user_action(pid_t pid) {
int _ = -dit;
int ___ = 3*_;
int _______ = 7*_;
const signed char codes[] = {
const int codes[] = {
dit,_,dit,_,dit,___,dah,_,dah,_,dah,___,dit,_,dit,_,dit,_______
};
size_t s = 0;
@ -132,7 +132,7 @@ static void wait_for_user_action(pid_t pid) {
init_debug_led();
enable_debug_led();
do {
int timeout = abs((int)(codes[s])) * ms;
int timeout = abs(codes[s]) * ms;
int res = get_event(&e, timeout);
if (res == 0) {
if (e.type == EV_KEY

View File

@ -54,13 +54,13 @@ static int open_device(const char *device)
idstr[0] = '\0';
}
new_ufds = realloc(ufds, sizeof(ufds[0]) * (nfds + 1));
new_ufds = reinterpret_cast<pollfd*>(realloc(ufds, sizeof(ufds[0]) * (nfds + 1)));
if(new_ufds == NULL) {
fprintf(stderr, "out of memory\n");
return -1;
}
ufds = new_ufds;
new_device_names = realloc(device_names, sizeof(device_names[0]) * (nfds + 1));
new_device_names = reinterpret_cast<char**>(realloc(device_names, sizeof(device_names[0]) * (nfds + 1)));
if(new_device_names == NULL) {
fprintf(stderr, "out of memory\n");
return -1;
@ -162,7 +162,7 @@ int init_getevent()
const char *device_path = "/dev/input";
nfds = 1;
ufds = calloc(1, sizeof(ufds[0]));
ufds = reinterpret_cast<pollfd*>(calloc(1, sizeof(ufds[0])));
ufds[0].fd = inotify_init();
ufds[0].events = POLLIN;