This was found by Coverity scan of GRUB

hol_entry_help contains the following code

    /* A real long option.  */
    {
      int first_long_opt = 1;

      __argp_fmtstream_set_wmargin (stream, uparams.long_opt_col);
      for (opt = real, num = entry->num; num > 0; opt++, num--)
        if (opt->name && ovisible (opt))
          {
            comma (uparams.long_opt_col, &pest);
            __argp_fmtstream_printf (stream, "--%s", opt->name);
            if (first_long_opt || uparams.dup_args)
              arg (real, "=%s", "[=%s]", state->root_argp->argp_domain,
                   stream);
            else if (real->arg)
              hhstate->suppressed_dup_arg = 1;
          }
    }

first_long_opt is never changed after being set, so the clause

            else if (real->arg)
              hhstate->suppressed_dup_arg = 1;

can never be executed. It looks like assignment to first_long_opt is
missing somewhere.

Reply via email to