patch 8.2.4951: smart indenting done when not enabled
Problem: Smart indenting done when not enabled.
Solution: Check option values before setting can_si. (closes #10420)
diff --git a/src/change.c b/src/change.c
index 8ba0a54..b7618c5 100644
--- a/src/change.c
+++ b/src/change.c
@@ -1392,14 +1392,7 @@
int do_cindent;
#endif
#ifdef FEAT_SMARTINDENT
- int do_si = (!p_paste && curbuf->b_p_si
-# ifdef FEAT_CINDENT
- && !curbuf->b_p_cin
-# endif
-# ifdef FEAT_EVAL
- && *curbuf->b_p_inde == NUL
-# endif
- );
+ int do_si = may_do_si();
int no_si = FALSE; // reset did_si afterwards
int first_char = NUL; // init for GCC
#endif