1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-07-01 14:11:15 +02:00

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>
This commit is contained in:
Louis Yung-Chieh Lo
2011-12-25 09:12:16 +00:00
committed by Stefan Tauner
parent 104b0d9f1e
commit 9bcf2684d7
3 changed files with 78 additions and 20 deletions

View File

@ -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) {