* Finish parsing an option group. * * @param group_idx which group definition should this group belong to * @param arg argument of the group delimiting option */
| 689 | * @param arg argument of the group delimiting option |
| 690 | */ |
| 691 | static int finish_group(OptionParseContext *octx, int group_idx, |
| 692 | const char *arg) |
| 693 | { |
| 694 | OptionGroupList *l = &octx->groups[group_idx]; |
| 695 | OptionGroup *g; |
| 696 | int ret; |
| 697 | |
| 698 | ret = GROW_ARRAY(l->groups, l->nb_groups); |
| 699 | if (ret < 0) |
| 700 | return ret; |
| 701 | |
| 702 | g = &l->groups[l->nb_groups - 1]; |
| 703 | |
| 704 | *g = octx->cur_group; |
| 705 | g->arg = arg; |
| 706 | g->group_def = l->group_def; |
| 707 | g->sws_dict = sws_dict; |
| 708 | g->swr_opts = swr_opts; |
| 709 | g->codec_opts = codec_opts; |
| 710 | g->format_opts = format_opts; |
| 711 | |
| 712 | codec_opts = NULL; |
| 713 | format_opts = NULL; |
| 714 | sws_dict = NULL; |
| 715 | swr_opts = NULL; |
| 716 | |
| 717 | memset(&octx->cur_group, 0, sizeof(octx->cur_group)); |
| 718 | |
| 719 | return ret; |
| 720 | } |
| 721 | |
| 722 | /* |
| 723 | * Add an option instance to currently parsed group. |