patch 8.2.4953: with 'si' inserting '}' after completion goes wrong
Problem: With 'smartindent' inserting '}' after completion goes wrong.
Solution: Check the cursor is in indent. (closes #10420)
diff --git a/src/indent.c b/src/indent.c
index dfc481a..486259e 100644
--- a/src/indent.c
+++ b/src/indent.c
@@ -1197,7 +1197,8 @@
int temp;
// do some very smart indenting when entering '{' or '}'
- if (((did_si || can_si_back) && c == '{') || (can_si && c == '}'))
+ if (((did_si || can_si_back) && c == '{')
+ || (can_si && c == '}' && inindent(0)))
{
// for '}' set indent equal to indent of line containing matching '{'
if (c == '}' && (pos = findmatch(NULL, '{')) != NULL)