Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1028)

Unified Diff: src/platform/vboot_reference/utility/cgpt/cgpt_options.c

Issue 2083020: support 'cgpt repair' (Closed) Base URL: ssh://git@chromiumos-git/chromeos
Patch Set: Created 10 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/platform/vboot_reference/utility/cgpt/cgpt_options.c
diff --git a/src/platform/vboot_reference/utility/cgpt/cgpt_options.c b/src/platform/vboot_reference/utility/cgpt/cgpt_options.c
index 1162ed831bb902d4d2bbf40477cc61b250f9ea8f..dae4bce9111697448aeae458b9e5efc3b140ddc8 100644
--- a/src/platform/vboot_reference/utility/cgpt/cgpt_options.c
+++ b/src/platform/vboot_reference/utility/cgpt/cgpt_options.c
@@ -107,8 +107,17 @@ int OpenDriveInLastArgument(const int argc,
struct drive *drive) {
/* Then, we need a non-option argument. */
if (optind == (argc - 1)) {
- char *drive_path;
- drive_path = argv[optind];
+ char *path, drive_path[256];
+ path = argv[optind];
+ switch (path[0]) {
+ case '.':
+ case '/':
+ snprintf(drive_path, sizeof(drive_path), "%s", path);
+ break;
+ default:
+ snprintf(drive_path, sizeof(drive_path), "/dev/%s", path);
+ break;
+ }
if (CGPT_OK != DriveOpen(drive_path, drive)) {
printf("[ERROR] DriveOpen(%s) error!\n", drive_path);
return CGPT_FAILED;
« no previous file with comments | « src/platform/vboot_reference/utility/cgpt/cgpt.c ('k') | src/platform/vboot_reference/utility/cgpt/cgpt_repair.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698