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

Commit 16401044 authored by Elliott Hughes's avatar Elliott Hughes Committed by Gerrit Code Review
Browse files

Merge "Move dumpstate to calling getprop."

parents 73d5aef5 52eddbac
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -948,7 +948,7 @@ static void dumpstate(const std::string& screenshot_path, const std::string& ver
#endif
    dump_file("INTERRUPTS (2)", "/proc/interrupts");

    print_properties();
    run_command("SYSTEM PROPERTIES", 5, "getprop", NULL);

    run_command("VOLD DUMP", 10, "vdc", "dump", NULL);
    run_command("SECURE CONTAINERS", 10, "vdc", "asec", "list", NULL);
+0 −3
Original line number Diff line number Diff line
@@ -142,9 +142,6 @@ void send_broadcast(const std::string& action, const std::vector<std::string>& a
/* updates the overall progress of dumpstate by the given weight increment */
void update_progress(int weight);

/* prints all the system properties */
void print_properties();

/** opens a socket and returns its file descriptor */
int open_socket(const char *service);

+0 −34
Original line number Diff line number Diff line
@@ -885,40 +885,6 @@ void send_broadcast(const std::string& action, const std::vector<std::string>& a
    run_command_always(NULL, DROP_ROOT, REDIRECT_TO_STDERR, 20, am_args);
}

size_t num_props = 0;
static char* props[2000];

static void print_prop(const char *key, const char *name, void *user) {
    (void) user;
    if (num_props < sizeof(props) / sizeof(props[0])) {
        char buf[PROPERTY_KEY_MAX + PROPERTY_VALUE_MAX + 10];
        snprintf(buf, sizeof(buf), "[%s]: [%s]\n", key, name);
        props[num_props++] = strdup(buf);
    }
}

static int compare_prop(const void *a, const void *b) {
    return strcmp(*(char * const *) a, *(char * const *) b);
}

/* prints all the system properties */
void print_properties() {
    const char* title = "SYSTEM PROPERTIES";
    DurationReporter duration_reporter(title);
    printf("------ %s ------\n", title);
    ON_DRY_RUN_RETURN();
    size_t i;
    num_props = 0;
    property_list(print_prop, NULL);
    qsort(&props, num_props, sizeof(props[0]), compare_prop);

    for (i = 0; i < num_props; ++i) {
        fputs(props[i], stdout);
        free(props[i]);
    }
    printf("\n");
}

int open_socket(const char *service) {
    int s = android_get_control_socket(service);
    if (s < 0) {