diff --git a/ChangeLog b/ChangeLog index bc6d68ba3..f30bb9dec 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2013-12-16 Vladimir Serbinenko + + * grub-core/genmoddep.awk: Remove explicit getline < /dev/stdin. + 2013-12-15 Ian Campbell * grub-core/kern/uboot/init.c: Fix units of uboot timer. diff --git a/grub-core/genmoddep.awk b/grub-core/genmoddep.awk index 2e6af05a7..2f32465c4 100644 --- a/grub-core/genmoddep.awk +++ b/grub-core/genmoddep.awk @@ -14,26 +14,24 @@ # Read symbols' info from stdin. BEGIN { error = 0 - lineno = 0; - while (getline <"/dev/stdin") { - lineno++; - if ($1 == "defined") { - symtab[$3] = $2; - modtab[$2] = "" modtab[$2] - } else if ($1 == "undefined") { - if ($3 in symtab) - modtab[$2] = modtab[$2] " " symtab[$3]; - else if ($3 != "__gnu_local_gp" && $3 != "_gp_disp") { - printf "%s in %s is not defined\n", $3, $2 >"/dev/stderr"; - error++; - } - } - else { - printf "error: %u: unrecognized input format\n", lineno; +} + +{ + if ($1 == "defined") { + symtab[$3] = $2; + modtab[$2] = "" modtab[$2] + } else if ($1 == "undefined") { + if ($3 in symtab) + modtab[$2] = modtab[$2] " " symtab[$3]; + else if ($3 != "__gnu_local_gp" && $3 != "_gp_disp") { + printf "%s in %s is not defined\n", $3, $2 >"/dev/stderr"; error++; - break; } } + else { + printf "error: %u: unrecognized input format\n", NR; + error++; + } } # Output the result.