summaryrefslogtreecommitdiffstats
path: root/cli_classic.c
diff options
context:
space:
mode:
authorLouis Yung-Chieh Lo <yjlou@chromium.org>2011-12-25 09:12:16 +0000
committerStefan Tauner <stefan.tauner@alumni.tuwien.ac.at>2011-12-25 09:12:16 +0000
commit9bcf2684d7781de71551ab14d3c3be46890ca432 (patch)
tree20ffb99db71ee422b2196d82742fdc2197ab40e7 /cli_classic.c
parent104b0d9f1e1e41bda61f82a688971f3a31074d73 (diff)
downloadast2050-flashrom-9bcf2684d7781de71551ab14d3c3be46890ca432.zip
ast2050-flashrom-9bcf2684d7781de71551ab14d3c3be46890ca432.tar.gz
Add deferred --image processing
The general idea and most of the code are based on the following commits in the chromiumos flashrom tree: Corresponding to flashrom svn r1482. 8fc0740356ca15d02fb1c65ab43b10844f148c3b bb9049c66ca55e0dc621dd2c70b5d2cb6e5179bf Signed-off-by: Louis Yung-Chieh Lo <yjlou@chromium.org> and the main part: d0ea9ed71e7f86bb8e8db2ca7c32a96de25343d8 Signed-off-by: David Hendricks <dhendrix@chromium.org> This implementation does not defer the processing until doit(), but after the argument parsing loop only (doit() should not contain argument checks). This allows to specify -i and -l parameters in any order. Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at> Acked-by: David Hendricks <dhendrix@google.com>
Diffstat (limited to 'cli_classic.c')
-rw-r--r--cli_classic.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/cli_classic.c b/cli_classic.c
index a931de8..3928ded 100644
--- a/cli_classic.c
+++ b/cli_classic.c
@@ -295,14 +295,9 @@ int main(int argc, char *argv[])
cli_classic_abort_usage();
break;
case 'i':
- /* FIXME: -l has to be specified before -i. */
tempstr = strdup(optarg);
- if (find_romentry(tempstr) < 0) {
- fprintf(stderr, "Error: image %s not found in "
- "layout file or -i specified before "
- "-l\n", tempstr);
+ if (register_include_arg(tempstr))
cli_classic_abort_usage();
- }
break;
case 'L':
if (++operation_specified > 1) {
@@ -395,6 +390,9 @@ int main(int argc, char *argv[])
cli_classic_abort_usage();
}
+ if (process_include_args())
+ cli_classic_abort_usage();
+
/* FIXME: Print the actions flashrom will take. */
if (list_supported) {
OpenPOWER on IntegriCloud