Code extracted from:
https://github.com/pboettch/vim-cmake-syntax.git
at commit 40f5f4f356251802c0a12f63e5f717debbd0cadc (master).
Upstream Shortlog
-----------------
Daniel Hahler (1):
84967b5c Skip escaped quotes in cmakeString
Patrick Boettcher (11):
de7c9072 extract properties as well
5e4f9718 update keywords to latest cmake-revision
96ee5480 fix#1 - highlight escaped quotes in strings
d791d3ac README updated, install instruction
e12d6cb4 do not highlight cmake-commands in cmake-command argument-list
d2d564aa multi-line comments are now highlighted (again)
0e62850d update keywords to v3.9.1-460-gce2750817
65932f07 add test-framework and two tests
018855b2 add cpo-saving and restoring (taken from vim's upstream-syntax-files)
8fcb0a7d updated keywords to 3.9.20170830-ge0713
40f5f4f3 preparations to be for inclusion to vim-repo
In case a list file contains a null terminated string that is continued
until a later space, the lexer token information got inconsistent:
e.g. an argument "TEST\0FOOBAR" is passed by the lexer as a token
char* = "TEST\0FOOBAR" and length 11
^^ note: ascii 0x00
Using strdup in cmListFileLexer leads lexer->token.text to be allocated
with size 5 and lexer->token.length to be set to 11
A subsequent call to this function with an argument of 5 < length <= 11
wrongly assumed a sufficiently sized buffer and therefore corrupted the
heap buffer. The program might crash due to this corruption.
The case "NullTerminatedArgument" is intentionally using a quite large
'rest' to increase the chance to actually hit the issue. It will reliably
crash with address sanitizer enabled though.
This fix addresses all rules where arbitrary characters are matched to
ignore \0 in order to fall through to the rule that matches an arbitrary
character as BadCharacter.
Signed-off-by: Matthias Maennich <matthias@maennich.net>
73ed503e jsoncpp: Drop doxygen comments not recognized by Clang
1a2b62b1 jsoncpp: Add initialization to pacify scanbuild
c103a959 jsoncpp: Fix compilation on SunPro
0a0f7106 jsoncpp: Drop deprecation markup
e0981955 Merge branch 'upstream-jsoncpp' into update-jsoncpp
a7241206 jsoncpp: Update script to get jsoncpp 1.8.2
cb844d41 jsoncpp: Drop unnecessary files from source list
7c06d356 Merge branch 'upstream-jsoncpp' into update-jsoncpp
...
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1199
Microsoft has dedicated toolset versions for XP compatible binaries
(v110 vs. v110_xp, v141 vs. v141_xp) and CMake doesn't find wxWidgets
compiled with _xp tools. This patch adds _xp to directories searched
for wxWin libraries.
Create a `<LANG>_CPPCHECK` target property (initialized by a
`CMAKE_<LANG>_CPPCHECK` variable) to specify a `cppcheck` command line
to be run along with the compiler.
The scanbuild analysis cannot see that decodeUnicodeEscapeSequence
either initializes the `unicode` argument or returns `false` such
that the code following it runs only if `unicode` is initialized.
Add an explicit initialization to pacify it.
Even though we disable warnings when building jsoncpp itself, including
its headers from other CMake sources may still cause warnings.
Additional work will be needed to port CMake to newer jsoncpp interfaces
while still supporting jsoncpp 1.0.0. For now, just suppress the
markup.
ee51f374 Help/dev: Add commit reference format to review process guide
c928439c Help/dev: Organize commit message instructions into subsections
Acked-by: Kitware Robot <kwrobot@kitware.com>
Merge-request: !1182
In commit 8ed03baa76 (gitattributes: prefer `eol=crlf` to `-crlf`,
2017-08-23) we left a few CRLF blobs in the repository. Some Git
versions get confused by text files with CRLF blobs. Convert them
to LF blobs. Use the `eol=crlf` attribute to tell Git to use CRLF
on checkout.