0
0
mirror of https://github.com/vim/vim.git synced 2025-09-23 03:43:49 -04:00

patch 8.1.2388: using old C style comments

Problem:    Using old C style comments.
Solution:   Use // comments where appropriate.
This commit is contained in:
Bram Moolenaar
2019-12-04 21:57:43 +01:00
parent 2ab2e8608f
commit 4ba37b5833
12 changed files with 1926 additions and 1930 deletions

View File

@@ -48,7 +48,7 @@ json_encode(typval_T *val, int options)
{ {
garray_T ga; garray_T ga;
/* Store bytes in the growarray. */ // Store bytes in the growarray.
ga_init2(&ga, 1, 4000); ga_init2(&ga, 1, 4000);
json_encode_gap(&ga, val, options); json_encode_gap(&ga, val, options);
ga_append(&ga, NUL); ga_append(&ga, NUL);
@@ -104,8 +104,8 @@ write_string(garray_T *gap, char_u *str)
if (!enc_utf8) if (!enc_utf8)
{ {
/* Convert the text from 'encoding' to utf-8, the JSON string is // Convert the text from 'encoding' to utf-8, the JSON string is
* always utf-8. */ // always utf-8.
conv.vc_type = CONV_NONE; conv.vc_type = CONV_NONE;
convert_setup(&conv, p_enc, (char_u*)"utf-8"); convert_setup(&conv, p_enc, (char_u*)"utf-8");
if (conv.vc_type != CONV_NONE) if (conv.vc_type != CONV_NONE)
@@ -117,7 +117,7 @@ write_string(garray_T *gap, char_u *str)
while (*res != NUL) while (*res != NUL)
{ {
int c; int c;
/* always use utf-8 encoding, ignore 'encoding' */ // always use utf-8 encoding, ignore 'encoding'
c = utf_ptr2char(res); c = utf_ptr2char(res);
switch (c) switch (c)
@@ -132,8 +132,8 @@ write_string(garray_T *gap, char_u *str)
ga_append(gap, '\\'); ga_append(gap, 'f'); break; ga_append(gap, '\\'); ga_append(gap, 'f'); break;
case 0x0d: case 0x0d:
ga_append(gap, '\\'); ga_append(gap, 'r'); break; ga_append(gap, '\\'); ga_append(gap, 'r'); break;
case 0x22: /* " */ case 0x22: // "
case 0x5c: /* \ */ case 0x5c: // backslash
ga_append(gap, '\\'); ga_append(gap, '\\');
ga_append(gap, c); ga_append(gap, c);
break; break;
@@ -200,9 +200,9 @@ json_encode_item(garray_T *gap, typval_T *val, int copyID, int options)
case VVAL_TRUE: ga_concat(gap, (char_u *)"true"); break; case VVAL_TRUE: ga_concat(gap, (char_u *)"true"); break;
case VVAL_NONE: if ((options & JSON_JS) != 0 case VVAL_NONE: if ((options & JSON_JS) != 0
&& (options & JSON_NO_NONE) == 0) && (options & JSON_NO_NONE) == 0)
/* empty item */ // empty item
break; break;
/* FALLTHROUGH */ // FALLTHROUGH
case VVAL_NULL: ga_concat(gap, (char_u *)"null"); break; case VVAL_NULL: ga_concat(gap, (char_u *)"null"); break;
} }
break; break;
@@ -222,7 +222,7 @@ json_encode_item(garray_T *gap, typval_T *val, int copyID, int options)
case VAR_PARTIAL: case VAR_PARTIAL:
case VAR_JOB: case VAR_JOB:
case VAR_CHANNEL: case VAR_CHANNEL:
/* no JSON equivalent TODO: better error */ // no JSON equivalent TODO: better error
emsg(_(e_invarg)); emsg(_(e_invarg));
return FAIL; return FAIL;
@@ -268,7 +268,7 @@ json_encode_item(garray_T *gap, typval_T *val, int copyID, int options)
&& li->li_next == NULL && li->li_next == NULL
&& li->li_tv.v_type == VAR_SPECIAL && li->li_tv.v_type == VAR_SPECIAL
&& li->li_tv.vval.v_number == VVAL_NONE) && li->li_tv.vval.v_number == VVAL_NONE)
/* add an extra comma if the last item is v:none */ // add an extra comma if the last item is v:none
ga_append(gap, ','); ga_append(gap, ',');
li = li->li_next; li = li->li_next;
if (li != NULL) if (li != NULL)
@@ -405,21 +405,21 @@ json_decode_string(js_read_T *reader, typval_T *res, int quote)
if (res != NULL) if (res != NULL)
ga_init2(&ga, 1, 200); ga_init2(&ga, 1, 200);
p = reader->js_buf + reader->js_used + 1; /* skip over " or ' */ p = reader->js_buf + reader->js_used + 1; // skip over " or '
while (*p != quote) while (*p != quote)
{ {
/* The JSON is always expected to be utf-8, thus use utf functions // The JSON is always expected to be utf-8, thus use utf functions
* here. The string is converted below if needed. */ // here. The string is converted below if needed.
if (*p == NUL || p[1] == NUL || utf_ptr2len(p) < utf_byte2len(*p)) if (*p == NUL || p[1] == NUL || utf_ptr2len(p) < utf_byte2len(*p))
{ {
/* Not enough bytes to make a character or end of the string. Get // Not enough bytes to make a character or end of the string. Get
* more if possible. */ // more if possible.
if (reader->js_fill == NULL) if (reader->js_fill == NULL)
break; break;
len = (int)(reader->js_end - p); len = (int)(reader->js_end - p);
reader->js_used = (int)(p - reader->js_buf); reader->js_used = (int)(p - reader->js_buf);
if (!reader->js_fill(reader)) if (!reader->js_fill(reader))
break; /* didn't get more */ break; // didn't get more
p = reader->js_buf + reader->js_used; p = reader->js_buf + reader->js_used;
reader->js_end = reader->js_buf + STRLEN(reader->js_buf); reader->js_end = reader->js_buf + STRLEN(reader->js_buf);
continue; continue;
@@ -466,7 +466,7 @@ json_decode_string(js_read_T *reader, typval_T *res, int quote)
{ {
varnumber_T nr2 = 0; varnumber_T nr2 = 0;
/* decode surrogate pair: \ud812\u3456 */ // decode surrogate pair: \ud812\u3456
len = 0; len = 0;
vim_str2nr(p + 2, NULL, &len, vim_str2nr(p + 2, NULL, &len,
STR2NR_HEX + STR2NR_FORCE, &nr2, NULL, 4, TRUE); STR2NR_HEX + STR2NR_FORCE, &nr2, NULL, 4, TRUE);
@@ -492,7 +492,7 @@ json_decode_string(js_read_T *reader, typval_T *res, int quote)
} }
break; break;
default: default:
/* not a special char, skip over \ */ // not a special char, skip over backslash
++p; ++p;
continue; continue;
} }
@@ -533,7 +533,7 @@ json_decode_string(js_read_T *reader, typval_T *res, int quote)
{ {
vimconv_T conv; vimconv_T conv;
/* Convert the utf-8 string to 'encoding'. */ // Convert the utf-8 string to 'encoding'.
conv.vc_type = CONV_NONE; conv.vc_type = CONV_NONE;
convert_setup(&conv, (char_u*)"utf-8", p_enc); convert_setup(&conv, (char_u*)"utf-8", p_enc);
if (conv.vc_type != CONV_NONE) if (conv.vc_type != CONV_NONE)
@@ -560,14 +560,14 @@ json_decode_string(js_read_T *reader, typval_T *res, int quote)
} }
typedef enum { typedef enum {
JSON_ARRAY, /* parsing items in an array */ JSON_ARRAY, // parsing items in an array
JSON_OBJECT_KEY, /* parsing key of an object */ JSON_OBJECT_KEY, // parsing key of an object
JSON_OBJECT /* parsing item in an object, after the key */ JSON_OBJECT // parsing item in an object, after the key
} json_decode_T; } json_decode_T;
typedef struct { typedef struct {
json_decode_T jd_type; json_decode_T jd_type;
typval_T jd_tv; /* the list or dict */ typval_T jd_tv; // the list or dict
typval_T jd_key_tv; typval_T jd_key_tv;
char_u *jd_key; char_u *jd_key;
} json_dec_item_T; } json_dec_item_T;
@@ -611,17 +611,17 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
{ {
retval = MAYBE; retval = MAYBE;
if (top_item->jd_type == JSON_OBJECT) if (top_item->jd_type == JSON_OBJECT)
/* did get the key, clear it */ // did get the key, clear it
clear_tv(&top_item->jd_key_tv); clear_tv(&top_item->jd_key_tv);
goto theend; goto theend;
} }
if (top_item->jd_type == JSON_OBJECT_KEY if (top_item->jd_type == JSON_OBJECT_KEY
|| top_item->jd_type == JSON_ARRAY) || top_item->jd_type == JSON_ARRAY)
{ {
/* Check for end of object or array. */ // Check for end of object or array.
if (*p == (top_item->jd_type == JSON_ARRAY ? ']' : '}')) if (*p == (top_item->jd_type == JSON_ARRAY ? ']' : '}'))
{ {
++reader->js_used; /* consume the ']' or '}' */ ++reader->js_used; // consume the ']' or '}'
--stack.ga_len; --stack.ga_len;
if (stack.ga_len == 0) if (stack.ga_len == 0)
{ {
@@ -644,7 +644,7 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
{ {
char_u *key; char_u *key;
/* accept an object key that is not in quotes */ // accept an object key that is not in quotes
key = p = reader->js_buf + reader->js_used; key = p = reader->js_buf + reader->js_used;
while (*p != NUL && *p != ':' && *p > ' ') while (*p != NUL && *p != ':' && *p > ' ')
++p; ++p;
@@ -660,7 +660,7 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
{ {
switch (*p) switch (*p)
{ {
case '[': /* start of array */ case '[': // start of array
if (top_item && top_item->jd_type == JSON_OBJECT_KEY) if (top_item && top_item->jd_type == JSON_OBJECT_KEY)
{ {
retval = FAIL; retval = FAIL;
@@ -679,7 +679,7 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
break; break;
} }
++reader->js_used; /* consume the '[' */ ++reader->js_used; // consume the '['
top_item = ((json_dec_item_T *)stack.ga_data) top_item = ((json_dec_item_T *)stack.ga_data)
+ stack.ga_len; + stack.ga_len;
top_item->jd_type = JSON_ARRAY; top_item->jd_type = JSON_ARRAY;
@@ -691,7 +691,7 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
} }
continue; continue;
case '{': /* start of object */ case '{': // start of object
if (top_item && top_item->jd_type == JSON_OBJECT_KEY) if (top_item && top_item->jd_type == JSON_OBJECT_KEY)
{ {
retval = FAIL; retval = FAIL;
@@ -710,7 +710,7 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
break; break;
} }
++reader->js_used; /* consume the '{' */ ++reader->js_used; // consume the '{'
top_item = ((json_dec_item_T *)stack.ga_data) top_item = ((json_dec_item_T *)stack.ga_data)
+ stack.ga_len; + stack.ga_len;
top_item->jd_type = JSON_OBJECT_KEY; top_item->jd_type = JSON_OBJECT_KEY;
@@ -722,7 +722,7 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
} }
continue; continue;
case '"': /* string */ case '"': // string
retval = json_decode_string(reader, cur_item, *p); retval = json_decode_string(reader, cur_item, *p);
break; break;
@@ -736,15 +736,15 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
} }
break; break;
case ',': /* comma: empty item */ case ',': // comma: empty item
if ((options & JSON_JS) == 0) if ((options & JSON_JS) == 0)
{ {
emsg(_(e_invarg)); emsg(_(e_invarg));
retval = FAIL; retval = FAIL;
break; break;
} }
/* FALLTHROUGH */ // FALLTHROUGH
case NUL: /* empty */ case NUL: // empty
if (cur_item != NULL) if (cur_item != NULL)
{ {
cur_item->v_type = VAR_SPECIAL; cur_item->v_type = VAR_SPECIAL;
@@ -795,7 +795,7 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
varnumber_T nr; varnumber_T nr;
vim_str2nr(reader->js_buf + reader->js_used, vim_str2nr(reader->js_buf + reader->js_used,
NULL, &len, 0, /* what */ NULL, &len, 0, // what
&nr, NULL, 0, TRUE); &nr, NULL, 0, TRUE);
if (len == 0) if (len == 0)
{ {
@@ -881,7 +881,7 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
break; break;
} }
#endif #endif
/* check for truncated name */ // check for truncated name
len = (int)(reader->js_end - (reader->js_buf + reader->js_used)); len = (int)(reader->js_end - (reader->js_buf + reader->js_used));
if ( if (
(len < 5 && STRNICMP((char *)p, "false", len) == 0) (len < 5 && STRNICMP((char *)p, "false", len) == 0)
@@ -899,8 +899,8 @@ json_decode_item(js_read_T *reader, typval_T *res, int options)
break; break;
} }
/* We are finished when retval is FAIL or MAYBE and when at the // We are finished when retval is FAIL or MAYBE and when at the
* toplevel. */ // toplevel.
if (retval == FAIL) if (retval == FAIL)
break; break;
if (retval == MAYBE || stack.ga_len == 0) if (retval == MAYBE || stack.ga_len == 0)
@@ -1037,7 +1037,7 @@ item_end:
} }
} }
/* Get here when parsing failed. */ // Get here when parsing failed.
if (res != NULL) if (res != NULL)
{ {
clear_tv(res); clear_tv(res);
@@ -1061,7 +1061,7 @@ json_decode_all(js_read_T *reader, typval_T *res, int options)
{ {
int ret; int ret;
/* We find the end once, to avoid calling strlen() many times. */ // We find the end once, to avoid calling strlen() many times.
reader->js_end = reader->js_buf + STRLEN(reader->js_buf); reader->js_end = reader->js_buf + STRLEN(reader->js_buf);
json_skip_white(reader); json_skip_white(reader);
ret = json_decode_item(reader, res, options); ret = json_decode_item(reader, res, options);
@@ -1093,7 +1093,7 @@ json_decode(js_read_T *reader, typval_T *res, int options)
{ {
int ret; int ret;
/* We find the end once, to avoid calling strlen() many times. */ // We find the end once, to avoid calling strlen() many times.
reader->js_end = reader->js_buf + STRLEN(reader->js_buf); reader->js_end = reader->js_buf + STRLEN(reader->js_buf);
json_skip_white(reader); json_skip_white(reader);
ret = json_decode_item(reader, res, options); ret = json_decode_item(reader, res, options);
@@ -1119,7 +1119,7 @@ json_find_end(js_read_T *reader, int options)
int used_save = reader->js_used; int used_save = reader->js_used;
int ret; int ret;
/* We find the end once, to avoid calling strlen() many times. */ // We find the end once, to avoid calling strlen() many times.
reader->js_end = reader->js_buf + STRLEN(reader->js_buf); reader->js_end = reader->js_buf + STRLEN(reader->js_buf);
json_skip_white(reader); json_skip_white(reader);
ret = json_decode_item(reader, NULL, options); ret = json_decode_item(reader, NULL, options);

View File

@@ -14,16 +14,16 @@
#undef NDEBUG #undef NDEBUG
#include <assert.h> #include <assert.h>
/* Must include main.c because it contains much more than just main() */ // Must include main.c because it contains much more than just main()
#define NO_VIM_MAIN #define NO_VIM_MAIN
#include "main.c" #include "main.c"
/* This file has to be included because the tested functions are static */ // This file has to be included because the tested functions are static
#include "json.c" #include "json.c"
#if defined(FEAT_EVAL) #if defined(FEAT_EVAL)
/* /*
* Test json_find_end() with imcomplete items. * Test json_find_end() with incomplete items.
*/ */
static void static void
test_decode_find_end(void) test_decode_find_end(void)
@@ -33,7 +33,7 @@ test_decode_find_end(void)
reader.js_fill = NULL; reader.js_fill = NULL;
reader.js_used = 0; reader.js_used = 0;
/* string and incomplete string */ // string and incomplete string
reader.js_buf = (char_u *)"\"hello\""; reader.js_buf = (char_u *)"\"hello\"";
assert(json_find_end(&reader, 0) == OK); assert(json_find_end(&reader, 0) == OK);
reader.js_buf = (char_u *)" \"hello\" "; reader.js_buf = (char_u *)" \"hello\" ";
@@ -41,13 +41,13 @@ test_decode_find_end(void)
reader.js_buf = (char_u *)"\"hello"; reader.js_buf = (char_u *)"\"hello";
assert(json_find_end(&reader, 0) == MAYBE); assert(json_find_end(&reader, 0) == MAYBE);
/* number and dash (incomplete number) */ // number and dash (incomplete number)
reader.js_buf = (char_u *)"123"; reader.js_buf = (char_u *)"123";
assert(json_find_end(&reader, 0) == OK); assert(json_find_end(&reader, 0) == OK);
reader.js_buf = (char_u *)"-"; reader.js_buf = (char_u *)"-";
assert(json_find_end(&reader, 0) == MAYBE); assert(json_find_end(&reader, 0) == MAYBE);
/* false, true and null, also incomplete */ // false, true and null, also incomplete
reader.js_buf = (char_u *)"false"; reader.js_buf = (char_u *)"false";
assert(json_find_end(&reader, 0) == OK); assert(json_find_end(&reader, 0) == OK);
reader.js_buf = (char_u *)"f"; reader.js_buf = (char_u *)"f";
@@ -77,7 +77,7 @@ test_decode_find_end(void)
reader.js_buf = (char_u *)"nul"; reader.js_buf = (char_u *)"nul";
assert(json_find_end(&reader, 0) == MAYBE); assert(json_find_end(&reader, 0) == MAYBE);
/* object without white space */ // object without white space
reader.js_buf = (char_u *)"{\"a\":123}"; reader.js_buf = (char_u *)"{\"a\":123}";
assert(json_find_end(&reader, 0) == OK); assert(json_find_end(&reader, 0) == OK);
reader.js_buf = (char_u *)"{\"a\":123"; reader.js_buf = (char_u *)"{\"a\":123";
@@ -93,7 +93,7 @@ test_decode_find_end(void)
reader.js_buf = (char_u *)"{"; reader.js_buf = (char_u *)"{";
assert(json_find_end(&reader, 0) == MAYBE); assert(json_find_end(&reader, 0) == MAYBE);
/* object with white space */ // object with white space
reader.js_buf = (char_u *)" { \"a\" : 123 } "; reader.js_buf = (char_u *)" { \"a\" : 123 } ";
assert(json_find_end(&reader, 0) == OK); assert(json_find_end(&reader, 0) == OK);
reader.js_buf = (char_u *)" { \"a\" : 123 "; reader.js_buf = (char_u *)" { \"a\" : 123 ";
@@ -107,13 +107,13 @@ test_decode_find_end(void)
reader.js_buf = (char_u *)" { "; reader.js_buf = (char_u *)" { ";
assert(json_find_end(&reader, 0) == MAYBE); assert(json_find_end(&reader, 0) == MAYBE);
/* JS object with white space */ // JS object with white space
reader.js_buf = (char_u *)" { a : 123 } "; reader.js_buf = (char_u *)" { a : 123 } ";
assert(json_find_end(&reader, JSON_JS) == OK); assert(json_find_end(&reader, JSON_JS) == OK);
reader.js_buf = (char_u *)" { a : "; reader.js_buf = (char_u *)" { a : ";
assert(json_find_end(&reader, JSON_JS) == MAYBE); assert(json_find_end(&reader, JSON_JS) == MAYBE);
/* array without white space */ // array without white space
reader.js_buf = (char_u *)"[\"a\",123]"; reader.js_buf = (char_u *)"[\"a\",123]";
assert(json_find_end(&reader, 0) == OK); assert(json_find_end(&reader, 0) == OK);
reader.js_buf = (char_u *)"[\"a\",123"; reader.js_buf = (char_u *)"[\"a\",123";
@@ -129,7 +129,7 @@ test_decode_find_end(void)
reader.js_buf = (char_u *)"["; reader.js_buf = (char_u *)"[";
assert(json_find_end(&reader, 0) == MAYBE); assert(json_find_end(&reader, 0) == MAYBE);
/* array with white space */ // array with white space
reader.js_buf = (char_u *)" [ \"a\" , 123 ] "; reader.js_buf = (char_u *)" [ \"a\" , 123 ] ";
assert(json_find_end(&reader, 0) == OK); assert(json_find_end(&reader, 0) == OK);
reader.js_buf = (char_u *)" [ \"a\" , 123 "; reader.js_buf = (char_u *)" [ \"a\" , 123 ";

View File

@@ -14,11 +14,11 @@
#undef NDEBUG #undef NDEBUG
#include <assert.h> #include <assert.h>
/* Must include main.c because it contains much more than just main() */ // Must include main.c because it contains much more than just main()
#define NO_VIM_MAIN #define NO_VIM_MAIN
#include "main.c" #include "main.c"
/* This file has to be included because the tested functions are static */ // This file has to be included because the tested functions are static
#include "charset.c" #include "charset.c"
/* /*
@@ -38,7 +38,7 @@ test_isword_funcs_utf8(void)
buf.b_p_isk = (char_u *)"@,48-57,_,128-167,224-235"; buf.b_p_isk = (char_u *)"@,48-57,_,128-167,224-235";
curbuf = &buf; curbuf = &buf;
mb_init(); /* calls init_chartab() */ mb_init(); // calls init_chartab()
for (c = 0; c < 0x10000; ++c) for (c = 0; c < 0x10000; ++c)
{ {

View File

@@ -17,8 +17,8 @@
static char *e_listblobarg = N_("E899: Argument of %s must be a List or Blob"); static char *e_listblobarg = N_("E899: Argument of %s must be a List or Blob");
/* List heads for garbage collection. */ // List heads for garbage collection.
static list_T *first_list = NULL; /* list of all lists */ static list_T *first_list = NULL; // list of all lists
/* /*
* Add a watcher to a list. * Add a watcher to a list.
@@ -77,7 +77,7 @@ list_alloc(void)
l = ALLOC_CLEAR_ONE(list_T); l = ALLOC_CLEAR_ONE(list_T);
if (l != NULL) if (l != NULL)
{ {
/* Prepend the list to the list of lists for garbage collection. */ // Prepend the list to the list of lists for garbage collection.
if (first_list != NULL) if (first_list != NULL)
first_list->lv_used_prev = l; first_list->lv_used_prev = l;
l->lv_used_prev = NULL; l->lv_used_prev = NULL;
@@ -165,7 +165,7 @@ list_free_contents(list_T *l)
for (item = l->lv_first; item != NULL; item = l->lv_first) for (item = l->lv_first; item != NULL; item = l->lv_first)
{ {
/* Remove the item before deleting it. */ // Remove the item before deleting it.
l->lv_first = item->li_next; l->lv_first = item->li_next;
clear_tv(&item->li_tv); clear_tv(&item->li_tv);
vim_free(item); vim_free(item);
@@ -187,9 +187,9 @@ list_free_nonref(int copyID)
if ((ll->lv_copyID & COPYID_MASK) != (copyID & COPYID_MASK) if ((ll->lv_copyID & COPYID_MASK) != (copyID & COPYID_MASK)
&& ll->lv_watch == NULL) && ll->lv_watch == NULL)
{ {
/* Free the List and ordinary items it contains, but don't recurse // Free the List and ordinary items it contains, but don't recurse
* into Lists and Dictionaries, they will be in the list of dicts // into Lists and Dictionaries, they will be in the list of dicts
* or list of lists. */ // or list of lists.
list_free_contents(ll); list_free_contents(ll);
did_free = TRUE; did_free = TRUE;
} }
@@ -199,7 +199,7 @@ list_free_nonref(int copyID)
static void static void
list_free_list(list_T *l) list_free_list(list_T *l)
{ {
/* Remove the list from the list of lists for garbage collection. */ // Remove the list from the list of lists for garbage collection.
if (l->lv_used_prev == NULL) if (l->lv_used_prev == NULL)
first_list = l->lv_used_next; first_list = l->lv_used_next;
else else
@@ -221,9 +221,9 @@ list_free_items(int copyID)
if ((ll->lv_copyID & COPYID_MASK) != (copyID & COPYID_MASK) if ((ll->lv_copyID & COPYID_MASK) != (copyID & COPYID_MASK)
&& ll->lv_watch == NULL) && ll->lv_watch == NULL)
{ {
/* Free the List and ordinary items it contains, but don't recurse // Free the List and ordinary items it contains, but don't recurse
* into Lists and Dictionaries, they will be in the list of dicts // into Lists and Dictionaries, they will be in the list of dicts
* or list of lists. */ // or list of lists.
list_free_list(ll); list_free_list(ll);
} }
} }
@@ -287,8 +287,8 @@ list_len(list_T *l)
list_equal( list_equal(
list_T *l1, list_T *l1,
list_T *l2, list_T *l2,
int ic, /* ignore case for strings */ int ic, // ignore case for strings
int recursive) /* TRUE when used recursively */ int recursive) // TRUE when used recursively
{ {
listitem_T *item1, *item2; listitem_T *item1, *item2;
@@ -321,32 +321,32 @@ list_find(list_T *l, long n)
if (l == NULL) if (l == NULL)
return NULL; return NULL;
/* Negative index is relative to the end. */ // Negative index is relative to the end.
if (n < 0) if (n < 0)
n = l->lv_len + n; n = l->lv_len + n;
/* Check for index out of range. */ // Check for index out of range.
if (n < 0 || n >= l->lv_len) if (n < 0 || n >= l->lv_len)
return NULL; return NULL;
/* When there is a cached index may start search from there. */ // When there is a cached index may start search from there.
if (l->lv_idx_item != NULL) if (l->lv_idx_item != NULL)
{ {
if (n < l->lv_idx / 2) if (n < l->lv_idx / 2)
{ {
/* closest to the start of the list */ // closest to the start of the list
item = l->lv_first; item = l->lv_first;
idx = 0; idx = 0;
} }
else if (n > (l->lv_idx + l->lv_len) / 2) else if (n > (l->lv_idx + l->lv_len) / 2)
{ {
/* closest to the end of the list */ // closest to the end of the list
item = l->lv_last; item = l->lv_last;
idx = l->lv_len - 1; idx = l->lv_len - 1;
} }
else else
{ {
/* closest to the cached index */ // closest to the cached index
item = l->lv_idx_item; item = l->lv_idx_item;
idx = l->lv_idx; idx = l->lv_idx;
} }
@@ -355,13 +355,13 @@ list_find(list_T *l, long n)
{ {
if (n < l->lv_len / 2) if (n < l->lv_len / 2)
{ {
/* closest to the start of the list */ // closest to the start of the list
item = l->lv_first; item = l->lv_first;
idx = 0; idx = 0;
} }
else else
{ {
/* closest to the end of the list */ // closest to the end of the list
item = l->lv_last; item = l->lv_last;
idx = l->lv_len - 1; idx = l->lv_len - 1;
} }
@@ -369,18 +369,18 @@ list_find(list_T *l, long n)
while (n > idx) while (n > idx)
{ {
/* search forward */ // search forward
item = item->li_next; item = item->li_next;
++idx; ++idx;
} }
while (n < idx) while (n < idx)
{ {
/* search backward */ // search backward
item = item->li_prev; item = item->li_prev;
--idx; --idx;
} }
/* cache the used index */ // cache the used index
l->lv_idx = idx; l->lv_idx = idx;
l->lv_idx_item = item; l->lv_idx_item = item;
@@ -394,7 +394,7 @@ list_find(list_T *l, long n)
list_find_nr( list_find_nr(
list_T *l, list_T *l,
long idx, long idx,
int *errorp) /* set to TRUE when something wrong */ int *errorp) // set to TRUE when something wrong
{ {
listitem_T *li; listitem_T *li;
@@ -453,7 +453,7 @@ list_append(list_T *l, listitem_T *item)
{ {
if (l->lv_last == NULL) if (l->lv_last == NULL)
{ {
/* empty list */ // empty list
l->lv_first = item; l->lv_first = item;
l->lv_last = item; l->lv_last = item;
item->li_prev = NULL; item->li_prev = NULL;
@@ -585,11 +585,11 @@ list_insert_tv(list_T *l, typval_T *tv, listitem_T *item)
list_insert(list_T *l, listitem_T *ni, listitem_T *item) list_insert(list_T *l, listitem_T *ni, listitem_T *item)
{ {
if (item == NULL) if (item == NULL)
/* Append new item at end of list. */ // Append new item at end of list.
list_append(l, ni); list_append(l, ni);
else else
{ {
/* Insert new item before existing item. */ // Insert new item before existing item.
ni->li_prev = item->li_prev; ni->li_prev = item->li_prev;
ni->li_next = item; ni->li_next = item;
if (item->li_prev == NULL) if (item->li_prev == NULL)
@@ -618,8 +618,8 @@ list_extend(list_T *l1, list_T *l2, listitem_T *bef)
listitem_T *item; listitem_T *item;
int todo = l2->lv_len; int todo = l2->lv_len;
/* We also quit the loop when we have inserted the original item count of // We also quit the loop when we have inserted the original item count of
* the list, avoid a hang when we extend a list with itself. */ // the list, avoid a hang when we extend a list with itself.
for (item = l2->lv_first; item != NULL && --todo >= 0; item = item->li_next) for (item = l2->lv_first; item != NULL && --todo >= 0; item = item->li_next)
if (list_insert_tv(l1, &item->li_tv, bef) == FAIL) if (list_insert_tv(l1, &item->li_tv, bef) == FAIL)
return FAIL; return FAIL;
@@ -638,14 +638,14 @@ list_concat(list_T *l1, list_T *l2, typval_T *tv)
if (l1 == NULL || l2 == NULL) if (l1 == NULL || l2 == NULL)
return FAIL; return FAIL;
/* make a copy of the first list. */ // make a copy of the first list.
l = list_copy(l1, FALSE, 0); l = list_copy(l1, FALSE, 0);
if (l == NULL) if (l == NULL)
return FAIL; return FAIL;
tv->v_type = VAR_LIST; tv->v_type = VAR_LIST;
tv->vval.v_list = l; tv->vval.v_list = l;
/* append all items from the second list */ // append all items from the second list
return list_extend(l, l2, NULL); return list_extend(l, l2, NULL);
} }
@@ -670,8 +670,8 @@ list_copy(list_T *orig, int deep, int copyID)
{ {
if (copyID != 0) if (copyID != 0)
{ {
/* Do this before adding the items, because one of the items may // Do this before adding the items, because one of the items may
* refer back to this list. */ // refer back to this list.
orig->lv_copyID = copyID; orig->lv_copyID = copyID;
orig->lv_copylist = copy; orig->lv_copylist = copy;
} }
@@ -715,7 +715,7 @@ vimlist_remove(list_T *l, listitem_T *item, listitem_T *item2)
{ {
listitem_T *ip; listitem_T *ip;
/* notify watchers */ // notify watchers
for (ip = item; ip != NULL; ip = ip->li_next) for (ip = item; ip != NULL; ip = ip->li_next)
{ {
--l->lv_len; --l->lv_len;
@@ -766,13 +766,13 @@ typedef struct join_S {
static int static int
list_join_inner( list_join_inner(
garray_T *gap, /* to store the result in */ garray_T *gap, // to store the result in
list_T *l, list_T *l,
char_u *sep, char_u *sep,
int echo_style, int echo_style,
int restore_copyID, int restore_copyID,
int copyID, int copyID,
garray_T *join_gap) /* to keep each list item string */ garray_T *join_gap) // to keep each list item string
{ {
int i; int i;
join_T *p; join_T *p;
@@ -784,7 +784,7 @@ list_join_inner(
listitem_T *item; listitem_T *item;
char_u *s; char_u *s;
/* Stringify each item in the list. */ // Stringify each item in the list.
for (item = l->lv_first; item != NULL && !got_int; item = item->li_next) for (item = l->lv_first; item != NULL && !got_int; item = item->li_next)
{ {
s = echo_string_core(&item->li_tv, &tofree, numbuf, copyID, s = echo_string_core(&item->li_tv, &tofree, numbuf, copyID,
@@ -809,12 +809,12 @@ list_join_inner(
} }
line_breakcheck(); line_breakcheck();
if (did_echo_string_emsg) /* recursion error, bail out */ if (did_echo_string_emsg) // recursion error, bail out
break; break;
} }
/* Allocate result buffer with its total size, avoid re-allocation and // Allocate result buffer with its total size, avoid re-allocation and
* multiple copy operations. Add 2 for a tailing ']' and NUL. */ // multiple copy operations. Add 2 for a tailing ']' and NUL.
if (join_gap->ga_len >= 2) if (join_gap->ga_len >= 2)
sumlen += (int)STRLEN(sep) * (join_gap->ga_len - 1); sumlen += (int)STRLEN(sep) * (join_gap->ga_len - 1);
if (ga_grow(gap, sumlen + 2) == FAIL) if (ga_grow(gap, sumlen + 2) == FAIL)
@@ -856,12 +856,12 @@ list_join(
int i; int i;
if (l->lv_len < 1) if (l->lv_len < 1)
return OK; /* nothing to do */ return OK; // nothing to do
ga_init2(&join_ga, (int)sizeof(join_T), l->lv_len); ga_init2(&join_ga, (int)sizeof(join_T), l->lv_len);
retval = list_join_inner(gap, l, sep, echo_style, restore_copyID, retval = list_join_inner(gap, l, sep, echo_style, restore_copyID,
copyID, &join_ga); copyID, &join_ga);
/* Dispose each item in join_ga. */ // Dispose each item in join_ga.
if (join_ga.ga_data != NULL) if (join_ga.ga_data != NULL)
{ {
p = (join_T *)join_ga.ga_data; p = (join_T *)join_ga.ga_data;
@@ -931,7 +931,7 @@ get_list_tv(char_u **arg, typval_T *rettv, int evaluate)
*arg = skipwhite(*arg + 1); *arg = skipwhite(*arg + 1);
while (**arg != ']' && **arg != NUL) while (**arg != ']' && **arg != NUL)
{ {
if (eval1(arg, &tv, evaluate) == FAIL) /* recursive! */ if (eval1(arg, &tv, evaluate) == FAIL) // recursive!
goto failret; goto failret;
if (evaluate) if (evaluate)
{ {
@@ -1120,7 +1120,7 @@ list_remove(typval_T *argvars, typval_T *rettv, char_u *arg_errmsg)
{ {
if (argvars[2].v_type == VAR_UNKNOWN) if (argvars[2].v_type == VAR_UNKNOWN)
{ {
/* Remove one item, return its value. */ // Remove one item, return its value.
vimlist_remove(l, item, item); vimlist_remove(l, item, item);
*rettv = item->li_tv; *rettv = item->li_tv;
vim_free(item); vim_free(item);
@@ -1144,7 +1144,7 @@ list_remove(typval_T *argvars, typval_T *rettv, char_u *arg_errmsg)
if (li == item2) if (li == item2)
break; break;
} }
if (li == NULL) /* didn't find "item2" after "item" */ if (li == NULL) // didn't find "item2" after "item"
emsg(_(e_invrange)); emsg(_(e_invrange));
else else
{ {
@@ -1167,14 +1167,14 @@ list_remove(typval_T *argvars, typval_T *rettv, char_u *arg_errmsg)
static int item_compare(const void *s1, const void *s2); static int item_compare(const void *s1, const void *s2);
static int item_compare2(const void *s1, const void *s2); static int item_compare2(const void *s1, const void *s2);
/* struct used in the array that's given to qsort() */ // struct used in the array that's given to qsort()
typedef struct typedef struct
{ {
listitem_T *item; listitem_T *item;
int idx; int idx;
} sortItem_T; } sortItem_T;
/* struct storing information about current sort */ // struct storing information about current sort
typedef struct typedef struct
{ {
int item_compare_ic; int item_compare_ic;
@@ -1229,9 +1229,9 @@ item_compare(const void *s1, const void *s2)
} }
#endif #endif
/* tv2string() puts quotes around a string and allocates memory. Don't do // tv2string() puts quotes around a string and allocates memory. Don't do
* that for string variables. Use a single quote when comparing with a // that for string variables. Use a single quote when comparing with a
* non-string to do what the docs promise. */ // non-string to do what the docs promise.
if (tv1->v_type == VAR_STRING) if (tv1->v_type == VAR_STRING)
{ {
if (tv2->v_type != VAR_STRING || sortinfo->item_compare_numeric) if (tv2->v_type != VAR_STRING || sortinfo->item_compare_numeric)
@@ -1269,8 +1269,8 @@ item_compare(const void *s1, const void *s2)
res = n1 == n2 ? 0 : n1 > n2 ? 1 : -1; res = n1 == n2 ? 0 : n1 > n2 ? 1 : -1;
} }
/* When the result would be zero, compare the item indexes. Makes the // When the result would be zero, compare the item indexes. Makes the
* sort stable. */ // sort stable.
if (res == 0 && !sortinfo->item_compare_keep_zero) if (res == 0 && !sortinfo->item_compare_keep_zero)
res = si1->idx > si2->idx ? 1 : -1; res = si1->idx > si2->idx ? 1 : -1;
@@ -1290,7 +1290,7 @@ item_compare2(const void *s1, const void *s2)
partial_T *partial = sortinfo->item_compare_partial; partial_T *partial = sortinfo->item_compare_partial;
funcexe_T funcexe; funcexe_T funcexe;
/* shortcut after failure in previous call; compare all items equal */ // shortcut after failure in previous call; compare all items equal
if (sortinfo->item_compare_func_err) if (sortinfo->item_compare_func_err)
return 0; return 0;
@@ -1302,12 +1302,12 @@ item_compare2(const void *s1, const void *s2)
else else
func_name = partial_name(partial); func_name = partial_name(partial);
/* Copy the values. This is needed to be able to set v_lock to VAR_FIXED // Copy the values. This is needed to be able to set v_lock to VAR_FIXED
* in the copy without changing the original list items. */ // in the copy without changing the original list items.
copy_tv(&si1->item->li_tv, &argv[0]); copy_tv(&si1->item->li_tv, &argv[0]);
copy_tv(&si2->item->li_tv, &argv[1]); copy_tv(&si2->item->li_tv, &argv[1]);
rettv.v_type = VAR_UNKNOWN; /* clear_tv() uses this */ rettv.v_type = VAR_UNKNOWN; // clear_tv() uses this
vim_memset(&funcexe, 0, sizeof(funcexe)); vim_memset(&funcexe, 0, sizeof(funcexe));
funcexe.evaluate = TRUE; funcexe.evaluate = TRUE;
funcexe.partial = partial; funcexe.partial = partial;
@@ -1321,11 +1321,11 @@ item_compare2(const void *s1, const void *s2)
else else
res = (int)tv_get_number_chk(&rettv, &sortinfo->item_compare_func_err); res = (int)tv_get_number_chk(&rettv, &sortinfo->item_compare_func_err);
if (sortinfo->item_compare_func_err) if (sortinfo->item_compare_func_err)
res = ITEM_COMPARE_FAIL; /* return value has wrong type */ res = ITEM_COMPARE_FAIL; // return value has wrong type
clear_tv(&rettv); clear_tv(&rettv);
/* When the result would be zero, compare the pointers themselves. Makes // When the result would be zero, compare the pointers themselves. Makes
* the sort stable. */ // the sort stable.
if (res == 0 && !sortinfo->item_compare_keep_zero) if (res == 0 && !sortinfo->item_compare_keep_zero)
res = si1->idx > si2->idx ? 1 : -1; res = si1->idx > si2->idx ? 1 : -1;
@@ -1346,8 +1346,8 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
long len; long len;
long i; long i;
/* Pointer to current info struct used in compare function. Save and // Pointer to current info struct used in compare function. Save and
* restore the current one for nested calls. */ // restore the current one for nested calls.
old_sortinfo = sortinfo; old_sortinfo = sortinfo;
sortinfo = &info; sortinfo = &info;
@@ -1364,7 +1364,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
len = list_len(l); len = list_len(l);
if (len <= 1) if (len <= 1)
goto theend; /* short list sorts pretty quickly */ goto theend; // short list sorts pretty quickly
info.item_compare_ic = FALSE; info.item_compare_ic = FALSE;
info.item_compare_numeric = FALSE; info.item_compare_numeric = FALSE;
@@ -1377,7 +1377,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
info.item_compare_selfdict = NULL; info.item_compare_selfdict = NULL;
if (argvars[1].v_type != VAR_UNKNOWN) if (argvars[1].v_type != VAR_UNKNOWN)
{ {
/* optional second argument: {func} */ // optional second argument: {func}
if (argvars[1].v_type == VAR_FUNC) if (argvars[1].v_type == VAR_FUNC)
info.item_compare_func = argvars[1].vval.v_string; info.item_compare_func = argvars[1].vval.v_string;
else if (argvars[1].v_type == VAR_PARTIAL) else if (argvars[1].v_type == VAR_PARTIAL)
@@ -1388,7 +1388,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
i = (long)tv_get_number_chk(&argvars[1], &error); i = (long)tv_get_number_chk(&argvars[1], &error);
if (error) if (error)
goto theend; /* type error; errmsg already given */ goto theend; // type error; errmsg already given
if (i == 1) if (i == 1)
info.item_compare_ic = TRUE; info.item_compare_ic = TRUE;
else if (argvars[1].v_type != VAR_NUMBER) else if (argvars[1].v_type != VAR_NUMBER)
@@ -1402,7 +1402,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
{ {
if (*info.item_compare_func == NUL) if (*info.item_compare_func == NUL)
{ {
/* empty string means default sort */ // empty string means default sort
info.item_compare_func = NULL; info.item_compare_func = NULL;
} }
else if (STRCMP(info.item_compare_func, "n") == 0) else if (STRCMP(info.item_compare_func, "n") == 0)
@@ -1432,7 +1432,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
if (argvars[2].v_type != VAR_UNKNOWN) if (argvars[2].v_type != VAR_UNKNOWN)
{ {
/* optional third argument: {dict} */ // optional third argument: {dict}
if (argvars[2].v_type != VAR_DICT) if (argvars[2].v_type != VAR_DICT)
{ {
emsg(_(e_dictreq)); emsg(_(e_dictreq));
@@ -1442,7 +1442,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
} }
} }
/* Make an array with each entry pointing to an item in the List. */ // Make an array with each entry pointing to an item in the List.
ptrs = ALLOC_MULT(sortItem_T, len); ptrs = ALLOC_MULT(sortItem_T, len);
if (ptrs == NULL) if (ptrs == NULL)
goto theend; goto theend;
@@ -1450,7 +1450,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
i = 0; i = 0;
if (sort) if (sort)
{ {
/* sort(): ptrs will be the list to sort */ // sort(): ptrs will be the list to sort
for (li = l->lv_first; li != NULL; li = li->li_next) for (li = l->lv_first; li != NULL; li = li->li_next)
{ {
ptrs[i].item = li; ptrs[i].item = li;
@@ -1460,7 +1460,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
info.item_compare_func_err = FALSE; info.item_compare_func_err = FALSE;
info.item_compare_keep_zero = FALSE; info.item_compare_keep_zero = FALSE;
/* test the compare function */ // test the compare function
if ((info.item_compare_func != NULL if ((info.item_compare_func != NULL
|| info.item_compare_partial != NULL) || info.item_compare_partial != NULL)
&& item_compare2((void *)&ptrs[0], (void *)&ptrs[1]) && item_compare2((void *)&ptrs[0], (void *)&ptrs[1])
@@ -1468,7 +1468,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
emsg(_("E702: Sort compare function failed")); emsg(_("E702: Sort compare function failed"));
else else
{ {
/* Sort the array with item pointers. */ // Sort the array with item pointers.
qsort((void *)ptrs, (size_t)len, sizeof(sortItem_T), qsort((void *)ptrs, (size_t)len, sizeof(sortItem_T),
info.item_compare_func == NULL info.item_compare_func == NULL
&& info.item_compare_partial == NULL && info.item_compare_partial == NULL
@@ -1476,7 +1476,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
if (!info.item_compare_func_err) if (!info.item_compare_func_err)
{ {
/* Clear the List and append the items in sorted order. */ // Clear the List and append the items in sorted order.
l->lv_first = l->lv_last = l->lv_idx_item = NULL; l->lv_first = l->lv_last = l->lv_idx_item = NULL;
l->lv_len = 0; l->lv_len = 0;
for (i = 0; i < len; ++i) for (i = 0; i < len; ++i)
@@ -1488,7 +1488,7 @@ do_sort_uniq(typval_T *argvars, typval_T *rettv, int sort)
{ {
int (*item_compare_func_ptr)(const void *, const void *); int (*item_compare_func_ptr)(const void *, const void *);
/* f_uniq(): ptrs will be a stack of items to remove */ // f_uniq(): ptrs will be a stack of items to remove
info.item_compare_func_err = FALSE; info.item_compare_func_err = FALSE;
info.item_compare_keep_zero = TRUE; info.item_compare_keep_zero = TRUE;
item_compare_func_ptr = info.item_compare_func != NULL item_compare_func_ptr = info.item_compare_func != NULL
@@ -1774,7 +1774,7 @@ f_add(typval_T *argvars, typval_T *rettv)
list_T *l; list_T *l;
blob_T *b; blob_T *b;
rettv->vval.v_number = 1; /* Default: Failed */ rettv->vval.v_number = 1; // Default: Failed
if (argvars[0].v_type == VAR_LIST) if (argvars[0].v_type == VAR_LIST)
{ {
if ((l = argvars[0].vval.v_list) != NULL if ((l = argvars[0].vval.v_list) != NULL
@@ -1935,7 +1935,7 @@ f_extend(typval_T *argvars, typval_T *rettv)
{ {
before = (long)tv_get_number_chk(&argvars[2], &error); before = (long)tv_get_number_chk(&argvars[2], &error);
if (error) if (error)
return; /* type error; errmsg already given */ return; // type error; errmsg already given
if (before == l1->lv_len) if (before == l1->lv_len)
item = NULL; item = NULL;
@@ -1967,14 +1967,14 @@ f_extend(typval_T *argvars, typval_T *rettv)
if (d1 != NULL && !var_check_lock(d1->dv_lock, arg_errmsg, TRUE) if (d1 != NULL && !var_check_lock(d1->dv_lock, arg_errmsg, TRUE)
&& d2 != NULL) && d2 != NULL)
{ {
/* Check the third argument. */ // Check the third argument.
if (argvars[2].v_type != VAR_UNKNOWN) if (argvars[2].v_type != VAR_UNKNOWN)
{ {
static char *(av[]) = {"keep", "force", "error"}; static char *(av[]) = {"keep", "force", "error"};
action = tv_get_string_chk(&argvars[2]); action = tv_get_string_chk(&argvars[2]);
if (action == NULL) if (action == NULL)
return; /* type error; errmsg already given */ return; // type error; errmsg already given
for (i = 0; i < 3; ++i) for (i = 0; i < 3; ++i)
if (STRCMP(action, av[i]) == 0) if (STRCMP(action, av[i]) == 0)
break; break;
@@ -2051,7 +2051,7 @@ f_insert(typval_T *argvars, typval_T *rettv)
if (argvars[2].v_type != VAR_UNKNOWN) if (argvars[2].v_type != VAR_UNKNOWN)
before = (long)tv_get_number_chk(&argvars[2], &error); before = (long)tv_get_number_chk(&argvars[2], &error);
if (error) if (error)
return; /* type error; errmsg already given */ return; // type error; errmsg already given
if (before == l->lv_len) if (before == l->lv_len)
item = NULL; item = NULL;

File diff suppressed because it is too large Load Diff

View File

@@ -24,7 +24,7 @@
* There are marks 'A - 'Z (set by user) and '0 to '9 (set when writing * There are marks 'A - 'Z (set by user) and '0 to '9 (set when writing
* viminfo). * viminfo).
*/ */
static xfmark_T namedfm[NMARKS + EXTRA_MARKS]; /* marks with file nr */ static xfmark_T namedfm[NMARKS + EXTRA_MARKS]; // marks with file nr
static void fname2fnum(xfmark_T *fm); static void fname2fnum(xfmark_T *fm);
static void fmarks_check_one(xfmark_T *fm, char_u *name, buf_T *buf); static void fmarks_check_one(xfmark_T *fm, char_u *name, buf_T *buf);
@@ -54,7 +54,7 @@ setmark_pos(int c, pos_T *pos, int fnum)
int i; int i;
buf_T *buf; buf_T *buf;
/* Check for a special key (may cause islower() to crash). */ // Check for a special key (may cause islower() to crash).
if (c < 0) if (c < 0)
return FAIL; return FAIL;
@@ -63,7 +63,7 @@ setmark_pos(int c, pos_T *pos, int fnum)
if (pos == &curwin->w_cursor) if (pos == &curwin->w_cursor)
{ {
setpcmark(); setpcmark();
/* keep it even when the cursor doesn't move */ // keep it even when the cursor doesn't move
curwin->w_prev_pcmark = curwin->w_pcmark; curwin->w_prev_pcmark = curwin->w_pcmark;
} }
else else
@@ -81,8 +81,8 @@ setmark_pos(int c, pos_T *pos, int fnum)
return OK; return OK;
} }
/* Allow setting '[ and '] for an autocommand that simulates reading a // Allow setting '[ and '] for an autocommand that simulates reading a
* file. */ // file.
if (c == '[') if (c == '[')
{ {
buf->b_op_start = *pos; buf->b_op_start = *pos;
@@ -101,7 +101,7 @@ setmark_pos(int c, pos_T *pos, int fnum)
else else
buf->b_visual.vi_end = *pos; buf->b_visual.vi_end = *pos;
if (buf->b_visual.vi_mode == NUL) if (buf->b_visual.vi_mode == NUL)
/* Visual_mode has not yet been set, use a sane default. */ // Visual_mode has not yet been set, use a sane default.
buf->b_visual.vi_mode = 'v'; buf->b_visual.vi_mode = 'v';
return OK; return OK;
} }
@@ -144,7 +144,7 @@ setpcmark(void)
xfmark_T tempmark; xfmark_T tempmark;
#endif #endif
/* for :global the mark is set only once */ // for :global the mark is set only once
if (global_busy || listcmd_busy || cmdmod.keepjumps) if (global_busy || listcmd_busy || cmdmod.keepjumps)
return; return;
@@ -170,7 +170,7 @@ setpcmark(void)
} }
# endif # endif
/* If jumplist is full: remove oldest entry */ // If jumplist is full: remove oldest entry
if (++curwin->w_jumplistlen > JUMPLISTSIZE) if (++curwin->w_jumplistlen > JUMPLISTSIZE)
{ {
curwin->w_jumplistlen = JUMPLISTSIZE; curwin->w_jumplistlen = JUMPLISTSIZE;
@@ -204,7 +204,7 @@ checkpcmark(void)
|| curwin->w_pcmark.lnum == 0)) || curwin->w_pcmark.lnum == 0))
{ {
curwin->w_pcmark = curwin->w_prev_pcmark; curwin->w_pcmark = curwin->w_prev_pcmark;
curwin->w_prev_pcmark.lnum = 0; /* Show it has been checked */ curwin->w_prev_pcmark.lnum = 0; // Show it has been checked
} }
} }
@@ -220,7 +220,7 @@ movemark(int count)
cleanup_jumplist(curwin, TRUE); cleanup_jumplist(curwin, TRUE);
if (curwin->w_jumplistlen == 0) /* nothing to jump to */ if (curwin->w_jumplistlen == 0) // nothing to jump to
return (pos_T *)NULL; return (pos_T *)NULL;
for (;;) for (;;)
@@ -237,7 +237,7 @@ movemark(int count)
if (curwin->w_jumplistidx == curwin->w_jumplistlen) if (curwin->w_jumplistidx == curwin->w_jumplistlen)
{ {
setpcmark(); setpcmark();
--curwin->w_jumplistidx; /* skip the new entry */ --curwin->w_jumplistidx; // skip the new entry
if (curwin->w_jumplistidx + count < 0) if (curwin->w_jumplistidx + count < 0)
return (pos_T *)NULL; return (pos_T *)NULL;
} }
@@ -249,16 +249,16 @@ movemark(int count)
fname2fnum(jmp); fname2fnum(jmp);
if (jmp->fmark.fnum != curbuf->b_fnum) if (jmp->fmark.fnum != curbuf->b_fnum)
{ {
/* jump to other file */ // jump to other file
if (buflist_findnr(jmp->fmark.fnum) == NULL) if (buflist_findnr(jmp->fmark.fnum) == NULL)
{ /* Skip this one .. */ { // Skip this one ..
count += count < 0 ? -1 : 1; count += count < 0 ? -1 : 1;
continue; continue;
} }
if (buflist_getfile(jmp->fmark.fnum, jmp->fmark.mark.lnum, if (buflist_getfile(jmp->fmark.fnum, jmp->fmark.mark.lnum,
0, FALSE) == FAIL) 0, FALSE) == FAIL)
return (pos_T *)NULL; return (pos_T *)NULL;
/* Set lnum again, autocommands my have changed it */ // Set lnum again, autocommands my have changed it
curwin->w_cursor = jmp->fmark.mark; curwin->w_cursor = jmp->fmark.mark;
pos = (pos_T *)-1; pos = (pos_T *)-1;
} }
@@ -276,7 +276,7 @@ movechangelist(int count)
{ {
int n; int n;
if (curbuf->b_changelistlen == 0) /* nothing to jump to */ if (curbuf->b_changelistlen == 0) // nothing to jump to
return (pos_T *)NULL; return (pos_T *)NULL;
n = curwin->w_changelistidx; n = curwin->w_changelistidx;
@@ -335,38 +335,38 @@ getmark_buf_fnum(
posp = NULL; posp = NULL;
/* Check for special key, can't be a mark name and might cause islower() // Check for special key, can't be a mark name and might cause islower()
* to crash. */ // to crash.
if (c < 0) if (c < 0)
return posp; return posp;
#ifndef EBCDIC #ifndef EBCDIC
if (c > '~') /* check for islower()/isupper() */ if (c > '~') // check for islower()/isupper()
; ;
else else
#endif #endif
if (c == '\'' || c == '`') /* previous context mark */ if (c == '\'' || c == '`') // previous context mark
{ {
pos_copy = curwin->w_pcmark; /* need to make a copy because */ pos_copy = curwin->w_pcmark; // need to make a copy because
posp = &pos_copy; /* w_pcmark may be changed soon */ posp = &pos_copy; // w_pcmark may be changed soon
} }
else if (c == '"') /* to pos when leaving buffer */ else if (c == '"') // to pos when leaving buffer
posp = &(buf->b_last_cursor); posp = &(buf->b_last_cursor);
else if (c == '^') /* to where Insert mode stopped */ else if (c == '^') // to where Insert mode stopped
posp = &(buf->b_last_insert); posp = &(buf->b_last_insert);
else if (c == '.') /* to where last change was made */ else if (c == '.') // to where last change was made
posp = &(buf->b_last_change); posp = &(buf->b_last_change);
else if (c == '[') /* to start of previous operator */ else if (c == '[') // to start of previous operator
posp = &(buf->b_op_start); posp = &(buf->b_op_start);
else if (c == ']') /* to end of previous operator */ else if (c == ']') // to end of previous operator
posp = &(buf->b_op_end); posp = &(buf->b_op_end);
else if (c == '{' || c == '}') /* to previous/next paragraph */ else if (c == '{' || c == '}') // to previous/next paragraph
{ {
pos_T pos; pos_T pos;
oparg_T oa; oparg_T oa;
int slcb = listcmd_busy; int slcb = listcmd_busy;
pos = curwin->w_cursor; pos = curwin->w_cursor;
listcmd_busy = TRUE; /* avoid that '' is changed */ listcmd_busy = TRUE; // avoid that '' is changed
if (findpar(&oa.inclusive, if (findpar(&oa.inclusive,
c == '}' ? FORWARD : BACKWARD, 1L, NUL, FALSE)) c == '}' ? FORWARD : BACKWARD, 1L, NUL, FALSE))
{ {
@@ -376,13 +376,13 @@ getmark_buf_fnum(
curwin->w_cursor = pos; curwin->w_cursor = pos;
listcmd_busy = slcb; listcmd_busy = slcb;
} }
else if (c == '(' || c == ')') /* to previous/next sentence */ else if (c == '(' || c == ')') // to previous/next sentence
{ {
pos_T pos; pos_T pos;
int slcb = listcmd_busy; int slcb = listcmd_busy;
pos = curwin->w_cursor; pos = curwin->w_cursor;
listcmd_busy = TRUE; /* avoid that '' is changed */ listcmd_busy = TRUE; // avoid that '' is changed
if (findsent(c == ')' ? FORWARD : BACKWARD, 1L)) if (findsent(c == ')' ? FORWARD : BACKWARD, 1L))
{ {
pos_copy = curwin->w_cursor; pos_copy = curwin->w_cursor;
@@ -391,7 +391,7 @@ getmark_buf_fnum(
curwin->w_cursor = pos; curwin->w_cursor = pos;
listcmd_busy = slcb; listcmd_busy = slcb;
} }
else if (c == '<' || c == '>') /* start/end of visual area */ else if (c == '<' || c == '>') // start/end of visual area
{ {
startp = &buf->b_visual.vi_start; startp = &buf->b_visual.vi_start;
endp = &buf->b_visual.vi_end; endp = &buf->b_visual.vi_end;
@@ -414,11 +414,11 @@ getmark_buf_fnum(
pos_copy.coladd = 0; pos_copy.coladd = 0;
} }
} }
else if (ASCII_ISLOWER(c)) /* normal named mark */ else if (ASCII_ISLOWER(c)) // normal named mark
{ {
posp = &(buf->b_namedm[c - 'a']); posp = &(buf->b_namedm[c - 'a']);
} }
else if (ASCII_ISUPPER(c) || VIM_ISDIGIT(c)) /* named file mark */ else if (ASCII_ISUPPER(c) || VIM_ISDIGIT(c)) // named file mark
{ {
if (VIM_ISDIGIT(c)) if (VIM_ISDIGIT(c))
c = c - '0' + NMARKS; c = c - '0' + NMARKS;
@@ -433,7 +433,7 @@ getmark_buf_fnum(
*fnum = namedfm[c].fmark.fnum; *fnum = namedfm[c].fmark.fnum;
else if (namedfm[c].fmark.fnum != buf->b_fnum) else if (namedfm[c].fmark.fnum != buf->b_fnum)
{ {
/* mark is in another file */ // mark is in another file
posp = &pos_copy; posp = &pos_copy;
if (namedfm[c].fmark.mark.lnum != 0 if (namedfm[c].fmark.mark.lnum != 0
@@ -442,15 +442,15 @@ getmark_buf_fnum(
if (buflist_getfile(namedfm[c].fmark.fnum, if (buflist_getfile(namedfm[c].fmark.fnum,
(linenr_T)1, GETF_SETMARK, FALSE) == OK) (linenr_T)1, GETF_SETMARK, FALSE) == OK)
{ {
/* Set the lnum now, autocommands could have changed it */ // Set the lnum now, autocommands could have changed it
curwin->w_cursor = namedfm[c].fmark.mark; curwin->w_cursor = namedfm[c].fmark.mark;
return (pos_T *)-1; return (pos_T *)-1;
} }
pos_copy.lnum = -1; /* can't get file */ pos_copy.lnum = -1; // can't get file
} }
else else
pos_copy.lnum = 0; /* mark exists, but is not valid in pos_copy.lnum = 0; // mark exists, but is not valid in
current buffer */ // current buffer
} }
} }
@@ -464,8 +464,8 @@ getmark_buf_fnum(
*/ */
pos_T * pos_T *
getnextmark( getnextmark(
pos_T *startpos, /* where to start */ pos_T *startpos, // where to start
int dir, /* direction for search */ int dir, // direction for search
int begin_line) int begin_line)
{ {
int i; int i;
@@ -474,10 +474,10 @@ getnextmark(
pos = *startpos; pos = *startpos;
/* When searching backward and leaving the cursor on the first non-blank, // When searching backward and leaving the cursor on the first non-blank,
* position must be in a previous line. // position must be in a previous line.
* When searching forward and leaving the cursor on the first non-blank, // When searching forward and leaving the cursor on the first non-blank,
* position must be in a next line. */ // position must be in a next line.
if (dir == BACKWARD && begin_line) if (dir == BACKWARD && begin_line)
pos.col = 0; pos.col = 0;
else if (dir == FORWARD && begin_line) else if (dir == FORWARD && begin_line)
@@ -536,11 +536,11 @@ fname2fnum(xfmark_T *fm)
else else
vim_strncpy(NameBuff, fm->fname, MAXPATHL - 1); vim_strncpy(NameBuff, fm->fname, MAXPATHL - 1);
/* Try to shorten the file name. */ // Try to shorten the file name.
mch_dirname(IObuff, IOSIZE); mch_dirname(IObuff, IOSIZE);
p = shorten_fname(NameBuff, IObuff); p = shorten_fname(NameBuff, IObuff);
/* buflist_new() will call fmarks_check_names() */ // buflist_new() will call fmarks_check_names()
(void)buflist_new(NameBuff, p, (linenr_T)1, 0); (void)buflist_new(NameBuff, p, (linenr_T)1, 0);
} }
} }
@@ -606,8 +606,8 @@ check_mark(pos_T *pos)
} }
if (pos->lnum <= 0) if (pos->lnum <= 0)
{ {
/* lnum is negative if mark is in another file can can't get that // lnum is negative if mark is in another file can can't get that
* file, error message already give then. */ // file, error message already give then.
if (pos->lnum == 0) if (pos->lnum == 0)
emsg(_(e_marknotset)); emsg(_(e_marknotset));
return FAIL; return FAIL;
@@ -630,7 +630,7 @@ clrallmarks(buf_T *buf)
{ {
static int i = -1; static int i = -1;
if (i == -1) /* first call ever: initialize */ if (i == -1) // first call ever: initialize
for (i = 0; i < NMARKS + 1; i++) for (i = 0; i < NMARKS + 1; i++)
{ {
namedfm[i].fmark.mark.lnum = 0; namedfm[i].fmark.mark.lnum = 0;
@@ -642,13 +642,13 @@ clrallmarks(buf_T *buf)
for (i = 0; i < NMARKS; i++) for (i = 0; i < NMARKS; i++)
buf->b_namedm[i].lnum = 0; buf->b_namedm[i].lnum = 0;
buf->b_op_start.lnum = 0; /* start/end op mark cleared */ buf->b_op_start.lnum = 0; // start/end op mark cleared
buf->b_op_end.lnum = 0; buf->b_op_end.lnum = 0;
buf->b_last_cursor.lnum = 1; /* '" mark cleared */ buf->b_last_cursor.lnum = 1; // '" mark cleared
buf->b_last_cursor.col = 0; buf->b_last_cursor.col = 0;
buf->b_last_cursor.coladd = 0; buf->b_last_cursor.coladd = 0;
buf->b_last_insert.lnum = 0; /* '^ mark cleared */ buf->b_last_insert.lnum = 0; // '^ mark cleared
buf->b_last_change.lnum = 0; /* '. mark cleared */ buf->b_last_change.lnum = 0; // '. mark cleared
#ifdef FEAT_JUMPLIST #ifdef FEAT_JUMPLIST
buf->b_changelistlen = 0; buf->b_changelistlen = 0;
#endif #endif
@@ -662,7 +662,7 @@ clrallmarks(buf_T *buf)
char_u * char_u *
fm_getname(fmark_T *fmark, int lead_len) fm_getname(fmark_T *fmark, int lead_len)
{ {
if (fmark->fnum == curbuf->b_fnum) /* current buffer */ if (fmark->fnum == curbuf->b_fnum) // current buffer
return mark_line(&(fmark->mark), lead_len); return mark_line(&(fmark->mark), lead_len);
return buflist_nr2name(fmark->fnum, FALSE, TRUE); return buflist_nr2name(fmark->fnum, FALSE, TRUE);
} }
@@ -742,13 +742,13 @@ show_one_mark(
char_u *arg, char_u *arg,
pos_T *p, pos_T *p,
char_u *name_arg, char_u *name_arg,
int current) /* in current file */ int current) // in current file
{ {
static int did_title = FALSE; static int did_title = FALSE;
int mustfree = FALSE; int mustfree = FALSE;
char_u *name = name_arg; char_u *name = name_arg;
if (c == -1) /* finish up */ if (c == -1) // finish up
{ {
if (did_title) if (did_title)
did_title = FALSE; did_title = FALSE;
@@ -809,7 +809,7 @@ ex_delmarks(exarg_T *eap)
int n; int n;
if (*eap->arg == NUL && eap->forceit) if (*eap->arg == NUL && eap->forceit)
/* clear all marks */ // clear all marks
clrallmarks(curbuf); clrallmarks(curbuf);
else if (eap->forceit) else if (eap->forceit)
emsg(_(e_invarg)); emsg(_(e_invarg));
@@ -817,7 +817,7 @@ ex_delmarks(exarg_T *eap)
emsg(_(e_argreq)); emsg(_(e_argreq));
else else
{ {
/* clear specified marks only */ // clear specified marks only
for (p = eap->arg; *p != NUL; ++p) for (p = eap->arg; *p != NUL; ++p)
{ {
lower = ASCII_ISLOWER(*p); lower = ASCII_ISLOWER(*p);
@@ -826,7 +826,7 @@ ex_delmarks(exarg_T *eap)
{ {
if (p[1] == '-') if (p[1] == '-')
{ {
/* clear range of marks */ // clear range of marks
from = *p; from = *p;
to = p[2]; to = p[2];
if (!(lower ? ASCII_ISLOWER(p[2]) if (!(lower ? ASCII_ISLOWER(p[2])
@@ -840,7 +840,7 @@ ex_delmarks(exarg_T *eap)
p += 2; p += 2;
} }
else else
/* clear one lower case mark */ // clear one lower case mark
from = to = *p; from = to = *p;
for (i = from; i <= to; ++i) for (i = from; i <= to; ++i)
@@ -891,7 +891,7 @@ ex_jumps(exarg_T *eap UNUSED)
cleanup_jumplist(curwin, TRUE); cleanup_jumplist(curwin, TRUE);
/* Highlight title */ // Highlight title
msg_puts_title(_("\n jump line col file/text")); msg_puts_title(_("\n jump line col file/text"));
for (i = 0; i < curwin->w_jumplistlen && !got_int; ++i) for (i = 0; i < curwin->w_jumplistlen && !got_int; ++i)
{ {
@@ -948,7 +948,7 @@ ex_changes(exarg_T *eap UNUSED)
int i; int i;
char_u *name; char_u *name;
/* Highlight title */ // Highlight title
msg_puts_title(_("\nchange line col text")); msg_puts_title(_("\nchange line col text"));
for (i = 0; i < curbuf->b_changelistlen && !got_int; ++i) for (i = 0; i < curbuf->b_changelistlen && !got_int; ++i)
@@ -993,7 +993,7 @@ ex_changes(exarg_T *eap UNUSED)
*lp += amount_after; \ *lp += amount_after; \
} }
/* don't delete the line, just put at first deleted line */ // don't delete the line, just put at first deleted line
#define one_adjust_nodel(add) \ #define one_adjust_nodel(add) \
{ \ { \
lp = add; \ lp = add; \
@@ -1054,12 +1054,12 @@ mark_adjust_internal(
tabpage_T *tab; tabpage_T *tab;
static pos_T initpos = {1, 0, 0}; static pos_T initpos = {1, 0, 0};
if (line2 < line1 && amount_after == 0L) /* nothing to do */ if (line2 < line1 && amount_after == 0L) // nothing to do
return; return;
if (!cmdmod.lockmarks) if (!cmdmod.lockmarks)
{ {
/* named marks, lower case and upper case */ // named marks, lower case and upper case
for (i = 0; i < NMARKS; i++) for (i = 0; i < NMARKS; i++)
{ {
one_adjust(&(curbuf->b_namedm[i].lnum)); one_adjust(&(curbuf->b_namedm[i].lnum));
@@ -1072,31 +1072,31 @@ mark_adjust_internal(
one_adjust_nodel(&(namedfm[i].fmark.mark.lnum)); one_adjust_nodel(&(namedfm[i].fmark.mark.lnum));
} }
/* last Insert position */ // last Insert position
one_adjust(&(curbuf->b_last_insert.lnum)); one_adjust(&(curbuf->b_last_insert.lnum));
/* last change position */ // last change position
one_adjust(&(curbuf->b_last_change.lnum)); one_adjust(&(curbuf->b_last_change.lnum));
/* last cursor position, if it was set */ // last cursor position, if it was set
if (!EQUAL_POS(curbuf->b_last_cursor, initpos)) if (!EQUAL_POS(curbuf->b_last_cursor, initpos))
one_adjust(&(curbuf->b_last_cursor.lnum)); one_adjust(&(curbuf->b_last_cursor.lnum));
#ifdef FEAT_JUMPLIST #ifdef FEAT_JUMPLIST
/* list of change positions */ // list of change positions
for (i = 0; i < curbuf->b_changelistlen; ++i) for (i = 0; i < curbuf->b_changelistlen; ++i)
one_adjust_nodel(&(curbuf->b_changelist[i].lnum)); one_adjust_nodel(&(curbuf->b_changelist[i].lnum));
#endif #endif
/* Visual area */ // Visual area
one_adjust_nodel(&(curbuf->b_visual.vi_start.lnum)); one_adjust_nodel(&(curbuf->b_visual.vi_start.lnum));
one_adjust_nodel(&(curbuf->b_visual.vi_end.lnum)); one_adjust_nodel(&(curbuf->b_visual.vi_end.lnum));
#ifdef FEAT_QUICKFIX #ifdef FEAT_QUICKFIX
/* quickfix marks */ // quickfix marks
qf_mark_adjust(NULL, line1, line2, amount, amount_after); qf_mark_adjust(NULL, line1, line2, amount, amount_after);
/* location lists */ // location lists
FOR_ALL_TAB_WINDOWS(tab, win) FOR_ALL_TAB_WINDOWS(tab, win)
qf_mark_adjust(win, line1, line2, amount, amount_after); qf_mark_adjust(win, line1, line2, amount, amount_after);
#endif #endif
@@ -1106,13 +1106,13 @@ mark_adjust_internal(
#endif #endif
} }
/* previous context mark */ // previous context mark
one_adjust(&(curwin->w_pcmark.lnum)); one_adjust(&(curwin->w_pcmark.lnum));
/* previous pcmark */ // previous pcmark
one_adjust(&(curwin->w_prev_pcmark.lnum)); one_adjust(&(curwin->w_prev_pcmark.lnum));
/* saved cursor for formatting */ // saved cursor for formatting
if (saved_cursor.lnum != 0) if (saved_cursor.lnum != 0)
one_adjust_nodel(&(saved_cursor.lnum)); one_adjust_nodel(&(saved_cursor.lnum));
@@ -1123,8 +1123,8 @@ mark_adjust_internal(
{ {
#ifdef FEAT_JUMPLIST #ifdef FEAT_JUMPLIST
if (!cmdmod.lockmarks) if (!cmdmod.lockmarks)
/* Marks in the jumplist. When deleting lines, this may create // Marks in the jumplist. When deleting lines, this may create
* duplicate marks in the jumplist, they will be removed later. */ // duplicate marks in the jumplist, they will be removed later.
for (i = 0; i < win->w_jumplistlen; ++i) for (i = 0; i < win->w_jumplistlen; ++i)
if (win->w_jumplist[i].fmark.fnum == fnum) if (win->w_jumplist[i].fmark.fnum == fnum)
one_adjust_nodel(&(win->w_jumplist[i].fmark.mark.lnum)); one_adjust_nodel(&(win->w_jumplist[i].fmark.mark.lnum));
@@ -1133,32 +1133,32 @@ mark_adjust_internal(
if (win->w_buffer == curbuf) if (win->w_buffer == curbuf)
{ {
if (!cmdmod.lockmarks) if (!cmdmod.lockmarks)
/* marks in the tag stack */ // marks in the tag stack
for (i = 0; i < win->w_tagstacklen; i++) for (i = 0; i < win->w_tagstacklen; i++)
if (win->w_tagstack[i].fmark.fnum == fnum) if (win->w_tagstack[i].fmark.fnum == fnum)
one_adjust_nodel(&(win->w_tagstack[i].fmark.mark.lnum)); one_adjust_nodel(&(win->w_tagstack[i].fmark.mark.lnum));
/* the displayed Visual area */ // the displayed Visual area
if (win->w_old_cursor_lnum != 0) if (win->w_old_cursor_lnum != 0)
{ {
one_adjust_nodel(&(win->w_old_cursor_lnum)); one_adjust_nodel(&(win->w_old_cursor_lnum));
one_adjust_nodel(&(win->w_old_visual_lnum)); one_adjust_nodel(&(win->w_old_visual_lnum));
} }
/* topline and cursor position for windows with the same buffer // topline and cursor position for windows with the same buffer
* other than the current window */ // other than the current window
if (win != curwin) if (win != curwin)
{ {
if (win->w_topline >= line1 && win->w_topline <= line2) if (win->w_topline >= line1 && win->w_topline <= line2)
{ {
if (amount == MAXLNUM) /* topline is deleted */ if (amount == MAXLNUM) // topline is deleted
{ {
if (line1 <= 1) if (line1 <= 1)
win->w_topline = 1; win->w_topline = 1;
else else
win->w_topline = line1 - 1; win->w_topline = line1 - 1;
} }
else /* keep topline on the same line */ else // keep topline on the same line
win->w_topline += amount; win->w_topline += amount;
#ifdef FEAT_DIFF #ifdef FEAT_DIFF
win->w_topfill = 0; win->w_topfill = 0;
@@ -1173,7 +1173,7 @@ mark_adjust_internal(
} }
if (win->w_cursor.lnum >= line1 && win->w_cursor.lnum <= line2) if (win->w_cursor.lnum >= line1 && win->w_cursor.lnum <= line2)
{ {
if (amount == MAXLNUM) /* line with cursor is deleted */ if (amount == MAXLNUM) // line with cursor is deleted
{ {
if (line1 <= 1) if (line1 <= 1)
win->w_cursor.lnum = 1; win->w_cursor.lnum = 1;
@@ -1181,7 +1181,7 @@ mark_adjust_internal(
win->w_cursor.lnum = line1 - 1; win->w_cursor.lnum = line1 - 1;
win->w_cursor.col = 0; win->w_cursor.col = 0;
} }
else /* keep cursor on the same line */ else // keep cursor on the same line
win->w_cursor.lnum += amount; win->w_cursor.lnum += amount;
} }
else if (amount_after && win->w_cursor.lnum > line2) else if (amount_after && win->w_cursor.lnum > line2)
@@ -1189,7 +1189,7 @@ mark_adjust_internal(
} }
#ifdef FEAT_FOLDING #ifdef FEAT_FOLDING
/* adjust folds */ // adjust folds
if (adjust_folds) if (adjust_folds)
foldMarkAdjust(win, line1, line2, amount, amount_after); foldMarkAdjust(win, line1, line2, amount, amount_after);
#endif #endif
@@ -1197,12 +1197,12 @@ mark_adjust_internal(
} }
#ifdef FEAT_DIFF #ifdef FEAT_DIFF
/* adjust diffs */ // adjust diffs
diff_mark_adjust(line1, line2, amount, amount_after); diff_mark_adjust(line1, line2, amount, amount_after);
#endif #endif
} }
/* This code is used often, needs to be fast. */ // This code is used often, needs to be fast.
#define col_adjust(pp) \ #define col_adjust(pp) \
{ \ { \
posp = pp; \ posp = pp; \
@@ -1239,9 +1239,9 @@ mark_col_adjust(
pos_T *posp; pos_T *posp;
if ((col_amount == 0L && lnum_amount == 0L) || cmdmod.lockmarks) if ((col_amount == 0L && lnum_amount == 0L) || cmdmod.lockmarks)
return; /* nothing to do */ return; // nothing to do
/* named marks, lower case and upper case */ // named marks, lower case and upper case
for (i = 0; i < NMARKS; i++) for (i = 0; i < NMARKS; i++)
{ {
col_adjust(&(curbuf->b_namedm[i])); col_adjust(&(curbuf->b_namedm[i]));
@@ -1254,29 +1254,29 @@ mark_col_adjust(
col_adjust(&(namedfm[i].fmark.mark)); col_adjust(&(namedfm[i].fmark.mark));
} }
/* last Insert position */ // last Insert position
col_adjust(&(curbuf->b_last_insert)); col_adjust(&(curbuf->b_last_insert));
/* last change position */ // last change position
col_adjust(&(curbuf->b_last_change)); col_adjust(&(curbuf->b_last_change));
#ifdef FEAT_JUMPLIST #ifdef FEAT_JUMPLIST
/* list of change positions */ // list of change positions
for (i = 0; i < curbuf->b_changelistlen; ++i) for (i = 0; i < curbuf->b_changelistlen; ++i)
col_adjust(&(curbuf->b_changelist[i])); col_adjust(&(curbuf->b_changelist[i]));
#endif #endif
/* Visual area */ // Visual area
col_adjust(&(curbuf->b_visual.vi_start)); col_adjust(&(curbuf->b_visual.vi_start));
col_adjust(&(curbuf->b_visual.vi_end)); col_adjust(&(curbuf->b_visual.vi_end));
/* previous context mark */ // previous context mark
col_adjust(&(curwin->w_pcmark)); col_adjust(&(curwin->w_pcmark));
/* previous pcmark */ // previous pcmark
col_adjust(&(curwin->w_prev_pcmark)); col_adjust(&(curwin->w_prev_pcmark));
/* saved cursor for formatting */ // saved cursor for formatting
col_adjust(&saved_cursor); col_adjust(&saved_cursor);
/* /*
@@ -1285,7 +1285,7 @@ mark_col_adjust(
FOR_ALL_WINDOWS(win) FOR_ALL_WINDOWS(win)
{ {
#ifdef FEAT_JUMPLIST #ifdef FEAT_JUMPLIST
/* marks in the jumplist */ // marks in the jumplist
for (i = 0; i < win->w_jumplistlen; ++i) for (i = 0; i < win->w_jumplistlen; ++i)
if (win->w_jumplist[i].fmark.fnum == fnum) if (win->w_jumplist[i].fmark.fnum == fnum)
col_adjust(&(win->w_jumplist[i].fmark.mark)); col_adjust(&(win->w_jumplist[i].fmark.mark));
@@ -1293,12 +1293,12 @@ mark_col_adjust(
if (win->w_buffer == curbuf) if (win->w_buffer == curbuf)
{ {
/* marks in the tag stack */ // marks in the tag stack
for (i = 0; i < win->w_tagstacklen; i++) for (i = 0; i < win->w_tagstacklen; i++)
if (win->w_tagstack[i].fmark.fnum == fnum) if (win->w_tagstack[i].fmark.fnum == fnum)
col_adjust(&(win->w_tagstack[i].fmark.mark)); col_adjust(&(win->w_tagstack[i].fmark.mark));
/* cursor position for other windows with the same buffer */ // cursor position for other windows with the same buffer
if (win != curwin) if (win != curwin)
col_adjust(&win->w_cursor); col_adjust(&win->w_cursor);
} }
@@ -1320,9 +1320,9 @@ cleanup_jumplist(win_T *wp, int loadfiles)
if (loadfiles) if (loadfiles)
{ {
/* If specified, load all the files from the jump list. This is // If specified, load all the files from the jump list. This is
* needed to properly clean up duplicate entries, but will take some // needed to properly clean up duplicate entries, but will take some
* time. */ // time.
for (i = 0; i < wp->w_jumplistlen; ++i) for (i = 0; i < wp->w_jumplistlen; ++i)
{ {
if ((wp->w_jumplist[i].fmark.fnum == 0) && if ((wp->w_jumplist[i].fmark.fnum == 0) &&
@@ -1343,7 +1343,7 @@ cleanup_jumplist(win_T *wp, int loadfiles)
&& wp->w_jumplist[i].fmark.mark.lnum && wp->w_jumplist[i].fmark.mark.lnum
== wp->w_jumplist[from].fmark.mark.lnum) == wp->w_jumplist[from].fmark.mark.lnum)
break; break;
if (i >= wp->w_jumplistlen) /* no duplicate */ if (i >= wp->w_jumplistlen) // no duplicate
wp->w_jumplist[to++] = wp->w_jumplist[from]; wp->w_jumplist[to++] = wp->w_jumplist[from];
else else
vim_free(wp->w_jumplist[from].fname); vim_free(wp->w_jumplist[from].fname);
@@ -1382,7 +1382,7 @@ free_jumplist(win_T *wp)
for (i = 0; i < wp->w_jumplistlen; ++i) for (i = 0; i < wp->w_jumplistlen; ++i)
vim_free(wp->w_jumplist[i].fname); vim_free(wp->w_jumplist[i].fname);
} }
#endif /* FEAT_JUMPLIST */ #endif // FEAT_JUMPLIST
void void
set_last_cursor(win_T *win) set_last_cursor(win_T *win)

File diff suppressed because it is too large Load Diff

View File

@@ -46,7 +46,7 @@
# include <sys/statfs.h> # include <sys/statfs.h>
# define STATFS statfs # define STATFS statfs
# define F_BSIZE f_bsize # define F_BSIZE f_bsize
# ifdef __MINT__ /* do we still need this? */ # ifdef __MINT__ // do we still need this?
# define fstatfs(fd, buf, len, nul) mch_fstat((fd), (buf)) # define fstatfs(fd, buf, len, nul) mch_fstat((fd), (buf))
# endif # endif
# endif # endif
@@ -57,17 +57,17 @@
*/ */
#ifdef AMIGA #ifdef AMIGA
# ifdef FEAT_ARP # ifdef FEAT_ARP
extern int dos2; /* this is in os_amiga.c */ extern int dos2; // this is in os_amiga.c
# endif # endif
# ifdef SASC # ifdef SASC
# include <proto/dos.h> # include <proto/dos.h>
# include <ios1.h> /* for chkufb() */ # include <ios1.h> // for chkufb()
# endif # endif
#endif #endif
#define MEMFILE_PAGE_SIZE 4096 /* default page size */ #define MEMFILE_PAGE_SIZE 4096 // default page size
static long_u total_mem_used = 0; /* total memory used for memfiles */ static long_u total_mem_used = 0; // total memory used for memfiles
static void mf_ins_hash(memfile_T *, bhdr_T *); static void mf_ins_hash(memfile_T *, bhdr_T *);
static void mf_rem_hash(memfile_T *, bhdr_T *); static void mf_rem_hash(memfile_T *, bhdr_T *);
@@ -133,7 +133,7 @@ mf_open(char_u *fname, int flags)
if ((mfp = ALLOC_ONE(memfile_T)) == NULL) if ((mfp = ALLOC_ONE(memfile_T)) == NULL)
return NULL; return NULL;
if (fname == NULL) /* no file for this memfile, use memory only */ if (fname == NULL) // no file for this memfile, use memory only
{ {
mfp->mf_fname = NULL; mfp->mf_fname = NULL;
mfp->mf_ffname = NULL; mfp->mf_ffname = NULL;
@@ -141,9 +141,9 @@ mf_open(char_u *fname, int flags)
} }
else else
{ {
mf_do_open(mfp, fname, flags); /* try to open the file */ mf_do_open(mfp, fname, flags); // try to open the file
/* if the file cannot be opened, return here */ // if the file cannot be opened, return here
if (mfp->mf_fd < 0) if (mfp->mf_fd < 0)
{ {
vim_free(mfp); vim_free(mfp);
@@ -151,8 +151,8 @@ mf_open(char_u *fname, int flags)
} }
} }
mfp->mf_free_first = NULL; /* free list is empty */ mfp->mf_free_first = NULL; // free list is empty
mfp->mf_used_first = NULL; /* used list is empty */ mfp->mf_used_first = NULL; // used list is empty
mfp->mf_used_last = NULL; mfp->mf_used_last = NULL;
mfp->mf_dirty = FALSE; mfp->mf_dirty = FALSE;
mfp->mf_used_count = 0; mfp->mf_used_count = 0;
@@ -180,7 +180,7 @@ mf_open(char_u *fname, int flags)
if (mfp->mf_fd < 0 || (flags & (O_TRUNC|O_EXCL)) if (mfp->mf_fd < 0 || (flags & (O_TRUNC|O_EXCL))
|| (size = vim_lseek(mfp->mf_fd, (off_T)0L, SEEK_END)) <= 0) || (size = vim_lseek(mfp->mf_fd, (off_T)0L, SEEK_END)) <= 0)
mfp->mf_blocknr_max = 0; /* no file or empty file */ mfp->mf_blocknr_max = 0; // no file or empty file
else else
mfp->mf_blocknr_max = (blocknr_T)((size + mfp->mf_page_size - 1) mfp->mf_blocknr_max = (blocknr_T)((size + mfp->mf_page_size - 1)
/ mfp->mf_page_size); / mfp->mf_page_size);
@@ -223,7 +223,7 @@ mf_open(char_u *fname, int flags)
int int
mf_open_file(memfile_T *mfp, char_u *fname) mf_open_file(memfile_T *mfp, char_u *fname)
{ {
mf_do_open(mfp, fname, O_RDWR|O_CREAT|O_EXCL); /* try to open the file */ mf_do_open(mfp, fname, O_RDWR|O_CREAT|O_EXCL); // try to open the file
if (mfp->mf_fd < 0) if (mfp->mf_fd < 0)
return FAIL; return FAIL;
@@ -240,7 +240,7 @@ mf_close(memfile_T *mfp, int del_file)
{ {
bhdr_T *hp, *nextp; bhdr_T *hp, *nextp;
if (mfp == NULL) /* safety check */ if (mfp == NULL) // safety check
return; return;
if (mfp->mf_fd >= 0) if (mfp->mf_fd >= 0)
{ {
@@ -249,17 +249,17 @@ mf_close(memfile_T *mfp, int del_file)
} }
if (del_file && mfp->mf_fname != NULL) if (del_file && mfp->mf_fname != NULL)
mch_remove(mfp->mf_fname); mch_remove(mfp->mf_fname);
/* free entries in used list */ // free entries in used list
for (hp = mfp->mf_used_first; hp != NULL; hp = nextp) for (hp = mfp->mf_used_first; hp != NULL; hp = nextp)
{ {
total_mem_used -= hp->bh_page_count * mfp->mf_page_size; total_mem_used -= hp->bh_page_count * mfp->mf_page_size;
nextp = hp->bh_next; nextp = hp->bh_next;
mf_free_bhdr(hp); mf_free_bhdr(hp);
} }
while (mfp->mf_free_first != NULL) /* free entries in free list */ while (mfp->mf_free_first != NULL) // free entries in free list
vim_free(mf_rem_free(mfp)); vim_free(mf_rem_free(mfp));
mf_hash_free(&mfp->mf_hash); mf_hash_free(&mfp->mf_hash);
mf_hash_free_all(&mfp->mf_trans); /* free hashtable and its items */ mf_hash_free_all(&mfp->mf_trans); // free hashtable and its items
vim_free(mfp->mf_fname); vim_free(mfp->mf_fname);
vim_free(mfp->mf_ffname); vim_free(mfp->mf_ffname);
vim_free(mfp); vim_free(mfp);
@@ -271,32 +271,32 @@ mf_close(memfile_T *mfp, int del_file)
void void
mf_close_file( mf_close_file(
buf_T *buf, buf_T *buf,
int getlines) /* get all lines into memory? */ int getlines) // get all lines into memory?
{ {
memfile_T *mfp; memfile_T *mfp;
linenr_T lnum; linenr_T lnum;
mfp = buf->b_ml.ml_mfp; mfp = buf->b_ml.ml_mfp;
if (mfp == NULL || mfp->mf_fd < 0) /* nothing to close */ if (mfp == NULL || mfp->mf_fd < 0) // nothing to close
return; return;
if (getlines) if (getlines)
{ {
/* get all blocks in memory by accessing all lines (clumsy!) */ // get all blocks in memory by accessing all lines (clumsy!)
mf_dont_release = TRUE; mf_dont_release = TRUE;
for (lnum = 1; lnum <= buf->b_ml.ml_line_count; ++lnum) for (lnum = 1; lnum <= buf->b_ml.ml_line_count; ++lnum)
(void)ml_get_buf(buf, lnum, FALSE); (void)ml_get_buf(buf, lnum, FALSE);
mf_dont_release = FALSE; mf_dont_release = FALSE;
/* TODO: should check if all blocks are really in core */ // TODO: should check if all blocks are really in core
} }
if (close(mfp->mf_fd) < 0) /* close the file */ if (close(mfp->mf_fd) < 0) // close the file
emsg(_(e_swapclose)); emsg(_(e_swapclose));
mfp->mf_fd = -1; mfp->mf_fd = -1;
if (mfp->mf_fname != NULL) if (mfp->mf_fname != NULL)
{ {
mch_remove(mfp->mf_fname); /* delete the swap file */ mch_remove(mfp->mf_fname); // delete the swap file
VIM_CLEAR(mfp->mf_fname); VIM_CLEAR(mfp->mf_fname);
VIM_CLEAR(mfp->mf_ffname); VIM_CLEAR(mfp->mf_ffname);
} }
@@ -309,8 +309,8 @@ mf_close_file(
void void
mf_new_page_size(memfile_T *mfp, unsigned new_size) mf_new_page_size(memfile_T *mfp, unsigned new_size)
{ {
/* Correct the memory used for block 0 to the new size, because it will be // Correct the memory used for block 0 to the new size, because it will be
* freed with that size later on. */ // freed with that size later on.
total_mem_used += new_size - mfp->mf_page_size; total_mem_used += new_size - mfp->mf_page_size;
mfp->mf_page_size = new_size; mfp->mf_page_size = new_size;
} }
@@ -323,8 +323,8 @@ mf_new_page_size(memfile_T *mfp, unsigned new_size)
bhdr_T * bhdr_T *
mf_new(memfile_T *mfp, int negative, int page_count) mf_new(memfile_T *mfp, int negative, int page_count)
{ {
bhdr_T *hp; /* new bhdr_T */ bhdr_T *hp; // new bhdr_T
bhdr_T *freep; /* first block in free list */ bhdr_T *freep; // first block in free list
char_u *p; char_u *p;
/* /*
@@ -360,21 +360,21 @@ mf_new(memfile_T *mfp, int negative, int page_count)
freep->bh_bnum += page_count; freep->bh_bnum += page_count;
freep->bh_page_count -= page_count; freep->bh_page_count -= page_count;
} }
else if (hp == NULL) /* need to allocate memory for this block */ else if (hp == NULL) // need to allocate memory for this block
{ {
if ((p = alloc(mfp->mf_page_size * page_count)) == NULL) if ((p = alloc(mfp->mf_page_size * page_count)) == NULL)
return NULL; return NULL;
hp = mf_rem_free(mfp); hp = mf_rem_free(mfp);
hp->bh_data = p; hp->bh_data = p;
} }
else /* use the number, remove entry from free list */ else // use the number, remove entry from free list
{ {
freep = mf_rem_free(mfp); freep = mf_rem_free(mfp);
hp->bh_bnum = freep->bh_bnum; hp->bh_bnum = freep->bh_bnum;
vim_free(freep); vim_free(freep);
} }
} }
else /* get a new number */ else // get a new number
{ {
if (hp == NULL && (hp = mf_alloc_bhdr(mfp, page_count)) == NULL) if (hp == NULL && (hp = mf_alloc_bhdr(mfp, page_count)) == NULL)
return NULL; return NULL;
@@ -389,7 +389,7 @@ mf_new(memfile_T *mfp, int negative, int page_count)
mfp->mf_blocknr_max += page_count; mfp->mf_blocknr_max += page_count;
} }
} }
hp->bh_flags = BH_LOCKED | BH_DIRTY; /* new block is always dirty */ hp->bh_flags = BH_LOCKED | BH_DIRTY; // new block is always dirty
mfp->mf_dirty = TRUE; mfp->mf_dirty = TRUE;
hp->bh_page_count = page_count; hp->bh_page_count = page_count;
mf_ins_used(mfp, hp); mf_ins_used(mfp, hp);
@@ -414,7 +414,7 @@ mf_new(memfile_T *mfp, int negative, int page_count)
mf_get(memfile_T *mfp, blocknr_T nr, int page_count) mf_get(memfile_T *mfp, blocknr_T nr, int page_count)
{ {
bhdr_T *hp; bhdr_T *hp;
/* doesn't exist */ // doesn't exist
if (nr >= mfp->mf_blocknr_max || nr <= mfp->mf_blocknr_min) if (nr >= mfp->mf_blocknr_max || nr <= mfp->mf_blocknr_min)
return NULL; return NULL;
@@ -422,12 +422,12 @@ mf_get(memfile_T *mfp, blocknr_T nr, int page_count)
* see if it is in the cache * see if it is in the cache
*/ */
hp = mf_find_hash(mfp, nr); hp = mf_find_hash(mfp, nr);
if (hp == NULL) /* not in the hash list */ if (hp == NULL) // not in the hash list
{ {
if (nr < 0 || nr >= mfp->mf_infile_count) /* can't be in the file */ if (nr < 0 || nr >= mfp->mf_infile_count) // can't be in the file
return NULL; return NULL;
/* could check here if the block is in the free list */ // could check here if the block is in the free list
/* /*
* Check if we need to flush an existing block. * Check if we need to flush an existing block.
@@ -441,7 +441,7 @@ mf_get(memfile_T *mfp, blocknr_T nr, int page_count)
hp->bh_bnum = nr; hp->bh_bnum = nr;
hp->bh_flags = 0; hp->bh_flags = 0;
hp->bh_page_count = page_count; hp->bh_page_count = page_count;
if (mf_read(mfp, hp) == FAIL) /* cannot read the block! */ if (mf_read(mfp, hp) == FAIL) // cannot read the block!
{ {
mf_free_bhdr(hp); mf_free_bhdr(hp);
return NULL; return NULL;
@@ -449,13 +449,13 @@ mf_get(memfile_T *mfp, blocknr_T nr, int page_count)
} }
else else
{ {
mf_rem_used(mfp, hp); /* remove from list, insert in front below */ mf_rem_used(mfp, hp); // remove from list, insert in front below
mf_rem_hash(mfp, hp); mf_rem_hash(mfp, hp);
} }
hp->bh_flags |= BH_LOCKED; hp->bh_flags |= BH_LOCKED;
mf_ins_used(mfp, hp); /* put in front of used list */ mf_ins_used(mfp, hp); // put in front of used list
mf_ins_hash(mfp, hp); /* put in front of hash list */ mf_ins_hash(mfp, hp); // put in front of hash list
return hp; return hp;
} }
@@ -489,7 +489,7 @@ mf_put(
} }
hp->bh_flags = flags; hp->bh_flags = flags;
if (infile) if (infile)
mf_trans_add(mfp, hp); /* may translate negative in positive nr */ mf_trans_add(mfp, hp); // may translate negative in positive nr
} }
/* /*
@@ -498,20 +498,20 @@ mf_put(
void void
mf_free(memfile_T *mfp, bhdr_T *hp) mf_free(memfile_T *mfp, bhdr_T *hp)
{ {
vim_free(hp->bh_data); /* free the memory */ vim_free(hp->bh_data); // free the memory
mf_rem_hash(mfp, hp); /* get *hp out of the hash list */ mf_rem_hash(mfp, hp); // get *hp out of the hash list
mf_rem_used(mfp, hp); /* get *hp out of the used list */ mf_rem_used(mfp, hp); // get *hp out of the used list
if (hp->bh_bnum < 0) if (hp->bh_bnum < 0)
{ {
vim_free(hp); /* don't want negative numbers in free list */ vim_free(hp); // don't want negative numbers in free list
mfp->mf_neg_count--; mfp->mf_neg_count--;
} }
else else
mf_ins_free(mfp, hp); /* put *hp in the free list */ mf_ins_free(mfp, hp); // put *hp in the free list
} }
#if defined(__MORPHOS__) && defined(__libnix__) #if defined(__MORPHOS__) && defined(__libnix__)
/* function is missing in MorphOS libnix version */ // function is missing in MorphOS libnix version
extern unsigned long *__stdfiledes; extern unsigned long *__stdfiledes;
static unsigned long static unsigned long
@@ -541,14 +541,14 @@ mf_sync(memfile_T *mfp, int flags)
bhdr_T *hp; bhdr_T *hp;
int got_int_save = got_int; int got_int_save = got_int;
if (mfp->mf_fd < 0) /* there is no file, nothing to do */ if (mfp->mf_fd < 0) // there is no file, nothing to do
{ {
mfp->mf_dirty = FALSE; mfp->mf_dirty = FALSE;
return FAIL; return FAIL;
} }
/* Only a CTRL-C while writing will break us here, not one typed // Only a CTRL-C while writing will break us here, not one typed
* previously. */ // previously.
got_int = FALSE; got_int = FALSE;
/* /*
@@ -568,13 +568,13 @@ mf_sync(memfile_T *mfp, int flags)
continue; continue;
if (mf_write(mfp, hp) == FAIL) if (mf_write(mfp, hp) == FAIL)
{ {
if (status == FAIL) /* double error: quit syncing */ if (status == FAIL) // double error: quit syncing
break; break;
status = FAIL; status = FAIL;
} }
if (flags & MFS_STOP) if (flags & MFS_STOP)
{ {
/* Stop when char available now. */ // Stop when char available now.
if (ui_char_avail()) if (ui_char_avail())
break; break;
} }
@@ -605,9 +605,9 @@ mf_sync(memfile_T *mfp, int flags)
} }
else else
# endif # endif
/* OpenNT is strictly POSIX (Benzinger) */ // OpenNT is strictly POSIX (Benzinger)
/* Tandem/Himalaya NSK-OSS doesn't have sync() */ // Tandem/Himalaya NSK-OSS doesn't have sync()
/* No sync() on Stratus VOS */ // No sync() on Stratus VOS
# if defined(__OPENNT) || defined(__TANDEM) || defined(__VOS__) # if defined(__OPENNT) || defined(__TANDEM) || defined(__VOS__)
fflush(NULL); fflush(NULL);
# else # else
@@ -649,8 +649,8 @@ mf_sync(memfile_T *mfp, int flags)
# if defined(_DCC) || defined(__GNUC__) || defined(__MORPHOS__) # if defined(_DCC) || defined(__GNUC__) || defined(__MORPHOS__)
{ {
# if defined(__GNUC__) && !defined(__MORPHOS__) && defined(__libnix__) # if defined(__GNUC__) && !defined(__MORPHOS__) && defined(__libnix__)
/* Have function (in libnix at least), // Have function (in libnix at least),
* but ain't got no prototype anywhere. */ // but ain't got no prototype anywhere.
extern unsigned long fdtofh(int filedescriptor); extern unsigned long fdtofh(int filedescriptor);
# endif # endif
# if !defined(__libnix__) # if !defined(__libnix__)
@@ -662,12 +662,12 @@ mf_sync(memfile_T *mfp, int flags)
Flush(fh); Flush(fh);
# endif # endif
} }
# else /* assume Manx */ # else // assume Manx
Flush(_devtab[mfp->mf_fd].fd); Flush(_devtab[mfp->mf_fd].fd);
# endif # endif
# endif # endif
# endif # endif
#endif /* AMIGA */ #endif // AMIGA
} }
got_int |= got_int_save; got_int |= got_int_save;
@@ -727,7 +727,7 @@ mf_ins_used(memfile_T *mfp, bhdr_T *hp)
hp->bh_next = mfp->mf_used_first; hp->bh_next = mfp->mf_used_first;
mfp->mf_used_first = hp; mfp->mf_used_first = hp;
hp->bh_prev = NULL; hp->bh_prev = NULL;
if (hp->bh_next == NULL) /* list was empty, adjust last pointer */ if (hp->bh_next == NULL) // list was empty, adjust last pointer
mfp->mf_used_last = hp; mfp->mf_used_last = hp;
else else
hp->bh_next->bh_prev = hp; hp->bh_next->bh_prev = hp;
@@ -741,11 +741,11 @@ mf_ins_used(memfile_T *mfp, bhdr_T *hp)
static void static void
mf_rem_used(memfile_T *mfp, bhdr_T *hp) mf_rem_used(memfile_T *mfp, bhdr_T *hp)
{ {
if (hp->bh_next == NULL) /* last block in used list */ if (hp->bh_next == NULL) // last block in used list
mfp->mf_used_last = hp->bh_prev; mfp->mf_used_last = hp->bh_prev;
else else
hp->bh_next->bh_prev = hp->bh_prev; hp->bh_next->bh_prev = hp->bh_prev;
if (hp->bh_prev == NULL) /* first block in used list */ if (hp->bh_prev == NULL) // first block in used list
mfp->mf_used_first = hp->bh_next; mfp->mf_used_first = hp->bh_next;
else else
hp->bh_prev->bh_next = hp->bh_next; hp->bh_prev->bh_next = hp->bh_next;
@@ -769,7 +769,7 @@ mf_release(memfile_T *mfp, int page_count)
int need_release; int need_release;
buf_T *buf; buf_T *buf;
/* don't release while in mf_close_file() */ // don't release while in mf_close_file()
if (mf_dont_release) if (mf_dont_release)
return NULL; return NULL;
@@ -786,7 +786,7 @@ mf_release(memfile_T *mfp, int page_count)
*/ */
if (mfp->mf_fd < 0 && need_release && p_uc) if (mfp->mf_fd < 0 && need_release && p_uc)
{ {
/* find for which buffer this memfile is */ // find for which buffer this memfile is
FOR_ALL_BUFFERS(buf) FOR_ALL_BUFFERS(buf)
if (buf->b_ml.ml_mfp == mfp) if (buf->b_ml.ml_mfp == mfp)
break; break;
@@ -808,7 +808,7 @@ mf_release(memfile_T *mfp, int page_count)
for (hp = mfp->mf_used_last; hp != NULL; hp = hp->bh_prev) for (hp = mfp->mf_used_last; hp != NULL; hp = hp->bh_prev)
if (!(hp->bh_flags & BH_LOCKED)) if (!(hp->bh_flags & BH_LOCKED))
break; break;
if (hp == NULL) /* not a single one that can be released */ if (hp == NULL) // not a single one that can be released
return NULL; return NULL;
/* /*
@@ -857,11 +857,11 @@ mf_release_all(void)
mfp = buf->b_ml.ml_mfp; mfp = buf->b_ml.ml_mfp;
if (mfp != NULL) if (mfp != NULL)
{ {
/* If no swap file yet, may open one */ // If no swap file yet, may open one
if (mfp->mf_fd < 0 && buf->b_may_swap) if (mfp->mf_fd < 0 && buf->b_may_swap)
ml_open_file(buf); ml_open_file(buf);
/* only if there is a swapfile */ // only if there is a swapfile
if (mfp->mf_fd >= 0) if (mfp->mf_fd >= 0)
{ {
for (hp = mfp->mf_used_last; hp != NULL; ) for (hp = mfp->mf_used_last; hp != NULL; )
@@ -873,7 +873,7 @@ mf_release_all(void)
mf_rem_used(mfp, hp); mf_rem_used(mfp, hp);
mf_rem_hash(mfp, hp); mf_rem_hash(mfp, hp);
mf_free_bhdr(hp); mf_free_bhdr(hp);
hp = mfp->mf_used_last; /* re-start, list was changed */ hp = mfp->mf_used_last; // re-start, list was changed
retval = TRUE; retval = TRUE;
} }
else else
@@ -897,7 +897,7 @@ mf_alloc_bhdr(memfile_T *mfp, int page_count)
{ {
if ((hp->bh_data = alloc(mfp->mf_page_size * page_count)) == NULL) if ((hp->bh_data = alloc(mfp->mf_page_size * page_count)) == NULL)
{ {
vim_free(hp); /* not enough memory */ vim_free(hp); // not enough memory
return NULL; return NULL;
} }
hp->bh_page_count = page_count; hp->bh_page_count = page_count;
@@ -951,7 +951,7 @@ mf_read(memfile_T *mfp, bhdr_T *hp)
unsigned page_size; unsigned page_size;
unsigned size; unsigned size;
if (mfp->mf_fd < 0) /* there is no file, can't read */ if (mfp->mf_fd < 0) // there is no file, can't read
return FAIL; return FAIL;
page_size = mfp->mf_page_size; page_size = mfp->mf_page_size;
@@ -969,8 +969,8 @@ mf_read(memfile_T *mfp, bhdr_T *hp)
} }
#ifdef FEAT_CRYPT #ifdef FEAT_CRYPT
/* Decrypt if 'key' is set and this is a data block. And when changing the // Decrypt if 'key' is set and this is a data block. And when changing the
* key. */ // key.
if (*mfp->mf_buffer->b_p_key != NUL || mfp->mf_old_key != NULL) if (*mfp->mf_buffer->b_p_key != NUL || mfp->mf_old_key != NULL)
ml_decrypt_data(mfp, hp->bh_data, offset, size); ml_decrypt_data(mfp, hp->bh_data, offset, size);
#endif #endif
@@ -986,18 +986,18 @@ mf_read(memfile_T *mfp, bhdr_T *hp)
static int static int
mf_write(memfile_T *mfp, bhdr_T *hp) mf_write(memfile_T *mfp, bhdr_T *hp)
{ {
off_T offset; /* offset in the file */ off_T offset; // offset in the file
blocknr_T nr; /* block nr which is being written */ blocknr_T nr; // block nr which is being written
bhdr_T *hp2; bhdr_T *hp2;
unsigned page_size; /* number of bytes in a page */ unsigned page_size; // number of bytes in a page
unsigned page_count; /* number of pages written */ unsigned page_count; // number of pages written
unsigned size; /* number of bytes written */ unsigned size; // number of bytes written
if (mfp->mf_fd < 0 && !mfp->mf_reopen) if (mfp->mf_fd < 0 && !mfp->mf_reopen)
// there is no file and there was no file, can't write // there is no file and there was no file, can't write
return FAIL; return FAIL;
if (hp->bh_bnum < 0) /* must assign file block number */ if (hp->bh_bnum < 0) // must assign file block number
if (mf_trans_add(mfp, hp) == FAIL) if (mf_trans_add(mfp, hp) == FAIL)
return FAIL; return FAIL;
@@ -1014,16 +1014,16 @@ mf_write(memfile_T *mfp, bhdr_T *hp)
int attempt; int attempt;
nr = hp->bh_bnum; nr = hp->bh_bnum;
if (nr > mfp->mf_infile_count) /* beyond end of file */ if (nr > mfp->mf_infile_count) // beyond end of file
{ {
nr = mfp->mf_infile_count; nr = mfp->mf_infile_count;
hp2 = mf_find_hash(mfp, nr); /* NULL caught below */ hp2 = mf_find_hash(mfp, nr); // NULL caught below
} }
else else
hp2 = hp; hp2 = hp;
offset = (off_T)page_size * nr; offset = (off_T)page_size * nr;
if (hp2 == NULL) /* freed block, fill with dummy data */ if (hp2 == NULL) // freed block, fill with dummy data
page_count = 1; page_count = 1;
else else
page_count = hp2->bh_page_count; page_count = hp2->bh_page_count;
@@ -1067,12 +1067,12 @@ mf_write(memfile_T *mfp, bhdr_T *hp)
} }
did_swapwrite_msg = FALSE; did_swapwrite_msg = FALSE;
if (hp2 != NULL) /* written a non-dummy block */ if (hp2 != NULL) // written a non-dummy block
hp2->bh_flags &= ~BH_DIRTY; hp2->bh_flags &= ~BH_DIRTY;
/* appended to the file */ // appended to the file
if (nr + (blocknr_T)page_count > mfp->mf_infile_count) if (nr + (blocknr_T)page_count > mfp->mf_infile_count)
mfp->mf_infile_count = nr + page_count; mfp->mf_infile_count = nr + page_count;
if (nr == hp->bh_bnum) /* written the desired block */ if (nr == hp->bh_bnum) // written the desired block
break; break;
} }
return OK; return OK;
@@ -1094,7 +1094,7 @@ mf_write_block(
int result = OK; int result = OK;
#ifdef FEAT_CRYPT #ifdef FEAT_CRYPT
/* Encrypt if 'key' is set and this is a data block. */ // Encrypt if 'key' is set and this is a data block.
if (*mfp->mf_buffer->b_p_key != NUL) if (*mfp->mf_buffer->b_p_key != NUL)
{ {
data = ml_encrypt_data(mfp, data, offset, size); data = ml_encrypt_data(mfp, data, offset, size);
@@ -1127,7 +1127,7 @@ mf_trans_add(memfile_T *mfp, bhdr_T *hp)
NR_TRANS *np; NR_TRANS *np;
int page_count; int page_count;
if (hp->bh_bnum >= 0) /* it's already positive */ if (hp->bh_bnum >= 0) // it's already positive
return OK; return OK;
if ((np = ALLOC_ONE(NR_TRANS)) == NULL) if ((np = ALLOC_ONE(NR_TRANS)) == NULL)
@@ -1164,14 +1164,14 @@ mf_trans_add(memfile_T *mfp, bhdr_T *hp)
mfp->mf_blocknr_max += page_count; mfp->mf_blocknr_max += page_count;
} }
np->nt_old_bnum = hp->bh_bnum; /* adjust number */ np->nt_old_bnum = hp->bh_bnum; // adjust number
np->nt_new_bnum = new_bnum; np->nt_new_bnum = new_bnum;
mf_rem_hash(mfp, hp); /* remove from old hash list */ mf_rem_hash(mfp, hp); // remove from old hash list
hp->bh_bnum = new_bnum; hp->bh_bnum = new_bnum;
mf_ins_hash(mfp, hp); /* insert in new hash list */ mf_ins_hash(mfp, hp); // insert in new hash list
/* Insert "np" into "mf_trans" hashtable with key "np->nt_old_bnum" */ // Insert "np" into "mf_trans" hashtable with key "np->nt_old_bnum"
mf_hash_add_item(&mfp->mf_trans, (mf_hashitem_T *)np); mf_hash_add_item(&mfp->mf_trans, (mf_hashitem_T *)np);
return OK; return OK;
@@ -1190,13 +1190,13 @@ mf_trans_del(memfile_T *mfp, blocknr_T old_nr)
np = (NR_TRANS *)mf_hash_find(&mfp->mf_trans, old_nr); np = (NR_TRANS *)mf_hash_find(&mfp->mf_trans, old_nr);
if (np == NULL) /* not found */ if (np == NULL) // not found
return old_nr; return old_nr;
mfp->mf_neg_count--; mfp->mf_neg_count--;
new_bnum = np->nt_new_bnum; new_bnum = np->nt_new_bnum;
/* remove entry from the trans list */ // remove entry from the trans list
mf_hash_rem_item(&mfp->mf_trans, (mf_hashitem_T *)np); mf_hash_rem_item(&mfp->mf_trans, (mf_hashitem_T *)np);
vim_free(np); vim_free(np);
@@ -1248,7 +1248,7 @@ mf_need_trans(memfile_T *mfp)
mf_do_open( mf_do_open(
memfile_T *mfp, memfile_T *mfp,
char_u *fname, char_u *fname,
int flags) /* flags for open() */ int flags) // flags for open()
{ {
#ifdef HAVE_LSTAT #ifdef HAVE_LSTAT
stat_T sb; stat_T sb;
@@ -1288,9 +1288,9 @@ mf_do_open(
*/ */
flags |= O_EXTRA | O_NOFOLLOW; flags |= O_EXTRA | O_NOFOLLOW;
#ifdef MSWIN #ifdef MSWIN
/* Prevent handle inheritance that cause problems with Cscope // Prevent handle inheritance that cause problems with Cscope
* (swap file may not be deleted if cscope connection was open after // (swap file may not be deleted if cscope connection was open after
* the file) */ // the file)
flags |= O_NOINHERIT; flags |= O_NOINHERIT;
#endif #endif
mfp->mf_flags = flags; mfp->mf_flags = flags;
@@ -1315,7 +1315,7 @@ mf_do_open(
#if defined(HAVE_SELINUX) || defined(HAVE_SMACK) #if defined(HAVE_SELINUX) || defined(HAVE_SMACK)
mch_copy_sec(fname, mfp->mf_fname); mch_copy_sec(fname, mfp->mf_fname);
#endif #endif
mch_hide(mfp->mf_fname); /* try setting the 'hidden' flag */ mch_hide(mfp->mf_fname); // try setting the 'hidden' flag
} }
} }
@@ -1329,7 +1329,7 @@ mf_do_open(
* exceeds 2 ^ MHT_LOG_LOAD_FACTOR. * exceeds 2 ^ MHT_LOG_LOAD_FACTOR.
*/ */
#define MHT_LOG_LOAD_FACTOR 6 #define MHT_LOG_LOAD_FACTOR 6
#define MHT_GROWTH_FACTOR 2 /* must be a power of two */ #define MHT_GROWTH_FACTOR 2 // must be a power of two
/* /*
* Initialize an empty hash table. * Initialize an empty hash table.
@@ -1416,7 +1416,7 @@ mf_hash_add_item(mf_hashtab_T *mht, mf_hashitem_T *mhi)
{ {
if (mf_hash_grow(mht) == FAIL) if (mf_hash_grow(mht) == FAIL)
{ {
/* stop trying to grow after first failure to allocate memory */ // stop trying to grow after first failure to allocate memory
mht->mht_fixed = 1; mht->mht_fixed = 1;
} }
} }
@@ -1439,8 +1439,8 @@ mf_hash_rem_item(mf_hashtab_T *mht, mf_hashitem_T *mhi)
mht->mht_count--; mht->mht_count--;
/* We could shrink the table here, but it typically takes little memory, // We could shrink the table here, but it typically takes little memory,
* so why bother? */ // so why bother?
} }
/* /*

View File

@@ -15,11 +15,11 @@
#undef NDEBUG #undef NDEBUG
#include <assert.h> #include <assert.h>
/* Must include main.c because it contains much more than just main() */ // Must include main.c because it contains much more than just main()
#define NO_VIM_MAIN #define NO_VIM_MAIN
#include "main.c" #include "main.c"
/* This file has to be included because the tested functions are static */ // This file has to be included because the tested functions are static
#include "memfile.c" #include "memfile.c"
#define index_to_key(i) ((i) ^ 15167) #define index_to_key(i) ((i) ^ 15167)
@@ -39,21 +39,21 @@ test_mf_hash(void)
mf_hash_init(&ht); mf_hash_init(&ht);
/* insert some items and check invariants */ // insert some items and check invariants
for (i = 0; i < TEST_COUNT; i++) for (i = 0; i < TEST_COUNT; i++)
{ {
assert(ht.mht_count == i); assert(ht.mht_count == i);
/* check that number of buckets is a power of 2 */ // check that number of buckets is a power of 2
num_buckets = ht.mht_mask + 1; num_buckets = ht.mht_mask + 1;
assert(num_buckets > 0 && (num_buckets & (num_buckets - 1)) == 0); assert(num_buckets > 0 && (num_buckets & (num_buckets - 1)) == 0);
/* check load factor */ // check load factor
assert(ht.mht_count <= (num_buckets << MHT_LOG_LOAD_FACTOR)); assert(ht.mht_count <= (num_buckets << MHT_LOG_LOAD_FACTOR));
if (i < (MHT_INIT_SIZE << MHT_LOG_LOAD_FACTOR)) if (i < (MHT_INIT_SIZE << MHT_LOG_LOAD_FACTOR))
{ {
/* first expansion shouldn't have occurred yet */ // first expansion shouldn't have occurred yet
assert(num_buckets == MHT_INIT_SIZE); assert(num_buckets == MHT_INIT_SIZE);
assert(ht.mht_buckets == ht.mht_small_buckets); assert(ht.mht_buckets == ht.mht_small_buckets);
} }
@@ -66,7 +66,7 @@ test_mf_hash(void)
key = index_to_key(i); key = index_to_key(i);
assert(mf_hash_find(&ht, key) == NULL); assert(mf_hash_find(&ht, key) == NULL);
/* allocate and add new item */ // allocate and add new item
item = LALLOC_CLEAR_ONE(mf_hashitem_T); item = LALLOC_CLEAR_ONE(mf_hashitem_T);
assert(item != NULL); assert(item != NULL);
item->mhi_key = key; item->mhi_key = key;
@@ -76,13 +76,13 @@ test_mf_hash(void)
if (ht.mht_mask + 1 != num_buckets) if (ht.mht_mask + 1 != num_buckets)
{ {
/* hash table was expanded */ // hash table was expanded
assert(ht.mht_mask + 1 == num_buckets * MHT_GROWTH_FACTOR); assert(ht.mht_mask + 1 == num_buckets * MHT_GROWTH_FACTOR);
assert(i + 1 == (num_buckets << MHT_LOG_LOAD_FACTOR)); assert(i + 1 == (num_buckets << MHT_LOG_LOAD_FACTOR));
} }
} }
/* check presence of inserted items */ // check presence of inserted items
for (i = 0; i < TEST_COUNT; i++) for (i = 0; i < TEST_COUNT; i++)
{ {
key = index_to_key(i); key = index_to_key(i);
@@ -91,7 +91,7 @@ test_mf_hash(void)
assert(item->mhi_key == key); assert(item->mhi_key == key);
} }
/* delete some items */ // delete some items
for (i = 0; i < TEST_COUNT; i++) for (i = 0; i < TEST_COUNT; i++)
{ {
if (i % 100 < 70) if (i % 100 < 70)
@@ -114,7 +114,7 @@ test_mf_hash(void)
} }
} }
/* check again */ // check again
for (i = 0; i < TEST_COUNT; i++) for (i = 0; i < TEST_COUNT; i++)
{ {
key = index_to_key(i); key = index_to_key(i);
@@ -131,7 +131,7 @@ test_mf_hash(void)
} }
} }
/* free hash table and all remaining items */ // free hash table and all remaining items
mf_hash_free_all(&ht); mf_hash_free_all(&ht);
} }

File diff suppressed because it is too large Load Diff

View File

@@ -16,7 +16,7 @@
#if defined(FEAT_MENU) || defined(PROTO) #if defined(FEAT_MENU) || defined(PROTO)
#define MENUDEPTH 10 /* maximum depth of menus */ #define MENUDEPTH 10 // maximum depth of menus
#ifdef FEAT_GUI_MSWIN #ifdef FEAT_GUI_MSWIN
static int add_menu_path(char_u *, vimmenu_T *, int *, char_u *, int); static int add_menu_path(char_u *, vimmenu_T *, int *, char_u *, int);
@@ -56,7 +56,7 @@ static void menu_unescape_name(char_u *p);
static char_u *menu_translate_tab_and_shift(char_u *arg_start); static char_u *menu_translate_tab_and_shift(char_u *arg_start);
/* The character for each menu mode */ // The character for each menu mode
static char *menu_mode_chars[] = {"n", "v", "s", "o", "i", "c", "tl", "t"}; static char *menu_mode_chars[] = {"n", "v", "s", "o", "i", "c", "tl", "t"};
static char_u e_notsubmenu[] = N_("E327: Part of menu-item path is not sub-menu"); static char_u e_notsubmenu[] = N_("E327: Part of menu-item path is not sub-menu");
@@ -106,7 +106,7 @@ get_root_menu(char_u *name)
*/ */
void void
ex_menu( ex_menu(
exarg_T *eap) /* Ex command arguments */ exarg_T *eap) // Ex command arguments
{ {
char_u *menu_path; char_u *menu_path;
int modes; int modes;
@@ -126,8 +126,8 @@ ex_menu(
# endif # endif
#endif #endif
int pri_tab[MENUDEPTH + 1]; int pri_tab[MENUDEPTH + 1];
int enable = MAYBE; /* TRUE for "menu enable", FALSE for "menu int enable = MAYBE; // TRUE for "menu enable", FALSE for "menu
* disable */ // disable
#ifdef FEAT_TOOLBAR #ifdef FEAT_TOOLBAR
char_u *icon = NULL; char_u *icon = NULL;
#endif #endif
@@ -161,7 +161,7 @@ ex_menu(
} }
/* Locate an optional "icon=filename" argument. */ // Locate an optional "icon=filename" argument.
if (STRNCMP(arg, "icon=", 5) == 0) if (STRNCMP(arg, "icon=", 5) == 0)
{ {
arg += 5; arg += 5;
@@ -208,7 +208,7 @@ ex_menu(
i = 0; i = 0;
while (i < MENUDEPTH) while (i < MENUDEPTH)
pri_tab[i++] = 500; pri_tab[i++] = 500;
pri_tab[MENUDEPTH] = -1; /* mark end of the table */ pri_tab[MENUDEPTH] = -1; // mark end of the table
/* /*
* Check for "disable" or "enable" argument. * Check for "disable" or "enable" argument.
@@ -301,7 +301,7 @@ ex_menu(
root_menu_ptr = get_root_menu(menu_path); root_menu_ptr = get_root_menu(menu_path);
if (root_menu_ptr == &curwin->w_winbar) if (root_menu_ptr == &curwin->w_winbar)
/* Assume the window toolbar menu will change. */ // Assume the window toolbar menu will change.
redraw_later(NOT_VALID); redraw_later(NOT_VALID);
if (enable != MAYBE) if (enable != MAYBE)
@@ -311,7 +311,7 @@ ex_menu(
* For the PopUp menu, remove a menu for each mode separately. * For the PopUp menu, remove a menu for each mode separately.
* Careful: menu_nable_recurse() changes menu_path. * Careful: menu_nable_recurse() changes menu_path.
*/ */
if (STRCMP(menu_path, "*") == 0) /* meaning: do all menus */ if (STRCMP(menu_path, "*") == 0) // meaning: do all menus
menu_path = (char_u *)""; menu_path = (char_u *)"";
if (menu_is_popup(menu_path)) if (menu_is_popup(menu_path))
@@ -335,7 +335,7 @@ ex_menu(
/* /*
* Delete menu(s). * Delete menu(s).
*/ */
if (STRCMP(menu_path, "*") == 0) /* meaning: remove all menus */ if (STRCMP(menu_path, "*") == 0) // meaning: remove all menus
menu_path = (char_u *)""; menu_path = (char_u *)"";
/* /*
@@ -355,7 +355,7 @@ ex_menu(
} }
} }
/* Careful: remove_menu() changes menu_path */ // Careful: remove_menu() changes menu_path
remove_menu(root_menu_ptr, menu_path, modes, FALSE); remove_menu(root_menu_ptr, menu_path, modes, FALSE);
} }
else else
@@ -364,13 +364,13 @@ ex_menu(
* Add menu(s). * Add menu(s).
* Replace special key codes. * Replace special key codes.
*/ */
if (STRICMP(map_to, "<nop>") == 0) /* "<Nop>" means nothing */ if (STRICMP(map_to, "<nop>") == 0) // "<Nop>" means nothing
{ {
map_to = (char_u *)""; map_to = (char_u *)"";
map_buf = NULL; map_buf = NULL;
} }
else if (modes & MENU_TIP_MODE) else if (modes & MENU_TIP_MODE)
map_buf = NULL; /* Menu tips are plain text. */ map_buf = NULL; // Menu tips are plain text.
else else
map_to = replace_termcodes(map_to, &map_buf, map_to = replace_termcodes(map_to, &map_buf,
REPTERM_DO_LT | (special ? REPTERM_SPECIAL : 0), NULL); REPTERM_DO_LT | (special ? REPTERM_SPECIAL : 0), NULL);
@@ -397,7 +397,7 @@ ex_menu(
p = popup_mode_name(menu_path, i); p = popup_mode_name(menu_path, i);
if (p != NULL) if (p != NULL)
{ {
/* Include all modes, to make ":amenu" work */ // Include all modes, to make ":amenu" work
menuarg.modes = modes; menuarg.modes = modes;
#ifdef FEAT_TOOLBAR #ifdef FEAT_TOOLBAR
menuarg.iconfile = NULL; menuarg.iconfile = NULL;
@@ -418,7 +418,7 @@ ex_menu(
} }
#if defined(FEAT_GUI) && !(defined(FEAT_GUI_GTK)) #if defined(FEAT_GUI) && !(defined(FEAT_GUI_GTK))
/* If the menubar height changed, resize the window */ // If the menubar height changed, resize the window
if (gui.in_use if (gui.in_use
&& (gui.menu_height != old_menu_height && (gui.menu_height != old_menu_height
# if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_MSWIN) # if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_MSWIN)
@@ -451,12 +451,12 @@ theend:
static int static int
add_menu_path( add_menu_path(
char_u *menu_path, char_u *menu_path,
vimmenu_T *menuarg, /* passes modes, iconfile, iconidx, vimmenu_T *menuarg, // passes modes, iconfile, iconidx,
icon_builtin, silent[0], noremap[0] */ // icon_builtin, silent[0], noremap[0]
int *pri_tab, int *pri_tab,
char_u *call_data char_u *call_data
#ifdef FEAT_GUI_MSWIN #ifdef FEAT_GUI_MSWIN
, int addtearoff /* may add tearoff item */ , int addtearoff // may add tearoff item
#endif #endif
) )
{ {
@@ -486,7 +486,7 @@ add_menu_path(
#endif #endif
vimmenu_T **root_menu_ptr; vimmenu_T **root_menu_ptr;
/* Make a copy so we can stuff around with it, since it could be const */ // Make a copy so we can stuff around with it, since it could be const
path_name = vim_strsave(menu_path); path_name = vim_strsave(menu_path);
if (path_name == NULL) if (path_name == NULL)
return FAIL; return FAIL;
@@ -496,8 +496,8 @@ add_menu_path(
name = path_name; name = path_name;
while (*name) while (*name)
{ {
/* Get name of this element in the menu hierarchy, and the simplified // Get name of this element in the menu hierarchy, and the simplified
* name (without mnemonic and accelerator text). */ // name (without mnemonic and accelerator text).
next_name = menu_name_skip(name); next_name = menu_name_skip(name);
#ifdef FEAT_MULTI_LANG #ifdef FEAT_MULTI_LANG
map_to = menutrans_lookup(name, (int)STRLEN(name)); map_to = menutrans_lookup(name, (int)STRLEN(name));
@@ -514,12 +514,12 @@ add_menu_path(
goto erret; goto erret;
if (*dname == NUL) if (*dname == NUL)
{ {
/* Only a mnemonic or accelerator is not valid. */ // Only a mnemonic or accelerator is not valid.
emsg(_("E792: Empty menu name")); emsg(_("E792: Empty menu name"));
goto erret; goto erret;
} }
/* See if it's already there */ // See if it's already there
lower_pri = menup; lower_pri = menup;
#ifdef FEAT_GUI #ifdef FEAT_GUI
idx = 0; idx = 0;
@@ -550,8 +550,8 @@ add_menu_path(
} }
menup = &menu->next; menup = &menu->next;
/* Count menus, to find where this one needs to be inserted. // Count menus, to find where this one needs to be inserted.
* Ignore menus that are not in the menubar (PopUp and Toolbar) */ // Ignore menus that are not in the menubar (PopUp and Toolbar)
if (parent != NULL || menu_is_menubar(menu->name)) if (parent != NULL || menu_is_menubar(menu->name))
{ {
#ifdef FEAT_GUI #ifdef FEAT_GUI
@@ -582,7 +582,7 @@ add_menu_path(
goto erret; goto erret;
} }
/* Not already there, so lets add it */ // Not already there, so lets add it
menu = ALLOC_CLEAR_ONE(vimmenu_T); menu = ALLOC_CLEAR_ONE(vimmenu_T);
if (menu == NULL) if (menu == NULL)
goto erret; goto erret;
@@ -590,7 +590,7 @@ add_menu_path(
menu->modes = modes; menu->modes = modes;
menu->enabled = MENU_ALL_MODES; menu->enabled = MENU_ALL_MODES;
menu->name = vim_strsave(name); menu->name = vim_strsave(name);
/* separate mnemonic and accelerator text from actual menu name */ // separate mnemonic and accelerator text from actual menu name
menu->dname = menu_text(name, &menu->mnemonic, &menu->actext); menu->dname = menu_text(name, &menu->mnemonic, &menu->actext);
#ifdef FEAT_MULTI_LANG #ifdef FEAT_MULTI_LANG
if (en_name != NULL) if (en_name != NULL)
@@ -607,13 +607,13 @@ add_menu_path(
menu->priority = pri_tab[pri_idx]; menu->priority = pri_tab[pri_idx];
menu->parent = parent; menu->parent = parent;
#ifdef FEAT_GUI_MOTIF #ifdef FEAT_GUI_MOTIF
menu->sensitive = TRUE; /* the default */ menu->sensitive = TRUE; // the default
#endif #endif
#ifdef FEAT_BEVAL_TIP #ifdef FEAT_BEVAL_TIP
menu->tip = NULL; menu->tip = NULL;
#endif #endif
#ifdef FEAT_GUI_ATHENA #ifdef FEAT_GUI_ATHENA
menu->image = None; /* X-Windows definition for NULL*/ menu->image = None; // X-Windows definition for NULL
#endif #endif
/* /*
@@ -631,7 +631,7 @@ add_menu_path(
menu->iconfile = vim_strsave(menuarg->iconfile); menu->iconfile = vim_strsave(menuarg->iconfile);
#endif #endif
#if defined(FEAT_GUI_MSWIN) && defined(FEAT_TEAROFF) #if defined(FEAT_GUI_MSWIN) && defined(FEAT_TEAROFF)
/* the tearoff item must be present in the modes of each item. */ // the tearoff item must be present in the modes of each item.
if (parent != NULL && menu_is_tearoff(parent->children->dname)) if (parent != NULL && menu_is_tearoff(parent->children->dname))
parent->children->modes |= modes; parent->children->modes |= modes;
#endif #endif
@@ -646,7 +646,7 @@ add_menu_path(
* Also enable a menu when it's created or changed. * Also enable a menu when it's created or changed.
*/ */
#ifdef FEAT_GUI_MSWIN #ifdef FEAT_GUI_MSWIN
/* If adding a tearbar (addtearoff == FALSE) don't update modes */ // If adding a tearbar (addtearoff == FALSE) don't update modes
if (addtearoff) if (addtearoff)
#endif #endif
{ {
@@ -663,25 +663,25 @@ add_menu_path(
if ((old_modes & MENU_ALL_MODES) == 0 if ((old_modes & MENU_ALL_MODES) == 0
&& (menu->modes & MENU_ALL_MODES) != 0) && (menu->modes & MENU_ALL_MODES) != 0)
{ {
if (gui.in_use) /* Otherwise it will be added when GUI starts */ if (gui.in_use) // Otherwise it will be added when GUI starts
{ {
if (*next_name == NUL) if (*next_name == NUL)
{ {
/* Real menu item, not sub-menu */ // Real menu item, not sub-menu
gui_mch_add_menu_item(menu, new_idx); gui_mch_add_menu_item(menu, new_idx);
/* Want to update menus now even if mode not changed */ // Want to update menus now even if mode not changed
force_menu_update = TRUE; force_menu_update = TRUE;
} }
else else
{ {
/* Sub-menu (not at end of path yet) */ // Sub-menu (not at end of path yet)
gui_mch_add_menu(menu, new_idx); gui_mch_add_menu(menu, new_idx);
} }
} }
# if defined(FEAT_GUI_MSWIN) & defined(FEAT_TEAROFF) # if defined(FEAT_GUI_MSWIN) & defined(FEAT_TEAROFF)
/* When adding a new submenu, may add a tearoff item */ // When adding a new submenu, may add a tearoff item
if ( addtearoff if ( addtearoff
&& *next_name && *next_name
&& vim_strchr(p_go, GO_TEAROFF) != NULL && vim_strchr(p_go, GO_TEAROFF) != NULL
@@ -721,7 +721,7 @@ add_menu_path(
} }
# endif # endif
} }
#endif /* FEAT_GUI */ #endif // FEAT_GUI
menup = &menu->children; menup = &menu->children;
parent = menu; parent = menu;
@@ -748,17 +748,17 @@ add_menu_path(
#endif #endif
p = (call_data == NULL) ? NULL : vim_strsave(call_data); p = (call_data == NULL) ? NULL : vim_strsave(call_data);
/* loop over all modes, may add more than one */ // loop over all modes, may add more than one
for (i = 0; i < MENU_MODES; ++i) for (i = 0; i < MENU_MODES; ++i)
{ {
if (modes & (1 << i)) if (modes & (1 << i))
{ {
/* free any old menu */ // free any old menu
free_menu_string(menu, i); free_menu_string(menu, i);
/* For "amenu", may insert an extra character. // For "amenu", may insert an extra character.
* Don't do this if adding a tearbar (addtearoff == FALSE). // Don't do this if adding a tearbar (addtearoff == FALSE).
* Don't do this for "<Nop>". */ // Don't do this for "<Nop>".
c = 0; c = 0;
d = 0; d = 0;
if (amenu && call_data != NULL && *call_data != NUL if (amenu && call_data != NULL && *call_data != NUL
@@ -799,7 +799,7 @@ add_menu_path(
{ {
int len = (int)STRLEN(menu->strings[i]); int len = (int)STRLEN(menu->strings[i]);
/* Append CTRL-\ CTRL-G to obey 'insertmode'. */ // Append CTRL-\ CTRL-G to obey 'insertmode'.
menu->strings[i][len] = Ctrl_BSL; menu->strings[i][len] = Ctrl_BSL;
menu->strings[i][len + 1] = Ctrl_G; menu->strings[i][len + 1] = Ctrl_G;
menu->strings[i][len + 2] = NUL; menu->strings[i][len + 2] = NUL;
@@ -814,7 +814,7 @@ add_menu_path(
} }
#if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_MSWIN) \ #if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_MSWIN) \
&& (defined(FEAT_BEVAL_GUI) || defined(FEAT_GUI_GTK)) && (defined(FEAT_BEVAL_GUI) || defined(FEAT_GUI_GTK))
/* Need to update the menu tip. */ // Need to update the menu tip.
if (modes & MENU_TIP_MODE) if (modes & MENU_TIP_MODE)
gui_mch_menu_set_tip(menu); gui_mch_menu_set_tip(menu);
#endif #endif
@@ -825,8 +825,8 @@ erret:
vim_free(path_name); vim_free(path_name);
vim_free(dname); vim_free(dname);
/* Delete any empty submenu we added before discovering the error. Repeat // Delete any empty submenu we added before discovering the error. Repeat
* for higher levels. */ // for higher levels.
while (parent != NULL && parent->children == NULL) while (parent != NULL && parent->children == NULL)
{ {
if (parent->parent == NULL) if (parent->parent == NULL)
@@ -835,7 +835,7 @@ erret:
menup = &parent->parent->children; menup = &parent->parent->children;
for ( ; *menup != NULL && *menup != parent; menup = &((*menup)->next)) for ( ; *menup != NULL && *menup != parent; menup = &((*menup)->next))
; ;
if (*menup == NULL) /* safety check */ if (*menup == NULL) // safety check
break; break;
parent = parent->parent; parent = parent->parent;
free_menu(menup); free_menu(menup);
@@ -857,12 +857,12 @@ menu_nable_recurse(
char_u *p; char_u *p;
if (menu == NULL) if (menu == NULL)
return OK; /* Got to bottom of hierarchy */ return OK; // Got to bottom of hierarchy
/* Get name of this element in the menu hierarchy */ // Get name of this element in the menu hierarchy
p = menu_name_skip(name); p = menu_name_skip(name);
/* Find the menu */ // Find the menu
while (menu != NULL) while (menu != NULL)
{ {
if (*name == NUL || *name == '*' || menu_name_equal(name, menu)) if (*name == NUL || *name == '*' || menu_name_equal(name, menu))
@@ -901,7 +901,7 @@ menu_nable_recurse(
} }
#ifdef FEAT_GUI #ifdef FEAT_GUI
/* Want to update menus now even if mode not changed */ // Want to update menus now even if mode not changed
force_menu_update = TRUE; force_menu_update = TRUE;
#endif #endif
@@ -917,19 +917,19 @@ remove_menu(
vimmenu_T **menup, vimmenu_T **menup,
char_u *name, char_u *name,
int modes, int modes,
int silent) /* don't give error messages */ int silent) // don't give error messages
{ {
vimmenu_T *menu; vimmenu_T *menu;
vimmenu_T *child; vimmenu_T *child;
char_u *p; char_u *p;
if (*menup == NULL) if (*menup == NULL)
return OK; /* Got to bottom of hierarchy */ return OK; // Got to bottom of hierarchy
/* Get name of this element in the menu hierarchy */ // Get name of this element in the menu hierarchy
p = menu_name_skip(name); p = menu_name_skip(name);
/* Find the menu */ // Find the menu
while ((menu = *menup) != NULL) while ((menu = *menup) != NULL)
{ {
if (*name == NUL || menu_name_equal(name, menu)) if (*name == NUL || menu_name_equal(name, menu))
@@ -971,8 +971,8 @@ remove_menu(
if (*name != NUL) if (*name != NUL)
break; break;
/* Remove the menu item for the given mode[s]. If the menu item // Remove the menu item for the given mode[s]. If the menu item
* is no longer valid in ANY mode, delete it */ // is no longer valid in ANY mode, delete it
menu->modes &= ~modes; menu->modes &= ~modes;
if (modes & MENU_TIP_MODE) if (modes & MENU_TIP_MODE)
free_menu_string(menu, MENU_INDEX_TIP); free_menu_string(menu, MENU_INDEX_TIP);
@@ -994,11 +994,11 @@ remove_menu(
} }
/* Recalculate modes for menu based on the new updated children */ // Recalculate modes for menu based on the new updated children
menu->modes &= ~modes; menu->modes &= ~modes;
#if defined(FEAT_GUI_MSWIN) & defined(FEAT_TEAROFF) #if defined(FEAT_GUI_MSWIN) & defined(FEAT_TEAROFF)
if ((s_tearoffs) && (menu->children != NULL)) /* there's a tear bar.. */ if ((s_tearoffs) && (menu->children != NULL)) // there's a tear bar..
child = menu->children->next; /* don't count tearoff bar */ child = menu->children->next; // don't count tearoff bar
else else
#endif #endif
child = menu->children; child = menu->children;
@@ -1009,16 +1009,16 @@ remove_menu(
free_menu_string(menu, MENU_INDEX_TIP); free_menu_string(menu, MENU_INDEX_TIP);
#if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_MSWIN) \ #if defined(FEAT_TOOLBAR) && !defined(FEAT_GUI_MSWIN) \
&& (defined(FEAT_BEVAL_GUI) || defined(FEAT_GUI_GTK)) && (defined(FEAT_BEVAL_GUI) || defined(FEAT_GUI_GTK))
/* Need to update the menu tip. */ // Need to update the menu tip.
if (gui.in_use) if (gui.in_use)
gui_mch_menu_set_tip(menu); gui_mch_menu_set_tip(menu);
#endif #endif
} }
if ((menu->modes & MENU_ALL_MODES) == 0) if ((menu->modes & MENU_ALL_MODES) == 0)
{ {
/* The menu item is no longer valid in ANY mode, so delete it */ // The menu item is no longer valid in ANY mode, so delete it
#if defined(FEAT_GUI_MSWIN) & defined(FEAT_TEAROFF) #if defined(FEAT_GUI_MSWIN) & defined(FEAT_TEAROFF)
if (s_tearoffs && menu->children != NULL) /* there's a tear bar.. */ if (s_tearoffs && menu->children != NULL) // there's a tear bar..
free_menu(&menu->children); free_menu(&menu->children);
#endif #endif
*menup = menu; *menup = menu;
@@ -1051,14 +1051,14 @@ free_menu(vimmenu_T **menup)
menu = *menup; menu = *menup;
#ifdef FEAT_GUI #ifdef FEAT_GUI
/* Free machine specific menu structures (only when already created) */ // Free machine specific menu structures (only when already created)
/* Also may rebuild a tearoff'ed menu */ // Also may rebuild a tearoff'ed menu
if (gui.in_use) if (gui.in_use)
gui_mch_destroy_menu(menu); gui_mch_destroy_menu(menu);
#endif #endif
/* Don't change *menup until after calling gui_mch_destroy_menu(). The // Don't change *menup until after calling gui_mch_destroy_menu(). The
* MacOS code needs the original structure to properly delete the menu. */ // MacOS code needs the original structure to properly delete the menu.
*menup = menu->next; *menup = menu->next;
vim_free(menu->name); vim_free(menu->name);
vim_free(menu->dname); vim_free(menu->dname);
@@ -1078,7 +1078,7 @@ free_menu(vimmenu_T **menup)
vim_free(menu); vim_free(menu);
#ifdef FEAT_GUI #ifdef FEAT_GUI
/* Want to update menus now even if mode not changed */ // Want to update menus now even if mode not changed
force_menu_update = TRUE; force_menu_update = TRUE;
#endif #endif
} }
@@ -1116,7 +1116,7 @@ show_menus(char_u *path_name, int modes)
return FAIL; return FAIL;
menu = *get_root_menu(path_name); menu = *get_root_menu(path_name);
/* First, find the (sub)menu with the given name */ // First, find the (sub)menu with the given name
while (*name) while (*name)
{ {
p = menu_name_skip(name); p = menu_name_skip(name);
@@ -1124,7 +1124,7 @@ show_menus(char_u *path_name, int modes)
{ {
if (menu_name_equal(name, menu)) if (menu_name_equal(name, menu))
{ {
/* Found menu */ // Found menu
if (*p != NUL && menu->children == NULL) if (*p != NUL && menu->children == NULL)
{ {
emsg(_(e_notsubmenu)); emsg(_(e_notsubmenu));
@@ -1153,8 +1153,8 @@ show_menus(char_u *path_name, int modes)
} }
vim_free(path_name); vim_free(path_name);
/* Now we have found the matching menu, and we list the mappings */ // Now we have found the matching menu, and we list the mappings
/* Highlight title */ // Highlight title
msg_puts_title(_("\n--- Menus ---")); msg_puts_title(_("\n--- Menus ---"));
show_menus_recursive(parent, modes, 0); show_menus_recursive(parent, modes, 0);
@@ -1176,7 +1176,7 @@ show_menus_recursive(vimmenu_T *menu, int modes, int depth)
if (menu != NULL) if (menu != NULL)
{ {
msg_putchar('\n'); msg_putchar('\n');
if (got_int) /* "q" hit for "--more--" */ if (got_int) // "q" hit for "--more--"
return; return;
for (i = 0; i < depth; i++) for (i = 0; i < depth; i++)
msg_puts(" "); msg_puts(" ");
@@ -1185,7 +1185,7 @@ show_menus_recursive(vimmenu_T *menu, int modes, int depth)
msg_outnum((long)menu->priority); msg_outnum((long)menu->priority);
msg_puts(" "); msg_puts(" ");
} }
/* Same highlighting as for directories!? */ // Same highlighting as for directories!?
msg_outtrans_attr(menu->name, HL_ATTR(HLF_D)); msg_outtrans_attr(menu->name, HL_ATTR(HLF_D));
} }
@@ -1195,7 +1195,7 @@ show_menus_recursive(vimmenu_T *menu, int modes, int depth)
if ((menu->modes & modes & (1 << bit)) != 0) if ((menu->modes & modes & (1 << bit)) != 0)
{ {
msg_putchar('\n'); msg_putchar('\n');
if (got_int) /* "q" hit for "--more--" */ if (got_int) // "q" hit for "--more--"
return; return;
for (i = 0; i < depth + 2; i++) for (i = 0; i < depth + 2; i++)
msg_puts(" "); msg_puts(" ");
@@ -1231,7 +1231,7 @@ show_menus_recursive(vimmenu_T *menu, int modes, int depth)
else else
menu = menu->children; menu = menu->children;
/* recursively show all children. Skip PopUp[nvoci]. */ // recursively show all children. Skip PopUp[nvoci].
for (; menu != NULL && !got_int; menu = menu->next) for (; menu != NULL && !got_int; menu = menu->next)
if (!menu_is_hidden(menu->dname)) if (!menu_is_hidden(menu->dname))
show_menus_recursive(menu, modes, depth + 1); show_menus_recursive(menu, modes, depth + 1);
@@ -1244,7 +1244,7 @@ show_menus_recursive(vimmenu_T *menu, int modes, int depth)
static vimmenu_T *expand_menu = NULL; static vimmenu_T *expand_menu = NULL;
static vimmenu_T *expand_menu_alt = NULL; static vimmenu_T *expand_menu_alt = NULL;
static int expand_modes = 0x0; static int expand_modes = 0x0;
static int expand_emenu; /* TRUE for ":emenu" command */ static int expand_emenu; // TRUE for ":emenu" command
/* /*
* Work out what to complete when doing command line completion of menu names. * Work out what to complete when doing command line completion of menu names.
@@ -1267,7 +1267,7 @@ set_context_in_menu_cmd(
xp->xp_context = EXPAND_UNSUCCESSFUL; xp->xp_context = EXPAND_UNSUCCESSFUL;
/* Check for priority numbers, enable and disable */ // Check for priority numbers, enable and disable
for (p = arg; *p; ++p) for (p = arg; *p; ++p)
if (!VIM_ISDIGIT(*p) && *p != '.') if (!VIM_ISDIGIT(*p) && *p != '.')
break; break;
@@ -1297,12 +1297,12 @@ set_context_in_menu_cmd(
after_dot = p + 1; after_dot = p + 1;
} }
/* ":tearoff" and ":popup" only use menus, not entries */ // ":tearoff" and ":popup" only use menus, not entries
expand_menus = !((*cmd == 't' && cmd[1] == 'e') || *cmd == 'p'); expand_menus = !((*cmd == 't' && cmd[1] == 'e') || *cmd == 'p');
expand_emenu = (*cmd == 'e'); expand_emenu = (*cmd == 'e');
if (expand_menus && VIM_ISWHITE(*p)) if (expand_menus && VIM_ISWHITE(*p))
return NULL; /* TODO: check for next command? */ return NULL; // TODO: check for next command?
if (*p == NUL) /* Complete the menu name */ if (*p == NUL) // Complete the menu name
{ {
int try_alt_menu = TRUE; int try_alt_menu = TRUE;
@@ -1331,7 +1331,7 @@ set_context_in_menu_cmd(
{ {
if (menu_name_equal(name, menu)) if (menu_name_equal(name, menu))
{ {
/* Found menu */ // Found menu
if ((*p != NUL && menu->children == NULL) if ((*p != NUL && menu->children == NULL)
|| ((menu->modes & expand_modes) == 0x0)) || ((menu->modes & expand_modes) == 0x0))
{ {
@@ -1353,7 +1353,7 @@ set_context_in_menu_cmd(
} }
if (menu == NULL) if (menu == NULL)
{ {
/* No menu found with the name we were looking for */ // No menu found with the name we were looking for
vim_free(path_name); vim_free(path_name);
return NULL; return NULL;
} }
@@ -1371,7 +1371,7 @@ set_context_in_menu_cmd(
else else
expand_menu_alt = NULL; expand_menu_alt = NULL;
} }
else /* We're in the mapping part */ else // We're in the mapping part
xp->xp_context = EXPAND_NOTHING; xp->xp_context = EXPAND_NOTHING;
return NULL; return NULL;
} }
@@ -1390,7 +1390,7 @@ get_menu_name(expand_T *xp UNUSED, int idx)
static int should_advance = FALSE; static int should_advance = FALSE;
#endif #endif
if (idx == 0) /* first call: start at first item */ if (idx == 0) // first call: start at first item
{ {
menu = expand_menu; menu = expand_menu;
did_alt_menu = FALSE; did_alt_menu = FALSE;
@@ -1399,7 +1399,7 @@ get_menu_name(expand_T *xp UNUSED, int idx)
#endif #endif
} }
/* Skip PopUp[nvoci]. */ // Skip PopUp[nvoci].
while (menu != NULL && (menu_is_hidden(menu->dname) while (menu != NULL && (menu_is_hidden(menu->dname)
|| menu_is_separator(menu->dname) || menu_is_separator(menu->dname)
|| menu_is_tearoff(menu->dname) || menu_is_tearoff(menu->dname)
@@ -1413,7 +1413,7 @@ get_menu_name(expand_T *xp UNUSED, int idx)
} }
} }
if (menu == NULL) /* at end of linked list */ if (menu == NULL) // at end of linked list
return NULL; return NULL;
if (menu->modes & expand_modes) if (menu->modes & expand_modes)
@@ -1436,7 +1436,7 @@ get_menu_name(expand_T *xp UNUSED, int idx)
if (should_advance) if (should_advance)
#endif #endif
{ {
/* Advance to next menu entry. */ // Advance to next menu entry.
menu = menu->next; menu = menu->next;
if (menu == NULL && !did_alt_menu) if (menu == NULL && !did_alt_menu)
{ {
@@ -1462,13 +1462,13 @@ get_menu_names(expand_T *xp UNUSED, int idx)
static vimmenu_T *menu = NULL; static vimmenu_T *menu = NULL;
static int did_alt_menu = FALSE; static int did_alt_menu = FALSE;
#define TBUFFER_LEN 256 #define TBUFFER_LEN 256
static char_u tbuffer[TBUFFER_LEN]; /*hack*/ static char_u tbuffer[TBUFFER_LEN]; //hack
char_u *str; char_u *str;
#ifdef FEAT_MULTI_LANG #ifdef FEAT_MULTI_LANG
static int should_advance = FALSE; static int should_advance = FALSE;
#endif #endif
if (idx == 0) /* first call: start at first item */ if (idx == 0) // first call: start at first item
{ {
menu = expand_menu; menu = expand_menu;
did_alt_menu = FALSE; did_alt_menu = FALSE;
@@ -1477,7 +1477,7 @@ get_menu_names(expand_T *xp UNUSED, int idx)
#endif #endif
} }
/* Skip Browse-style entries, popup menus and separators. */ // Skip Browse-style entries, popup menus and separators.
while (menu != NULL while (menu != NULL
&& ( menu_is_hidden(menu->dname) && ( menu_is_hidden(menu->dname)
|| (expand_emenu && menu_is_separator(menu->dname)) || (expand_emenu && menu_is_separator(menu->dname))
@@ -1495,7 +1495,7 @@ get_menu_names(expand_T *xp UNUSED, int idx)
} }
} }
if (menu == NULL) /* at end of linked list */ if (menu == NULL) // at end of linked list
return NULL; return NULL;
if (menu->modes & expand_modes) if (menu->modes & expand_modes)
@@ -1514,8 +1514,8 @@ get_menu_names(expand_T *xp UNUSED, int idx)
should_advance = TRUE; should_advance = TRUE;
} }
#endif #endif
/* hack on menu separators: use a 'magic' char for the separator // hack on menu separators: use a 'magic' char for the separator
* so that '.' in names gets escaped properly */ // so that '.' in names gets escaped properly
STRCAT(tbuffer, "\001"); STRCAT(tbuffer, "\001");
str = tbuffer; str = tbuffer;
} }
@@ -1542,7 +1542,7 @@ get_menu_names(expand_T *xp UNUSED, int idx)
if (should_advance) if (should_advance)
#endif #endif
{ {
/* Advance to next menu entry. */ // Advance to next menu entry.
menu = menu->next; menu = menu->next;
if (menu == NULL && !did_alt_menu) if (menu == NULL && !did_alt_menu)
{ {
@@ -1621,7 +1621,7 @@ menu_namecmp(char_u *name, char_u *mname)
static int static int
get_menu_cmd_modes( get_menu_cmd_modes(
char_u *cmd, char_u *cmd,
int forceit, /* Was there a "!" after the command? */ int forceit, // Was there a "!" after the command?
int *noremap, int *noremap,
int *unmenu) int *unmenu)
{ {
@@ -1629,50 +1629,50 @@ get_menu_cmd_modes(
switch (*cmd++) switch (*cmd++)
{ {
case 'v': /* vmenu, vunmenu, vnoremenu */ case 'v': // vmenu, vunmenu, vnoremenu
modes = MENU_VISUAL_MODE | MENU_SELECT_MODE; modes = MENU_VISUAL_MODE | MENU_SELECT_MODE;
break; break;
case 'x': /* xmenu, xunmenu, xnoremenu */ case 'x': // xmenu, xunmenu, xnoremenu
modes = MENU_VISUAL_MODE; modes = MENU_VISUAL_MODE;
break; break;
case 's': /* smenu, sunmenu, snoremenu */ case 's': // smenu, sunmenu, snoremenu
modes = MENU_SELECT_MODE; modes = MENU_SELECT_MODE;
break; break;
case 'o': /* omenu */ case 'o': // omenu
modes = MENU_OP_PENDING_MODE; modes = MENU_OP_PENDING_MODE;
break; break;
case 'i': /* imenu */ case 'i': // imenu
modes = MENU_INSERT_MODE; modes = MENU_INSERT_MODE;
break; break;
case 't': case 't':
if (*cmd == 'l') /* tlmenu, tlunmenu, tlnoremenu */ if (*cmd == 'l') // tlmenu, tlunmenu, tlnoremenu
{ {
modes = MENU_TERMINAL_MODE; modes = MENU_TERMINAL_MODE;
++cmd; ++cmd;
break; break;
} }
modes = MENU_TIP_MODE; /* tmenu */ modes = MENU_TIP_MODE; // tmenu
break; break;
case 'c': /* cmenu */ case 'c': // cmenu
modes = MENU_CMDLINE_MODE; modes = MENU_CMDLINE_MODE;
break; break;
case 'a': /* amenu */ case 'a': // amenu
modes = MENU_INSERT_MODE | MENU_CMDLINE_MODE | MENU_NORMAL_MODE modes = MENU_INSERT_MODE | MENU_CMDLINE_MODE | MENU_NORMAL_MODE
| MENU_VISUAL_MODE | MENU_SELECT_MODE | MENU_VISUAL_MODE | MENU_SELECT_MODE
| MENU_OP_PENDING_MODE; | MENU_OP_PENDING_MODE;
break; break;
case 'n': case 'n':
if (*cmd != 'o') /* nmenu, not noremenu */ if (*cmd != 'o') // nmenu, not noremenu
{ {
modes = MENU_NORMAL_MODE; modes = MENU_NORMAL_MODE;
break; break;
} }
/* FALLTHROUGH */ // FALLTHROUGH
default: default:
--cmd; --cmd;
if (forceit) /* menu!! */ if (forceit) // menu!!
modes = MENU_INSERT_MODE | MENU_CMDLINE_MODE; modes = MENU_INSERT_MODE | MENU_CMDLINE_MODE;
else /* menu */ else // menu
modes = MENU_NORMAL_MODE | MENU_VISUAL_MODE | MENU_SELECT_MODE modes = MENU_NORMAL_MODE | MENU_VISUAL_MODE | MENU_SELECT_MODE
| MENU_OP_PENDING_MODE; | MENU_OP_PENDING_MODE;
} }
@@ -1761,7 +1761,7 @@ menu_text(char_u *str, int *mnemonic, char_u **actext)
char_u *p; char_u *p;
char_u *text; char_u *text;
/* Locate accelerator text, after the first TAB */ // Locate accelerator text, after the first TAB
p = vim_strchr(str, TAB); p = vim_strchr(str, TAB);
if (p != NULL) if (p != NULL)
{ {
@@ -1772,13 +1772,13 @@ menu_text(char_u *str, int *mnemonic, char_u **actext)
else else
text = vim_strsave(str); text = vim_strsave(str);
/* Find mnemonic characters "&a" and reduce "&&" to "&". */ // Find mnemonic characters "&a" and reduce "&&" to "&".
for (p = text; p != NULL; ) for (p = text; p != NULL; )
{ {
p = vim_strchr(p, '&'); p = vim_strchr(p, '&');
if (p != NULL) if (p != NULL)
{ {
if (p[1] == NUL) /* trailing "&" */ if (p[1] == NUL) // trailing "&"
break; break;
if (mnemonic != NULL && p[1] != '&') if (mnemonic != NULL && p[1] != '&')
#if !defined(__MVS__) || defined(MOTIF390_MNEMONIC_FIXED) #if !defined(__MVS__) || defined(MOTIF390_MNEMONIC_FIXED)
@@ -1901,7 +1901,7 @@ get_menu_mode(void)
return MENU_INDEX_OP_PENDING; return MENU_INDEX_OP_PENDING;
if (State & NORMAL) if (State & NORMAL)
return MENU_INDEX_NORMAL; return MENU_INDEX_NORMAL;
if (State & LANGMAP) /* must be a "r" command, like Insert mode */ if (State & LANGMAP) // must be a "r" command, like Insert mode
return MENU_INDEX_INSERT; return MENU_INDEX_INSERT;
return MENU_INDEX_INVALID; return MENU_INDEX_INVALID;
} }
@@ -1941,14 +1941,14 @@ show_popupmenu(void)
if (STRNCMP("PopUp", menu->name, 5) == 0 && STRNCMP(menu->name + 5, mode, mode_len) == 0) if (STRNCMP("PopUp", menu->name, 5) == 0 && STRNCMP(menu->name + 5, mode, mode_len) == 0)
break; break;
/* Only show a popup when it is defined and has entries */ // Only show a popup when it is defined and has entries
if (menu != NULL && menu->children != NULL) if (menu != NULL && menu->children != NULL)
{ {
# if defined(FEAT_GUI) # if defined(FEAT_GUI)
if (gui.in_use) if (gui.in_use)
{ {
/* Update the menus now, in case the MenuPopup autocommand did // Update the menus now, in case the MenuPopup autocommand did
* anything. */ // anything.
gui_update_menus(0); gui_update_menus(0);
gui_mch_show_popupmenu(menu); gui_mch_show_popupmenu(menu);
} }
@@ -1998,7 +1998,7 @@ gui_create_initial_menus(vimmenu_T *menu)
while (menu != NULL) while (menu != NULL)
{ {
/* Don't add a menu when only a tip was defined. */ // Don't add a menu when only a tip was defined.
if (menu->modes & MENU_ALL_MODES) if (menu->modes & MENU_ALL_MODES)
{ {
if (menu->children != NULL) if (menu->children != NULL)
@@ -2033,11 +2033,11 @@ gui_update_menus_recurse(vimmenu_T *menu, int mode)
else else
grey = TRUE; grey = TRUE;
# ifdef FEAT_GUI_ATHENA # ifdef FEAT_GUI_ATHENA
/* Hiding menus doesn't work for Athena, it can cause a crash. */ // Hiding menus doesn't work for Athena, it can cause a crash.
gui_mch_menu_grey(menu, grey); gui_mch_menu_grey(menu, grey);
# else # else
/* Never hide a toplevel menu, it may make the menubar resize or // Never hide a toplevel menu, it may make the menubar resize or
* disappear. Same problem for ToolBar items. */ // disappear. Same problem for ToolBar items.
if (vim_strchr(p_go, GO_GREY) != NULL || menu->parent == NULL if (vim_strchr(p_go, GO_GREY) != NULL || menu->parent == NULL
# ifdef FEAT_TOOLBAR # ifdef FEAT_TOOLBAR
|| menu_is_toolbar(menu->parent->name) || menu_is_toolbar(menu->parent->name)
@@ -2097,7 +2097,7 @@ gui_is_menu_shortcut(int key)
return FALSE; return FALSE;
} }
# endif # endif
#endif /* FEAT_GUI */ #endif // FEAT_GUI
#if (defined(FEAT_GUI_MSWIN) && defined(FEAT_TEAROFF)) || defined(PROTO) #if (defined(FEAT_GUI_MSWIN) && defined(FEAT_TEAROFF)) || defined(PROTO)
@@ -2145,8 +2145,8 @@ gui_create_tearoffs_recurse(
{ {
if (menu->children != NULL && menu_is_menubar(menu->name)) if (menu->children != NULL && menu_is_menubar(menu->name))
{ {
/* Add the menu name to the menu path. Insert a backslash before // Add the menu name to the menu path. Insert a backslash before
* dots (it's used to separate menu names). */ // dots (it's used to separate menu names).
len = (int)STRLEN(pname) + (int)STRLEN(menu->name); len = (int)STRLEN(pname) + (int)STRLEN(menu->name);
for (s = menu->name; *s; ++s) for (s = menu->name; *s; ++s)
if (*s == '.' || *s == '\\') if (*s == '.' || *s == '\\')
@@ -2164,11 +2164,11 @@ gui_create_tearoffs_recurse(
} }
*d = NUL; *d = NUL;
/* check if tearoff already exists */ // check if tearoff already exists
if (STRCMP(menu->children->name, TEAR_STRING) != 0) if (STRCMP(menu->children->name, TEAR_STRING) != 0)
{ {
gui_add_tearoff(newpname, pri_tab, pri_idx - 1); gui_add_tearoff(newpname, pri_tab, pri_idx - 1);
*d = NUL; /* remove TEAR_STRING */ *d = NUL; // remove TEAR_STRING
} }
STRCAT(newpname, "."); STRCAT(newpname, ".");
@@ -2204,7 +2204,7 @@ gui_add_tearoff(char_u *tearpath, int *pri_tab, int pri_idx)
STRCAT(tearpath, "."); STRCAT(tearpath, ".");
STRCAT(tearpath, TEAR_STRING); STRCAT(tearpath, TEAR_STRING);
/* Priority of tear-off is always 1 */ // Priority of tear-off is always 1
t = pri_tab[pri_idx + 1]; t = pri_tab[pri_idx + 1];
pri_tab[pri_idx + 1] = 1; pri_tab[pri_idx + 1] = 1;
@@ -2238,20 +2238,20 @@ gui_destroy_tearoffs_recurse(vimmenu_T *menu)
{ {
if (menu->children) if (menu->children)
{ {
/* check if tearoff exists */ // check if tearoff exists
if (STRCMP(menu->children->name, TEAR_STRING) == 0) if (STRCMP(menu->children->name, TEAR_STRING) == 0)
{ {
/* Disconnect the item and free the memory */ // Disconnect the item and free the memory
free_menu(&menu->children); free_menu(&menu->children);
} }
if (menu->children != NULL) /* if not the last one */ if (menu->children != NULL) // if not the last one
gui_destroy_tearoffs_recurse(menu->children); gui_destroy_tearoffs_recurse(menu->children);
} }
menu = menu->next; menu = menu->next;
} }
} }
#endif /* FEAT_GUI_MSWIN && FEAT_TEAROFF */ #endif // FEAT_GUI_MSWIN && FEAT_TEAROFF
/* /*
* Execute "menu". Use by ":emenu" and the window toolbar. * Execute "menu". Use by ":emenu" and the window toolbar.
@@ -2266,7 +2266,7 @@ execute_menu(exarg_T *eap, vimmenu_T *menu, int mode_idx)
if (idx < 0) if (idx < 0)
{ {
/* Use the Insert mode entry when returning to Insert mode. */ // Use the Insert mode entry when returning to Insert mode.
if (restart_edit if (restart_edit
#ifdef FEAT_EVAL #ifdef FEAT_EVAL
&& !current_sctx.sc_sid && !current_sctx.sc_sid
@@ -2291,14 +2291,14 @@ execute_menu(exarg_T *eap, vimmenu_T *menu, int mode_idx)
idx = MENU_INDEX_VISUAL; idx = MENU_INDEX_VISUAL;
/* GEDDES: This is not perfect - but it is a // GEDDES: This is not perfect - but it is a
* quick way of detecting whether we are doing this from a // quick way of detecting whether we are doing this from a
* selection - see if the range matches up with the visual // selection - see if the range matches up with the visual
* select start and end. */ // select start and end.
if ((curbuf->b_visual.vi_start.lnum == eap->line1) if ((curbuf->b_visual.vi_start.lnum == eap->line1)
&& (curbuf->b_visual.vi_end.lnum) == eap->line2) && (curbuf->b_visual.vi_end.lnum) == eap->line2)
{ {
/* Set it up for visual mode - equivalent to gv. */ // Set it up for visual mode - equivalent to gv.
VIsual_mode = curbuf->b_visual.vi_mode; VIsual_mode = curbuf->b_visual.vi_mode;
tpos = curbuf->b_visual.vi_end; tpos = curbuf->b_visual.vi_end;
curwin->w_cursor = curbuf->b_visual.vi_start; curwin->w_cursor = curbuf->b_visual.vi_start;
@@ -2306,7 +2306,7 @@ execute_menu(exarg_T *eap, vimmenu_T *menu, int mode_idx)
} }
else else
{ {
/* Set it up for line-wise visual mode */ // Set it up for line-wise visual mode
VIsual_mode = 'V'; VIsual_mode = 'V';
curwin->w_cursor.lnum = eap->line1; curwin->w_cursor.lnum = eap->line1;
curwin->w_cursor.col = 1; curwin->w_cursor.col = 1;
@@ -2315,7 +2315,7 @@ execute_menu(exarg_T *eap, vimmenu_T *menu, int mode_idx)
tpos.coladd = 0; tpos.coladd = 0;
} }
/* Activate visual mode */ // Activate visual mode
VIsual_active = TRUE; VIsual_active = TRUE;
VIsual_reselect = TRUE; VIsual_reselect = TRUE;
check_cursor(); check_cursor();
@@ -2324,23 +2324,23 @@ execute_menu(exarg_T *eap, vimmenu_T *menu, int mode_idx)
check_cursor(); check_cursor();
/* Adjust the cursor to make sure it is in the correct pos // Adjust the cursor to make sure it is in the correct pos
* for exclusive mode */ // for exclusive mode
if (*p_sel == 'e' && gchar_cursor() != NUL) if (*p_sel == 'e' && gchar_cursor() != NUL)
++curwin->w_cursor.col; ++curwin->w_cursor.col;
} }
} }
/* For the WinBar menu always use the Normal mode menu. */ // For the WinBar menu always use the Normal mode menu.
if (idx == -1 || eap == NULL) if (idx == -1 || eap == NULL)
idx = MENU_INDEX_NORMAL; idx = MENU_INDEX_NORMAL;
if (idx != MENU_INDEX_INVALID && menu->strings[idx] != NULL if (idx != MENU_INDEX_INVALID && menu->strings[idx] != NULL
&& (menu->modes & (1 << idx))) && (menu->modes & (1 << idx)))
{ {
/* When executing a script or function execute the commands right now. // When executing a script or function execute the commands right now.
* Also for the window toolbar. // Also for the window toolbar.
* Otherwise put them in the typeahead buffer. */ // Otherwise put them in the typeahead buffer.
if (eap == NULL if (eap == NULL
#ifdef FEAT_EVAL #ifdef FEAT_EVAL
|| current_sctx.sc_sid != 0 || current_sctx.sc_sid != 0
@@ -2432,7 +2432,7 @@ ex_emenu(exarg_T *eap)
name = saved_name; name = saved_name;
while (*name) while (*name)
{ {
/* Find in the menu hierarchy */ // Find in the menu hierarchy
p = menu_name_skip(name); p = menu_name_skip(name);
while (menu != NULL) while (menu != NULL)
@@ -2496,8 +2496,8 @@ winbar_click(win_T *wp, int col)
if (wp != curwin) if (wp != curwin)
{ {
/* Clicking in the window toolbar of a not-current window. // Clicking in the window toolbar of a not-current window.
* Make that window the current one and save Visual mode. */ // Make that window the current one and save Visual mode.
save_curwin = curwin; save_curwin = curwin;
VIsual_active = FALSE; VIsual_active = FALSE;
curwin = wp; curwin = wp;
@@ -2547,7 +2547,7 @@ gui_find_menu(char_u *path_name)
name = saved_name; name = saved_name;
while (*name) while (*name)
{ {
/* find the end of one dot-separated name and put a NUL at the dot */ // find the end of one dot-separated name and put a NUL at the dot
p = menu_name_skip(name); p = menu_name_skip(name);
while (menu != NULL) while (menu != NULL)
@@ -2556,7 +2556,7 @@ gui_find_menu(char_u *path_name)
{ {
if (menu->children == NULL) if (menu->children == NULL)
{ {
/* found a menu item instead of a sub-menu */ // found a menu item instead of a sub-menu
if (*p == NUL) if (*p == NUL)
emsg(_("E336: Menu path must lead to a sub-menu")); emsg(_("E336: Menu path must lead to a sub-menu"));
else else
@@ -2564,16 +2564,16 @@ gui_find_menu(char_u *path_name)
menu = NULL; menu = NULL;
goto theend; goto theend;
} }
if (*p == NUL) /* found a full match */ if (*p == NUL) // found a full match
goto theend; goto theend;
break; break;
} }
menu = menu->next; menu = menu->next;
} }
if (menu == NULL) /* didn't find it */ if (menu == NULL) // didn't find it
break; break;
/* Found a match, search the sub-menu. */ // Found a match, search the sub-menu.
menu = menu->children; menu = menu->children;
name = p; name = p;
} }
@@ -2593,9 +2593,9 @@ theend:
typedef struct typedef struct
{ {
char_u *from; /* English name */ char_u *from; // English name
char_u *from_noamp; /* same, without '&' */ char_u *from_noamp; // same, without '&'
char_u *to; /* translated name */ char_u *to; // translated name
} menutrans_T; } menutrans_T;
static garray_T menutrans_ga = {0, 0, 0, 0, NULL}; static garray_T menutrans_ga = {0, 0, 0, 0, NULL};
@@ -2632,13 +2632,13 @@ ex_menutranslate(exarg_T *eap UNUSED)
} }
ga_clear(&menutrans_ga); ga_clear(&menutrans_ga);
# ifdef FEAT_EVAL # ifdef FEAT_EVAL
/* Delete all "menutrans_" global variables. */ // Delete all "menutrans_" global variables.
del_menutrans_vars(); del_menutrans_vars();
# endif # endif
} }
else else
{ {
/* ":menutrans from to": add translation */ // ":menutrans from to": add translation
from = arg; from = arg;
arg = menu_skip_part(arg); arg = menu_skip_part(arg);
to = skipwhite(arg); to = skipwhite(arg);
@@ -2713,7 +2713,7 @@ menutrans_lookup(char_u *name, int len)
if (STRNICMP(name, tp[i].from, len) == 0 && tp[i].from[len] == NUL) if (STRNICMP(name, tp[i].from, len) == 0 && tp[i].from[len] == NUL)
return tp[i].to; return tp[i].to;
/* Now try again while ignoring '&' characters. */ // Now try again while ignoring '&' characters.
i = name[len]; i = name[len];
name[len] = NUL; name[len] = NUL;
dname = menu_text(name, NULL, NULL); dname = menu_text(name, NULL, NULL);
@@ -2744,7 +2744,7 @@ menu_unescape_name(char_u *name)
if (*p == '\\') if (*p == '\\')
STRMOVE(p, p + 1); STRMOVE(p, p + 1);
} }
#endif /* FEAT_MULTI_LANG */ #endif // FEAT_MULTI_LANG
/* /*
* Isolate the menu name. * Isolate the menu name.
@@ -2773,4 +2773,4 @@ menu_translate_tab_and_shift(char_u *arg_start)
return arg; return arg;
} }
#endif /* FEAT_MENU */ #endif // FEAT_MENU

View File

@@ -742,6 +742,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
2388,
/**/ /**/
2387, 2387,
/**/ /**/