continue;
(void)strcpy(tbuf, matches[idx]);
- if (strtok(tbuf, (const char *)"\t") == NULL)
- continue;
- if ((fname = strtok(NULL, (const char *)"\t")) == NULL)
- continue;
- if ((lno = strtok(NULL, (const char *)"\t")) == NULL)
+ if (strtok(tbuf, (const char *)"\t") == NULL
+ || (fname = strtok(NULL, (const char *)"\t")) == NULL
+ || (lno = strtok(NULL, (const char *)"\t")) == NULL)
+ {
+ vim_free(tbuf);
continue;
+ }
extra = strtok(NULL, (const char *)"\t");
lno[strlen(lno)-2] = '\0'; /* ignore ;" at the end */