Commit Graph

37 Commits

Author SHA1 Message Date
John
42efbfd2fd Test and refactor shorten_fname and shorten_fname1
Rename `shorten_fname` -> `path_shorten_fname`
Rename `shorten_fname1` -> `path_shorten_fname_if_possible`
2014-04-29 09:24:34 -03:00
Eliseo Martínez
4d0dd14189 Use portable format specifiers: Improve arguments formatting.
At some places, printf-like function's arguments styling could be
improved to enhance readability.
2014-04-28 07:59:25 -03:00
John Schmidt
4e1b364a3e Remove alloc_clear
Use `xcalloc` instead.
Inline `alloc_tv` and `alloc_string_tv` in eval.c
2014-04-28 07:41:45 -03:00
Felipe Oliveira Carvalho
4b6b9117b3 No OOM error condition in prep_exarg() 2014-04-24 10:31:31 -03:00
Eliseo Martínez
b8f3ff2a69 Use portable format specifiers: Case %ld - localized - EMSGN.
Fix uses of localized "%ld" within EMSGN():
- Replace "%ld" with "%" PRId64.
- No argument cast needed. EMSGN() will take care of that.
2014-04-23 06:56:33 -03:00
Eliseo Martínez
f4b81576cc Use portable format specifiers: Case %ld - localized - vim_snprintf_add.
Fix uses of localized "%ld" within vim_snprintf_add():
- Replace "%ld" with "%" PRId64.
- Cast corresponding argument to (int64_t).
2014-04-23 06:56:32 -03:00
Eliseo Martínez
22dd4f62d3 Use portable format specifiers: Case %ld - localized - vim_snprintf.
Fix uses of localized "%ld" within vim_snprintf():
- Replace "%ld" with "%" PRId64.
- Cast corresponding argument to (int64_t).
2014-04-23 06:56:32 -03:00
Eliseo Martínez
3f8061f16c Use portable format specifiers: Case %ld - plain - vim_snprintf.
Fix uses of plain "%ld" within vim_snprintf():
- Replace "%ld" with "%" PRId64.
- Cast corresponding argument to (int64_t).
2014-04-23 06:56:32 -03:00
Marco Hinz
43c6ec6803 Remove modelines
Removed modelines are better than modelines that differ from file to
file.
2014-04-16 14:03:19 -03:00
Marco Hinz
cb0adf60de vim-patch:7.4.251
Problem:  Crash when BufAdd autocommand wipes out the buffer.

Solution: Check for buffer to still be valid. Postpone freeing the
          buffer structure. (Hirohito Higashi)

https://code.google.com/p/vim/source/detail?r=29eb4c2a33ac701bfcd4d2e2bed7864eba876e0e
2014-04-16 09:46:01 -03:00
Felipe Oliveira Carvalho
86279cefae Remove more OOM error handling code
From the functions:

 - ExpandBufnames
 - buf_modname()
 - do_autocmd_event()
 - ff_create_stack_element()
 - ff_get_visited_list()
 - ins_complete()
 - msg_show_console_dialog()
 - prt_find_resource()
 - vim_findfile_init()

TODO: refactor msg_show_console_dialog() to make sure it doesn't ever return
NULL.
2014-04-11 12:57:59 -03:00
John Schmidt
6fb58d1c5c Change prefix from os_* to path_* 2014-04-08 21:56:05 -03:00
Felipe Oliveira Carvalho
13848aadbf Remove simpler cases of OOM error handling (after *alloc calls)
By simpler cases I mean cases where the OOM error is not expected to be handled
by the caller of the function that calls `alloc`, `lalloc`, `xrealloc`,
`xmalloc`, `alloc_clear`, and `lalloc_clear`.

These are the functions that:

 - Do not return an allocated buffer
 - Have OOM as the only error condition

I took note of the functions that expect the caller to handle the OOM error and
will go through them to check all the callers that may be handling OOM error in
future commits.

I'm ignoring eval.c and ex_.c in this series of commits. eval.c will soon be
obsolete and I will deal with ex_.c in later PRs.
2014-04-06 22:54:59 -03:00
John Schmidt
26206d4cfd Remove mblen() check 2014-04-05 10:01:22 -03:00
John Schmidt
8074945788 Remove python, perl, lua, ruby 2014-04-05 10:01:22 -03:00
aph
535c450c72 remove DO_AUTOCHDIR 2014-04-04 21:44:58 -03:00
John Schmidt
6f53cb1cc3 Extract memory.c from misc2.c 2014-04-04 16:33:12 -03:00
Thomas Wienecke
bfa4490aac Rename FPC_* constants. 2014-04-03 10:32:41 -03:00
Thomas Wienecke
865e3280a8 Fix seperator->separator, path_tail_with_separator->path_tail_with_sep. 2014-04-03 10:32:41 -03:00
Thomas Wienecke
7021b970b9 Test and refactor gettail_sep -> path_tail_with_seperator. 2014-04-03 10:32:41 -03:00
Thomas Wienecke
77bfb6cd99 Test and refactor gettail -> path_tail. 2014-04-03 10:32:41 -03:00
Thomas Wienecke
6d712defa5 Refactor fullpathcmp -> path_full_compare. 2014-04-03 10:32:41 -03:00
John Schmidt
2cb026c65c Move fix_fname from buffer.c 2014-04-01 08:08:07 -03:00
Justin M. Keyes
d9f5cd6290 Re-integrate FEAT_SIGNS code, close #383
- omit FEAT_NETBEANS_INTG and FEAT_SIGN_ICONS
- omit FEAT_GUI blocks
2014-03-29 20:47:39 -03:00
John Schmidt
f5154d7451 Extract path.c from misc1.c 2014-03-29 13:29:52 -03:00
Thomas Wienecke
5762c4e528 Rename mch_* functions to os_* in os module. 2014-03-27 19:57:55 -03:00
Felipe Oliveira Carvalho
07dad7acf3 Use memmove instead of mch_memmove 2014-03-26 16:28:13 -03:00
Petter Wahlman
edabc6f4c7 adapt to the style guildelines
semi-automated harvest of low hanging fruit:
change the unorthodox use of whitespace.
2014-03-19 07:53:16 -03:00
John
231d4511d1 Moved more functions from misc1.c to indent.c 2014-03-15 11:42:27 -03:00
John
7c51374a82 Extract indent_c.c from misc1.c 2014-03-14 21:19:46 -03:00
Thomas Wienecke
fc86866402 Fix style issues.
* Rename mch_full_name to mch_get_absolute_path.
* Rename mch_is_full_name to mch_is_absolute_path.
* Add a lot of missing parentheses.
* Remove yoda-conditions for consistency.
* Remove spaces in function declaration.
2014-03-06 13:10:58 -03:00
Thomas Wienecke
92a0374d7b Rename and refactor mch_FullName.
* Rename mch_FullName to mch_full_name to match the style guide.
* Add mch_full_dir_name, which saves the absolute path of a given
directory relative to cwd into a given buffer.
* Add function append_path, which glues together two given paths with a
slash.
* Adapt moonscript coding style to the tests.
2014-03-04 06:54:08 -03:00
Nicolas Pierron
d9283c4927 Remove __ARGS macro. Close #205
This is a squash of all commits sent to #81.

