diff options
author | Francesco Romani <fromani@gmail.com> | 2014-07-06 16:13:22 +0200 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2023-04-12 21:30:37 +0300 |
commit | 3b828c935326314e1549eb2b177d81282be139c5 (patch) | |
tree | 1ed38fd1f8e8602d89c8d8855b864ececcb5654f | |
parent | 9afd14861cab5f3faffa9f51a9129f407a6413f0 (diff) | |
download | orc-3b828c935326314e1549eb2b177d81282be139c5.tar.gz |
parser: extract function to handle .longparam
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/30>
-rw-r--r-- | orc/orcparse.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/orc/orcparse.c b/orc/orcparse.c index ccbd8bb..3ad8edf 100644 --- a/orc/orcparse.c +++ b/orc/orcparse.c @@ -102,6 +102,7 @@ static int orc_parse_handle_accumulator (OrcParser *parser, const OrcLine *line) static int orc_parse_handle_constant_str (OrcParser *parser, const OrcLine *line); static int orc_parse_handle_temporary (OrcParser *parser, const OrcLine *line); static int orc_parse_handle_parameter (OrcParser *parser, const OrcLine *line); +static int orc_parse_handle_parameter_int64 (OrcParser *parser, const OrcLine *line); static int orc_parse_handle_directive (OrcParser *parser, const OrcLine *line); static int orc_parse_handle_opcode (OrcParser *parser, const OrcLine *line); @@ -441,17 +442,7 @@ orc_parse_handle_legacy (OrcParser *parser, const OrcLine *line) const char **token = (const char **)(line->tokens); int n_tokens = line->n_tokens; - if (strcmp (token[0], ".longparam") == 0) { - if (n_tokens < 3) { - orc_parse_add_error (parser, "line %d: .longparam without size or name\n", - parser->line_number); - } else { - int size = strtol (token[1], NULL, 0); - orc_program_add_parameter_int64 (parser->program, size, token[2]); - } - int size = strtol (token[1], NULL, 0); - orc_program_add_parameter_int64 (parser->program, size, token[2]); - } else if (strcmp (token[0], ".floatparam") == 0) { + if (strcmp (token[0], ".floatparam") == 0) { if (n_tokens < 3) { orc_parse_add_error (parser, "line %d: .floatparam without size or name\n", parser->line_number); @@ -728,6 +719,7 @@ orc_parse_handle_constant_str (OrcParser *parser, const OrcLine *line) ORC_PARSE_ITEM (temporary) ORC_PARSE_ITEM (parameter) +ORC_PARSE_ITEM (parameter_int64) static int @@ -746,6 +738,7 @@ orc_parse_handle_directive (OrcParser *parser, const OrcLine *line) { ".const", orc_parse_handle_constant_str }, { ".temp", orc_parse_handle_temporary }, { ".param", orc_parse_handle_parameter }, + { ".longparam", orc_parse_handle_parameter_int64 }, { NULL, NULL } }; int i; |