diff options
author | Sebastian Dröge <sebastian@centricular.com> | 2023-04-12 21:55:27 +0300 |
---|---|---|
committer | Sebastian Dröge <sebastian@centricular.com> | 2023-04-12 21:55:27 +0300 |
commit | 0b8ba0ba747b9123f9cecbbabfc021564850caeb (patch) | |
tree | 63eb7090c1d3f8c5c7ffebc3eb9185251396b91e | |
parent | 6301c6dce08f8eca77dc844a0abafce9d38a5ee5 (diff) | |
download | orc-0b8ba0ba747b9123f9cecbbabfc021564850caeb.tar.gz |
Fix error string allocation in legacy error output
And change it to the same format as used by orcc now.
Part-of: <https://gitlab.freedesktop.org/gstreamer/orc/-/merge_requests/30>
-rw-r--r-- | orc/orcparse.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/orc/orcparse.c b/orc/orcparse.c index b53282e..6e1be10 100644 --- a/orc/orcparse.c +++ b/orc/orcparse.c @@ -343,16 +343,16 @@ orc_parse_splat_error (OrcParseError **errors, int n_errors, char **log) { int i; int len = 0; - int size = ORC_ERROR_LENGTH; + int size = 0; char *_log = NULL; for(i=0;i<n_errors;i++){ - int n = strlen (errors[i]->text + sizeof ("error: \n")); + int n = sizeof ("error: 123456789012345 \n") + strlen (errors[i]->source) + strlen (errors[i]->text); if (len + n >= size) { - size += ORC_ERROR_LENGTH; + size += MAX (n, 256); _log = realloc(_log, size); } - len += sprintf (_log + len, "error: %s\n", errors[i]->text); + len += sprintf (_log + len, "%s @ %i: error: %s\n", errors[i]->source, errors[i]->line_number, errors[i]->text); } *log = _log; } |