diff options
author | Chih-Hung Hsieh <chh@google.com> | 2022-12-08 21:53:07 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2022-12-08 21:53:07 +0000 |
commit | a8d11d3915dcaec0b2b659e9021533dd9a4c1faf (patch) | |
tree | 9abaf27dd741e409299c8805dd80be87a40329e7 | |
parent | 756b8f56afcb47337ddc7fa9075cb9d8a2e25634 (diff) | |
parent | 4bb5f032689e2f4f6636c1eecbe8dad186f305d6 (diff) | |
download | trusty-a8d11d3915dcaec0b2b659e9021533dd9a4c1faf.tar.gz |
Fix potential memory leaks am: e9dc921879 am: 4bb5f03268
Original change: https://android-review.googlesource.com/c/device/generic/trusty/+/2321794
Change-Id: I4da873fa7f7acfe9f7e8fa2182e2e0973066df5f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | secure_dpu/main.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/secure_dpu/main.cpp b/secure_dpu/main.cpp index dce2eb4..684f604 100644 --- a/secure_dpu/main.cpp +++ b/secure_dpu/main.cpp @@ -31,7 +31,7 @@ static void show_usage_and_exit(int code) { exit(code); } -static void parse_device_name(int argc, char* argv[], char*& device_name) { +static void parse_device_name(int argc, char* argv[], std::string& device_name) { static const char* _sopts = "h:d:"; static const struct option _lopts[] = {{"help", no_argument, NULL, 'h'}, {"trusty_dev", required_argument, NULL, 'd'}, @@ -42,7 +42,7 @@ static void parse_device_name(int argc, char* argv[], char*& device_name) { while ((opt = getopt_long(argc, argv, _sopts, _lopts, &oidx)) != -1) { switch (opt) { case 'd': - device_name = strdup(optarg); + device_name = optarg; break; default: @@ -51,7 +51,7 @@ static void parse_device_name(int argc, char* argv[], char*& device_name) { } } - if (device_name == nullptr) { + if (device_name.empty()) { LOG(ERROR) << "missing required argument(s)"; show_usage_and_exit(EXIT_FAILURE); } @@ -62,12 +62,12 @@ static void parse_device_name(int argc, char* argv[], char*& device_name) { int main(int argc, char* argv[]) { - char* device_name; + std::string device_name; /* parse arguments */ parse_device_name(argc, argv, device_name); android::trusty::secure_dpu::DPUHandler dpu_handler; - auto rc = dpu_handler.Init(std::string(device_name)); + auto rc = dpu_handler.Init(device_name); if (!rc.ok()) { LOG(ERROR) << rc.error(); return EXIT_FAILURE; |