- Remove unused undef of __ARGS.
- Fix mch_rename declaration.
- Follow changes related to moved & extracted files.
- Properly indent function declarations of getchar.h and quickfix.c.
2014-03-02 14:19:59 -03:00
Felipe Oliveira Carvalho
410f0a27c5 Extract garray.c from misc2.c
Start to split misc2.c in many other files (see #209).
2014-02-28 06:43:20 -03:00
scott-linder
0ef90c13b7 Removes 'proto' dir
See #137 for the issue.

Every header in the proto directory was:

* Given include guards in the form

    #ifndef NEOVIM_FILENAME_H
    #define NEOVIM_FILENAME_H
        ...
    #endif /* NEOVIM_FILENAM_H */

* Renamed from *.pro -> *.h
* Moved from src/proto/ to src/

This would have caused conficts with some existing headers in src/;
rather than merge these conflicts now (which is a whole other can of
worms involving multiple and conditional inclusion), any header in src/
with a conflicting name was renamed from *.h -> *_defs.h (which may or
may not actually describe its purpose, the change is purely a
namespacing issue).

Once all of these changes were made a script was developed to determine
what #includes needed to be added to each source file to describe its
dependencies and allow it to compile; because the script is so short
and I'll just list it here:

    #! /bin/bash

    cd $(dirname $0)

    # Scrapes `make` output for provided error messages and outputs #includes
    # needed to resolve them.
    #   $1 : part of the clang error message between filename and identifier
    list_missing_includes() {
        for file_missing_pair in $(CC=clang make 2>&1 >/dev/null | sed -n "s/\/\(.*\.[hc]\).*$1.*'\(.*\)'.*/\1:\2/p"); do
            fields=(${file_missing_pair//:/ })
            source_file=${fields[0]}
            missing_func=${fields[1]}
            # Try to find the declaration of the missing function.
            echo $(basename $source_file) \
                \#include \"$(grep -r "\b$missing_func __ARGS" | sed -n "s/.*\/\(.*\)\:.*/\1/p")\"
        # Remove duplicates
        done | sort | uniq
    }

    echo "Finding missing function prototypes..."
    list_missing_includes "implicit declaration of function"
    echo "Finding missing identifier declarations..."
    list_missing_includes "use of undeclared identifier"

Each list of required headers was added by hand in the following format:

    #include "vim.h"
    #include "*_defs.h"
    #include "filename.h"
    /* All other includes in same module here, in alphabetical order. */
    /* All includes from other modules (e.g. "os/*.h") here in alphabetical
     * order. */
2014-02-26 04:17:27 -03:00
scott-linder
b76c358f3d Convert function declarations from K&R to ANSI style.
cproto (http://invisible-island.net/cproto/) was used to do the bulk of
the work in batch; even the most recent version had some issues with
typedef'd parameters; a quick "patch" was to modify `lex.l` to
explicitly include all vim typedefs as known types. One example from
`vim.h` is

    typedef unsigned char char_u;

which was added in `lex.l` as

    <INITIAL>char_u    { save_text_offset(); return T_CHAR; }

Even with these changes there were some problems:

* Two files (`mbyte.c` and `os_unix.c`) were not cleanly converted.
* Any function with the `UNUSED` macro in its parameter list was not converted.

Rather than spend more time fixing the automated approach, the two files
`mbyte.c` and `os_unix.c` were converted by hand.

The `UNUSED` macros were compiler specific, and the alternative, generic
version would require a different syntax, so in order to simplify the
conversion all uses of `UNUSED` were stripped, and then the sources were
run back through cproto. It is planned to reconsider each use of
`UNUSED` manually using a new macro definition.
2014-02-24 09:48:18 -05:00
Thiago de Arruda
72cf89bce8 Import vim from changeset v5628:c9cad40b4181
- Cleanup source tree, leaving only files necessary for compilation/testing
- Process files through unifdef to remove tons of FEAT_* macros
- Process files through uncrustify to normalize source code formatting.
- Port the build system to cmake
2014-01-31 10:39:15 -03:00