version 1.14, 2006/02/26 10:07:50 |
version 1.15, 2006/03/05 16:34:31 |
|
|
if (op == 'a') { |
if (op == 'a') { |
if ((start > dlines->l_nblines) || |
if ((start > dlines->l_nblines) || |
(start < 0) || (*ep != 'a')) |
(start < 0) || (*ep != 'a')) |
return (-1); |
fatal("ed_patch_lines"); |
} else if (op == 'c') { |
} else if (op == 'c') { |
if ((start > dlines->l_nblines) || |
if ((start > dlines->l_nblines) || |
(start < 0) || ((*ep != ',') && (*ep != 'c'))) |
(start < 0) || ((*ep != ',') && (*ep != 'c'))) |
return (-1); |
fatal("ed_patch_lines"); |
|
|
if (*ep == ',') { |
if (*ep == ',') { |
ep++; |
ep++; |
end = (int)strtol(ep, &ep, 10); |
end = (int)strtol(ep, &ep, 10); |
if ((end < 0) || (*ep != 'c')) |
if ((end < 0) || (*ep != 'c')) |
return (-1); |
fatal("ed_patch_lines"); |
} else { |
} else { |
end = start; |
end = start; |
} |
} |
|
|
} |
} |
|
|
if (dlp == NULL) |
if (dlp == NULL) |
return (-1); |
fatal("ed_patch_lines"); |
|
|
|
|
if (op == 'c') { |
if (op == 'c') { |
|
|
ndlp = lp; |
ndlp = lp; |
lp = TAILQ_NEXT(lp, l_list); |
lp = TAILQ_NEXT(lp, l_list); |
if (lp == NULL) |
if (lp == NULL) |
return (-1); |
fatal("ed_patch_lines"); |
|
|
if (!strcmp(lp->l_line, ".")) |
if (!strcmp(lp->l_line, ".")) |
break; |
break; |