Commit Graph

2486 Commits

Author SHA1 Message Date
Florian Walch
b1d025a0c8 Ignore update errors in vim-patch script. 2014-12-23 11:15:42 +01:00
Marco Hinz
c3de63bfbc vim-patch:7.4.457 #1713
Problem:  Using getchar() in an expression mapping may result in
          K_CURSORHOLD, which can't be recognized.
Solution: Add the <CursorHold> key.  (Hirohito Higashi)

https://code.google.com/p/vim/source/detail?r=v7-4-457
2014-12-23 03:38:17 -05:00
Justin M. Keyes
bac6fb41b2 Merge pull request #1712 from fwalch/vim-7.4.456
vim-patch:7.4.456
2014-12-23 03:35:20 -05:00
Justin M. Keyes
4e28e1aeb6 Merge pull request #1685 from justinmk/coverity74718
coverity/74718
2014-12-20 14:52:53 -05:00
Justin M. Keyes
22a681a2d5 coverity/74718: invalid FUNC_ATTR_NONNULL_ARG
- avoid null passed to ELOG format string
- receive (char *) internally
- modify identifier names for consistency
- edit comments for concision and consistency
2014-12-20 10:37:11 -05:00
Marco Hinz
7e31044cd8 vim-patch:7.4.456
Problem:  'backupcopy' is global, cannot write only some
          files in a different way.
Solution: Make 'backupcopy' global-local. (Christian Brabandt)

https://code.google.com/p/vim/source/detail?r=v7-4-456
2014-12-20 16:31:59 +01:00
Justin M. Keyes
5a1cddc47b Merge pull request #1711 from fwalch/vim-7.4.455
vim-patch:7.4.455
2014-12-20 09:19:02 -05:00
Marco Hinz
7fc7f026ad vim-patch:7.4.455
Problem:  Completion for :buf does not use 'wildignorecase'. (Akshay H)
Solution: Pass the 'wildignorecase' flag around.

https://code.google.com/p/vim/source/detail?r=v7-4-455
2014-12-20 09:41:51 +01:00
Justin M. Keyes
5fe519f78a Merge pull request #1247 from splinterofchaos/350
vim-patch:7.4.350 + vim-patch:7.4.355 + vim-patch:7.4.390
2014-12-19 19:33:05 -05:00
Scott Prager
9c244c7303 vim-patch:7.4.390
Problem:    Advancing pointer over end of a string.
Solution:   Init quote character to -1 instead of zero. (Dominique Pelle)

https://code.google.com/p/vim/source/detail?r=v7-4-390
2014-12-19 18:57:46 -05:00
Scott Prager
0eb4c02778 vim-patch:7.4.355
Problem:    Several problems with Javascript indenting.
Solution:   Improve Javascript indenting.

https://code.google.com/p/vim/source/detail?r=v7-4-355
2014-12-19 18:57:45 -05:00
Scott Prager
12b3f49ea1 vim-patch:7.4.350
Problem:    Using C indenting for Javascript does not work well for a {} block
            inside parenthesis.
Solution:   When looking for a matching paren ignore one that is before the
            start of a {} block.

https://code.google.com/p/vim/source/detail?r=v7-4-350
2014-12-19 18:57:45 -05:00
Scott Prager
949fb9721f Doxygen find_match_paren(). 2014-12-19 18:57:45 -05:00
Justin M. Keyes
e922a74273 Merge pull request #1648 from Pyrohh/amiga-vms-cleanup
Amiga/VMS cleanup
2014-12-19 17:08:39 -05:00
Michael Reed
a62fe49d3c Remove Amiga remnants
Notes regarding the removal of specific items:

  - Aztec C: only on the Amiga.
  - mch_check_win(): doesn't exist anymore.
  - Comment in ex_cmds.c: It seems the context for this comment was
    removed, but the comment was inadvertantly left alone.
