Mercurial > vim
comparison src/highlight.c @ 28668:53c608c7ea9e v8.2.4858
patch 8.2.4858: K_SPECIAL may be escaped twice
Commit: https://github.com/vim/vim/commit/db08887f24d20be11d184ce321bc0890613e42bd
Author: zeertzjq <zeertzjq@outlook.com>
Date: Mon May 2 22:53:45 2022 +0100
patch 8.2.4858: K_SPECIAL may be escaped twice
Problem: K_SPECIAL may be escaped twice.
Solution: Avoid double escaping. (closes https://github.com/vim/vim/issues/10340)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 03 May 2022 00:00:04 +0200 |
parents | 4dcccb2673fe |
children | c655908382fa |
comparison
equal
deleted
inserted
replaced
28667:7782b07d29ca | 28668:53c608c7ea9e |
---|---|
1354 else | 1354 else |
1355 { | 1355 { |
1356 // Copy characters from arg[] to buf[], translating <> codes. | 1356 // Copy characters from arg[] to buf[], translating <> codes. |
1357 for (p = arg, off = 0; off < 100 - 6 && *p; ) | 1357 for (p = arg, off = 0; off < 100 - 6 && *p; ) |
1358 { | 1358 { |
1359 len = trans_special(&p, buf + off, FSK_SIMPLIFY, NULL); | 1359 len = trans_special(&p, buf + off, FSK_SIMPLIFY, FALSE, NULL); |
1360 if (len > 0) // recognized special char | 1360 if (len > 0) // recognized special char |
1361 off += len; | 1361 off += len; |
1362 else // copy as normal char | 1362 else // copy as normal char |
1363 buf[off++] = *p++; | 1363 buf[off++] = *p++; |
1364 } | 1364 } |