From 63b87d3cc03ea13dba4db507efc942d4964fb586 Mon Sep 17 00:00:00 2001 From: Weijia Wang <9713184+wegank@users.noreply.github.com> Date: Sat, 7 Mar 2026 23:27:02 +0100 Subject: [PATCH] Allow variable names of arbitrary length --- src/msolve/iofiles.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/msolve/iofiles.c b/src/msolve/iofiles.c index 64aef483..aa9bcf9b 100644 --- a/src/msolve/iofiles.c +++ b/src/msolve/iofiles.c @@ -447,10 +447,11 @@ static inline char *get_variable_name(const char *line, char **prev_pos) { const char comma_splicer = ','; - char *tmp_var = (char *)malloc(50 * sizeof(char)); + char *tmp_var; char *curr_pos = strchr(*prev_pos, comma_splicer); if (curr_pos != NULL) { size_t var_diff = (size_t)(curr_pos - *prev_pos); + tmp_var = (char *)malloc((var_diff + 1) * sizeof(char)); memcpy(tmp_var, *prev_pos, var_diff); tmp_var[var_diff] = '\0'; *prev_pos = curr_pos+1; @@ -458,6 +459,7 @@ static inline char *get_variable_name(const char *line, char **prev_pos) int prev_idx = (int)(*prev_pos - line); int curr_idx = (int)(strlen(line)+1); size_t var_diff = (size_t)(curr_idx - prev_idx); + tmp_var = (char *)malloc((var_diff + 1) * sizeof(char)); memcpy(tmp_var, *prev_pos, var_diff); tmp_var[var_diff] = '\0'; }