2014-12-19 15:28:49 -05:00
Michael Reed
a5e1723bb1 Remove dec-mcs remnants
It was (apparently) the default character encoding file used for line
printing on VMS, which is unsupported.
2014-12-19 15:28:49 -05:00
Michael Reed
6f50fd6c35 Remove VMS remnants 2014-12-19 15:28:49 -05:00
Justin M. Keyes
189427efd7 Merge pull request #1707 from fwalch/na-patches
vim-patch: Mark patches as NA.
2014-12-19 11:56:11 -05:00
Florian Walch
67f896562d vim-patch: Mark patches as NA. 2014-12-19 10:22:31 +01:00
Justin M. Keyes
943b063290 Merge pull request #1663 from philix/array_size
Define and use the ARRAY_SIZE macro
2014-12-19 02:23:26 -05:00
Justin M. Keyes
5df8bf077b Merge pull request #1704 from fwalch/vim-7.4.434
vim-patch:7.4.434, vim-patch:7.4.442
2014-12-19 01:35:42 -05:00
Justin M. Keyes
e47105c47d Merge pull request #1638 from Grimy/ex-drop
Reimplement :drop
2014-12-19 01:06:40 -05:00
Justin M. Keyes
b1cd16ab8d Merge pull request #1699 from three-comrades/fix-viminfo
Use a local viminfo file when running the old tests.
2014-12-19 00:32:28 -05:00
Florian Walch
3f7b8199df vim-patch:7.4.442
Problem:    Using unitinialized variable.
Solution:   Pass the first window of the tabpage.

https://code.google.com/p/vim/source/detail?r=v7-4-442
2014-12-18 21:22:46 +01:00
Florian Walch
815fe28450 vim-patch:7.4.434
Problem:    gettabvar() is not consistent with getwinvar() and getbufvar().
Solution:   Return a dict with all variables when the varname is empty.
	    (Yasuhiro Matsumoto)

https://code.google.com/p/vim/source/detail?r=v7-4-434
2014-12-18 21:22:40 +01:00
Felipe Oliveira Carvalho
478c99c128 Change the signature of utf_convert() (mbyte.c) to use ARRAY_SIZE 2014-12-18 15:41:37 -03:00
Felipe Oliveira Carvalho
2140f8f1f0 Change the signature of intable() (mbyte.c) to use ARRAY_SIZE 2014-12-18 15:41:37 -03:00
Felipe Oliveira Carvalho
8aeb2e37ee Use ARRAY_SIZE where Coccinelle wasn't able to do it 2014-12-18 15:41:37 -03:00
Felipe Oliveira Carvalho
3c857900fe Define and use the ARRAY_SIZE macro
A similar macro is defined in the Linux kernel [1].

To refactor the code I used a slightly modified Coccinelle script I found in
[2].

```diff
// Use the macro ARRAY_SIZE when possible
//
// Confidence: High
// Copyright: (C) Gilles Muller, Julia Lawall, EMN, DIKU.  GPLv2.
// URL: http://www.emn.fr/x-info/coccinelle/rules/array.html
// Options: -I ... -all_includes can give more complete results

@@
type T;
T[] E;
@@

- (sizeof(E)/sizeof(*E))
+ ARRAY_SIZE(E)

@@
type T;
T[] E;
@@

- (sizeof(E)/sizeof(E[...]))
+ ARRAY_SIZE(E)

@@
type T;
T[] E;
@@

- (sizeof(E)/sizeof(T))
+ ARRAY_SIZE(E)

@n@
identifier AS,E;
@@

- #define AS(E) ARRAY_SIZE(E)

@@
expression E;
identifier n.AS;
@@

- AS(E)
+ ARRAY_SIZE(E)
```

`spatch --in-place --sp-file array_size.cocci -I src/ -I build/include/ -I build/src/nvim/auto/ src/nvim/*.c`

