Merge branch 'js/maint-apply-tab-in-indent-fix' into HEAD
[gitweb.git] / ws.c
diff --git a/ws.c b/ws.c
index 7302f8f5a2cd450771aefcba0a385a90121ba0cf..e3504360dab46231298eda0c3ffadfb69e79c609 100644 (file)
--- a/ws.c
+++ b/ws.c
@@ -363,12 +363,13 @@ void ws_fix_copy(struct strbuf *dst, const char *src, int len, unsigned ws_rule,
                fixed = 1;
        } else if ((ws_rule & WS_TAB_IN_INDENT) && last_tab_in_indent >= 0) {
                /* Expand tabs into spaces */
+               int start = dst->len;
                int last = last_tab_in_indent + 1;
                for (i = 0; i < last; i++) {
                        if (src[i] == '\t')
                                do {
                                        strbuf_addch(dst, ' ');
-                               } while (dst->len % 8);
+                               } while ((dst->len - start) % 8);
                        else
                                strbuf_addch(dst, src[i]);
                }