patch 7.4.915
Problem: When removing from 'path' and then adding, a comma may go missing.
(Malcolm Rowe)
Solution: Fix the check for P_ONECOMMA. (closes #471)
diff --git a/src/option.c b/src/option.c
index db3a197..bc44cb2 100644
--- a/src/option.c
+++ b/src/option.c
@@ -4883,9 +4883,10 @@
{
i = (int)STRLEN(origval);
/* strip a trailing comma, would get 2 */
- if (comma && (flags & P_ONECOMMA) && i > 1
- && origval[i - 1] == ','
- && origval[i - 2] != '\\')
+ if (comma && i > 1
+ && (flags & P_ONECOMMA) == P_ONECOMMA
+ && origval[i - 1] == ','
+ && origval[i - 2] != '\\')
i--;
mch_memmove(newval + i + comma, newval,
STRLEN(newval) + 1);