[1] http://lxr.free-electrons.com/source/include/linux/kernel.h#L54
[2] http://www.emn.fr/z-info/coccinelle/rules/#macros
2014-12-18 15:41:37 -03:00
Justin M. Keyes
bd19cc4f8f Merge pull request #1701 from fwalch/vim-7.4.423
vim-patch:7.4.423
2014-12-18 12:57:39 -05:00
Justin M. Keyes
cef6ec9dfc Merge pull request #1702 from fwalch/update-busted
Update busted to 2.0.rc4.
2014-12-18 12:56:37 -05:00
Florian Walch
745c462ed3 Update busted to 2.0.rc4. 2014-12-18 18:22:08 +01:00
Florian Walch
c780075afa vim-patch:7.4.423
Problem:    expand("$shell") does not work as documented.
Solution:   Do not escape the $ when expanding environment variables.

https://code.google.com/p/vim/source/detail?r=v7-4-423
2014-12-18 15:41:27 +01:00
John Szakmeister
1eef530351 Merge pull request #1588 from equalsraf/tb-no-central-deps
Dont force ../.deps in third-party/CMakeLists.txt use the Makefile instead
2014-12-18 08:11:00 -05:00
John Szakmeister
379dcd7d7f Merge pull request #1686 from jszakmeister/include-opts-in-fortify-check
build: include the flags for the build type in the _FORTIFY_SOURCE check
2014-12-18 04:14:14 -05:00
John Szakmeister
9ebc960cb9 Merge pull request #1654 from gaurdro/rpm-fortify_source
[RFC] Fix issue 1569: Build fails in rpmbuild environment
2014-12-18 04:01:32 -05:00
Ross Smith
1c3d093c85 Detect and propagate _FORTIFY_SOURCE prefix
Get prefix to a -D_FORTIFY_SOURCE string if it is present in
CFLAGS and apply the prefix to flags added to redefine
_FORTIFY_SOURCE in CFLAGS and CPPFLAGS

* fixes 1569
2014-12-17 23:05:46 -05:00
Victor Adam
4a3b3d2913 Reimplement :drop (vim-patch:0)
The :drop ex command was inadvertently removed when removing FEAT_GUI.
This patch reintroduces it.
2014-12-18 01:58:36 +01:00
Julian Mehne
84dda11ec3 Remove superfluous settings from legacy tests. 2014-12-18 00:50:17 +01:00
Justin M. Keyes
742ada0869 Merge pull request #1698 from elmart/clang-analysis-fixes-6
Fix clang analysis warnings. (6)
2014-12-17 17:43:45 -05:00
Julian Mehne
a8c926fc91 Use a local viminfo file when running the old tests.
This is required after defaulting to `nocp`, so that ~/.nviminfo
files don't interfere with the old legacy tests.
2014-12-17 23:32:56 +01:00
Eliseo Martínez
5394796fd3 Fix warnings: window.c: win_close_othertab(): Np dereference: FP.
Problem    : Dereference of null pointer @ 1980.
Diagnostic : False positive.
Rationale  : I haven't been able to find the real reason why this is
             signaled. Nonetheless, I've been able to track down the
             introduction of this warning to commit
             77135447e0.
             The change there affecting this function is just a
             transformation maintaining semantics. So, this must be a
             FP, though I can't explain why.
             Analyzer thinks `win->w_buffer` can be null in line 1980,
             following an error path assuming win->w_buffer null at line
             1819. Given that `win_close` function was not modified by
             mentioned commit, I don't understand why this path is
             analyzed after the changes, but not before them. Or if it's
             analyzed, why it's discarded before changes but not after
             them. I don't see anything in changes to
             `close_last_window_tabpage` that should affect to
             being able to deduce `win->w_buffer` is not null.
Resolution : Assert buffer not null in `win_close_othertab`.
             Function comments state that passed window should have a
             buffer that can be hidden, which implies there should be a
             buffer.
             Reverting changes to `close_last_window_tabpage` in
             mentioned commit would be another way to fix this (tried
             and worked).
             But assert is preferred in this case because flat style
             reads better and we have some other way to fix it.
