mirror of
https://github.com/topjohnwu/Magisk.git
synced 2025-10-19 10:31:59 +00:00
Modernize compress and decompress
This commit is contained in:
@@ -10,10 +10,7 @@
|
||||
#include <flags.h>
|
||||
|
||||
#include "magiskboot.h"
|
||||
|
||||
/********************
|
||||
Patch Boot Image
|
||||
*********************/
|
||||
#include "compress.h"
|
||||
|
||||
static void usage(char *arg0) {
|
||||
fprintf(stderr,
|
||||
@@ -137,24 +134,19 @@ int main(int argc, char *argv[]) {
|
||||
} else if (argc > 2 && strcmp(argv[1], "--unpack") == 0) {
|
||||
return unpack(argv[2]);
|
||||
} else if (argc > 2 && strcmp(argv[1], "--repack") == 0) {
|
||||
repack(argv[2], argc > 3 ? argv[3] : NEW_BOOT);
|
||||
repack(argv[2], argv[3] ? argv[3] : NEW_BOOT);
|
||||
} else if (argc > 2 && strcmp(argv[1], "--decompress") == 0) {
|
||||
decompress(argv[2], argc > 3 ? argv[3] : nullptr);
|
||||
decompress(argv[2], argv[3]);
|
||||
} else if (argc > 2 && strncmp(argv[1], "--compress", 10) == 0) {
|
||||
const char *method;
|
||||
method = strchr(argv[1], '=');
|
||||
if (method == nullptr) method = "gzip";
|
||||
else method++;
|
||||
compress(method, argv[2], argc > 3 ? argv[3] : nullptr);
|
||||
compress(argv[1][10] == '=' ? &argv[1][11] : "gzip", argv[2], argv[3]);
|
||||
} else if (argc > 4 && strcmp(argv[1], "--hexpatch") == 0) {
|
||||
hexpatch(argv[2], argv[3], argv[4]);
|
||||
} else if (argc > 2 && strcmp(argv[1], "--cpio") == 0) {
|
||||
if (cpio_commands(argc - 2, argv + 2)) usage(argv[0]);
|
||||
} else if (argc > 2 && strncmp(argv[1], "--dtb", 5) == 0) {
|
||||
char *cmd = argv[1] + 5;
|
||||
if (*cmd == '\0') usage(argv[0]);
|
||||
else ++cmd;
|
||||
if (dtb_commands(cmd, argc - 2, argv + 2))
|
||||
if (argv[1][5] != '-')
|
||||
usage(argv[0]);
|
||||
if (dtb_commands(&argv[1][6], argc - 2, argv + 2))
|
||||
usage(argv[0]);
|
||||
} else {
|
||||
usage(argv[0]);
|
||||
|
Reference in New Issue
Block a user