return (5);
}
+size_t split_size(char **split_line)
+{
+ size_t res;
+
+ if (!split_line)
+ return (0);
+ res = 0;
+ while (split_line[res])
+ ++res;
+ return (res);
+}
+
static int process_line(const char *line, t_vec *catalog, unsigned short era)
{
char **split_line;
return (1);
if (!ft_strcmp(split_line[1], "passengers") || !ft_strcmp(split_line[1], "cargo"))
{
- if (process_train(split_line, catalog, era))
+ if (split_size(split_line) < 9 || process_train(split_line, catalog, era))
ft_dprintf(STDERR_FILENO, "Error loading train %s!\n", split_line[0]);
}
else if (ft_strcmp(split_line[1], "coupling"))
- if (process_upgrade(split_line, catalog))
+ if (split_size(split_line) < 9 || process_upgrade(split_line, catalog))
ft_dprintf(STDERR_FILENO, "Error loading upgrade %s for train %s!\n", split_line[0], split_line[1]);
i = 0;
while (split_line[i])
era = 0;
while (line)
{
+ line[ft_strlen(line) - 1] = '\0';
if (line[0] != ';')
era = ft_atoi(line);
else