2014-12-17 22:10:53 +01:00
Eliseo Martínez
885661d25b Fix warnings: syntax.c: get_id_list(): Double free: FP.
Problem    : Double free @ 5213.
Diagnostic : False positive.
Rationale  : I haven't been able to find the real reason why this is
             signaled. Nonetheless, I've been able to track down the
             introduction of this warning to commit
             77135447e0.
             The change there affecting this function is just a
             transformation maintaining semantics. So, this must be a
             FP, though I can't explain why.
Resolution : Revert changes in mentioned commmit touching this function.
2014-12-17 22:10:14 +01:00
Eliseo Martínez
693da00920 Fix warnings: option.c: makeset()/put_setnum(): Various (3): FP.
Problems   : Dereference of null pointer @ 6251.
             Dereference of null pointer @ 6267.
             Dereference of null pointer @ 6351.
Diagnostic : False positive.
Rationale  : Problems occur if varp is null after
             `varp = get_varp_scope(p, opt_flags);`.
             That can only happen if option is hidden. Those are options
             that can be set (for backwards compatibility reasons) but
             that do nothing (see `:h hidden-options`,
             `:h missing-options`). In particular, even if setting them
             is allowed, value is not stored, so these options have no
             real value.
             So, suggested error paths should not occur, as checks
             comparing option value and default value should discard
             them.
Resolution : We could just `assert(varp)` before line 6235
             `varp_local = varp;`. That was tried and worked.
             But we prefer modifying the code to explicitly skip hidden
             options.
             A redundant `!istermoption(p)` is removed too (it's already
             checked by for loop condition).
2014-12-17 21:45:01 +01:00
Justin M. Keyes
10a45846dc Merge pull request #1688 from elmart/coverity-issues-1
coverity issues
2014-12-16 15:39:26 -05:00
Eliseo Martínez
e0b23b3d09 coverity/75594: Explicit null dereferenced: RI.
Problem    : Exlicit null dereferenced (FORWARD NULL) @ 2859.
Diagnostic : Real issue.
Rationale  : Code within `if (!p_bk)` seems to assume `backup` not null
             at that point, which may not be true.
Resolution : Don't enter conditional on null `backup`.
2014-12-16 21:02:14 +01:00
Eliseo Martínez
85ee4b83ac Passing-by: Fix FALSE/FAIL confusion.
FALSE was being used instead of FAIL.
They happen to have the same value, so it works the same.
But from function comment it's clear it uses the OK/FAIL convention.
2014-12-16 21:01:53 +01:00
Eliseo Martínez
a97f9e9594 coverity/13696: Unchecked return value: RI.
Problem    : Unchecked return value (CHECKED_RETURN) @ 2644.
Diagnostic : Real issue.
Rationale  : Other `u_save` invocations are checked, and there's no
             reason to think this invocation could not fail.
Resolution : Check and return if failed (other previous checks in the
             same function just return, without reporting error, so
             we just do the same).
2014-12-16 21:01:22 +01:00
Eliseo Martínez
9b1c939370 coverity/13695: Unchecked return value: RI.
Problem    : Unchecked return value (CHECKED_RETURN) @ 8554.
Diagnostic : Real issue.
Rationale  : Other invocations of `do_source` are checked and generate
             an error message if fail. There seems to be no reason why
             this particular instance could not fail the same.
Resolution : Check invocation and generate error message on failure.
2014-12-16 21:00:17 +01:00
John Szakmeister
0a5dad8a10 build: include the flags for the build type in the _FORTIFY_SOURCE check
It turns out the check was being performed without optimizations enabled
even when the CMAKE_BUILD_TYPE was set to a release build.  This led to
_FORTIFY_SOURCE's level not being correctly determined, and us failing
to apply the correct workaround.

To counter this, we'll take the default flags for the build type and
apply them.  Also, if options are passed via CFLAGS, they are
automatically passed on to the underlying build.  So this should cover
all the necessary ground.

This fixes #1647.
2014-12-16 06:02:42 -05:00