Skip to content

Commit 8410557

Browse files
authored
Merge pull request #285 from wegank/io-fix-3
Allow variable names of arbitrary length
2 parents 8438768 + 63b87d3 commit 8410557

1 file changed

Lines changed: 3 additions & 1 deletion

File tree

src/msolve/iofiles.c

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -447,17 +447,19 @@ static inline char *get_variable_name(const char *line, char **prev_pos)
447447
{
448448
const char comma_splicer = ',';
449449

450-
char *tmp_var = (char *)malloc(50 * sizeof(char));
450+
char *tmp_var;
451451
char *curr_pos = strchr(*prev_pos, comma_splicer);
452452
if (curr_pos != NULL) {
453453
size_t var_diff = (size_t)(curr_pos - *prev_pos);
454+
tmp_var = (char *)malloc((var_diff + 1) * sizeof(char));
454455
memcpy(tmp_var, *prev_pos, var_diff);
455456
tmp_var[var_diff] = '\0';
456457
*prev_pos = curr_pos+1;
457458
} else { /** we are at the last variable */
458459
int prev_idx = (int)(*prev_pos - line);
459460
int curr_idx = (int)(strlen(line)+1);
460461
size_t var_diff = (size_t)(curr_idx - prev_idx);
462+
tmp_var = (char *)malloc((var_diff + 1) * sizeof(char));
461463
memcpy(tmp_var, *prev_pos, var_diff);
462464
tmp_var[var_diff] = '\0';
463465
}

0 commit comments

Comments
 (0)