aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFelipe Oliveira Carvalho <felipekde@gmail.com>2014-05-12 15:14:29 -0300
committerFelipe Oliveira Carvalho <felipekde@gmail.com>2014-05-19 14:50:25 -0300
commitf88a2d7e1be04879d03d0f7dc91d2f41f20e49db (patch)
tree7135991cb0e5595ff7e22214805a4145cb5ac5f7 /src
parent1d844dda4612be62fa2a0bc0aada2f05da8f0f94 (diff)
downloadrneovim-f88a2d7e1be04879d03d0f7dc91d2f41f20e49db.tar.gz
rneovim-f88a2d7e1be04879d03d0f7dc91d2f41f20e49db.tar.bz2
rneovim-f88a2d7e1be04879d03d0f7dc91d2f41f20e49db.zip
Remove OOM checks: do_string_sub()
Diffstat (limited to 'src')
-rw-r--r--src/nvim/eval.c39
1 files changed, 17 insertions, 22 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index aa759a2275..2f8e65df86 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -19529,27 +19529,23 @@ repeat:
p = vim_strchr(s, sep);
if (p != NULL) {
pat = vim_strnsave(s, (int)(p - s));
- if (pat != NULL) {
- s = p + 1;
- /* find end of substitution */
- p = vim_strchr(s, sep);
- if (p != NULL) {
- sub = vim_strnsave(s, (int)(p - s));
- str = vim_strnsave(*fnamep, *fnamelen);
- *usedlen = (int)(p + 1 - src);
- s = do_string_sub(str, pat, sub, flags);
- if (s != NULL) {
- *fnamep = s;
- *fnamelen = (int)STRLEN(s);
- free(*bufp);
- *bufp = s;
- didit = TRUE;
- }
- free(sub);
- free(str);
- }
- free(pat);
+ s = p + 1;
+ /* find end of substitution */
+ p = vim_strchr(s, sep);
+ if (p != NULL) {
+ sub = vim_strnsave(s, (int)(p - s));
+ str = vim_strnsave(*fnamep, *fnamelen);
+ *usedlen = (int)(p + 1 - src);
+ s = do_string_sub(str, pat, sub, flags);
+ *fnamep = s;
+ *fnamelen = (int)STRLEN(s);
+ free(*bufp);
+ *bufp = s;
+ didit = TRUE;
+ free(sub);
+ free(str);
}
+ free(pat);
}
/* after using ":s", repeat all the modifiers */
if (didit)
@@ -19581,7 +19577,6 @@ char_u *do_string_sub(char_u *str, char_u *pat, char_u *sub, char_u *flags)
int do_all;
char_u *tail;
garray_T ga;
- char_u *ret;
char_u *save_cpo;
char_u *zero_width = NULL;
@@ -19640,7 +19635,7 @@ char_u *do_string_sub(char_u *str, char_u *pat, char_u *sub, char_u *flags)
vim_regfree(regmatch.regprog);
}
- ret = vim_strsave(ga.ga_data == NULL ? str : (char_u *)ga.ga_data);
+ char_u *ret = vim_strsave(ga.ga_data == NULL ? str : (char_u *)ga.ga_data);
ga_clear(&ga);
if (p_cpo == empty_option)
p_cpo = save_cpo;