mirror of
git://git.sv.gnu.org/nano.git
synced 2024-12-24 19:36:52 +03:00
per DB's patch, convert placewewant to a size_t; also add a few
miscellaneous fixes of mine git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@1870 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
This commit is contained in:
parent
2d140c2980
commit
86e851b4e7
14
ChangeLog
14
ChangeLog
@ -3,8 +3,9 @@ CVS code -
|
|||||||
- More minor comment cleanups. (DLR)
|
- More minor comment cleanups. (DLR)
|
||||||
- Convert more ints used as boolean values to use TRUE and
|
- Convert more ints used as boolean values to use TRUE and
|
||||||
FALSE. (David Benbennick and DLR)
|
FALSE. (David Benbennick and DLR)
|
||||||
- Change more instances of ints that can never be negative to
|
- Change more instances of ints that have large enough upper
|
||||||
size_t's. (DLR)
|
bounds and which can never be negative to size_t's, and
|
||||||
|
convert nano to handle them properly. (DLR)
|
||||||
- Convert the shortcut list functions and most related functions
|
- Convert the shortcut list functions and most related functions
|
||||||
to return void instead of int, as the return values of all
|
to return void instead of int, as the return values of all
|
||||||
those functions are essentially unused. Changes to
|
those functions are essentially unused. Changes to
|
||||||
@ -48,6 +49,9 @@ CVS code -
|
|||||||
- Move the main terminal initialization functions, aside from
|
- Move the main terminal initialization functions, aside from
|
||||||
initscr(), into a new terminal_init() function, and convert
|
initscr(), into a new terminal_init() function, and convert
|
||||||
nano to use it. (DLR)
|
nano to use it. (DLR)
|
||||||
|
- Convert placewewant to a size_t, and convert some functions
|
||||||
|
that use it as a parameter to use size_t as well. (David
|
||||||
|
Benbennick and DLR)
|
||||||
- files.c:
|
- files.c:
|
||||||
close_open_file()
|
close_open_file()
|
||||||
- Tweak to no longer rely on the return values of
|
- Tweak to no longer rely on the return values of
|
||||||
@ -127,6 +131,9 @@ CVS code -
|
|||||||
Benbennick) DLR: Renamed from parse_int() to parse_num() and
|
Benbennick) DLR: Renamed from parse_int() to parse_num() and
|
||||||
converted to use ssize_t instead of int.
|
converted to use ssize_t instead of int.
|
||||||
- winio.c:
|
- winio.c:
|
||||||
|
get_kbinput()
|
||||||
|
- Since the only valid values for escapes are 0, 1, and 2,
|
||||||
|
convert it to an int. (DLR)
|
||||||
get_control_kbinput()
|
get_control_kbinput()
|
||||||
- Fix erroneous debugging statement so that nano compiles with
|
- Fix erroneous debugging statement so that nano compiles with
|
||||||
--enable-debug again. (Jon Oberheide)
|
--enable-debug again. (Jon Oberheide)
|
||||||
@ -136,6 +143,9 @@ CVS code -
|
|||||||
before then too. (David Benbennick)
|
before then too. (David Benbennick)
|
||||||
- Don't delete the statusbar line on UnCut, since the current
|
- Don't delete the statusbar line on UnCut, since the current
|
||||||
version of Pico doesn't. (DLR)
|
version of Pico doesn't. (DLR)
|
||||||
|
do_cursorpos()
|
||||||
|
- Add assert to check whether totsize is correct. (David
|
||||||
|
Benbennick)
|
||||||
line_len()
|
line_len()
|
||||||
- Rename to help_line_len() so as not to conflict with the
|
- Rename to help_line_len() so as not to conflict with the
|
||||||
line_len variable used elsewhere, and move inside the
|
line_len variable used elsewhere, and move inside the
|
||||||
|
@ -91,7 +91,7 @@ int resetstatuspos; /* Hack for resetting the status bar
|
|||||||
char *answer = NULL; /* Answer str to many questions */
|
char *answer = NULL; /* Answer str to many questions */
|
||||||
int totlines = 0; /* Total number of lines in the file */
|
int totlines = 0; /* Total number of lines in the file */
|
||||||
long totsize = 0; /* Total number of bytes in the file */
|
long totsize = 0; /* Total number of bytes in the file */
|
||||||
int placewewant = 0; /* The column we'd like the cursor
|
size_t placewewant = 0; /* The column we'd like the cursor
|
||||||
to jump to when we go to the
|
to jump to when we go to the
|
||||||
next or previous line */
|
next or previous line */
|
||||||
|
|
||||||
|
16
src/move.c
16
src/move.c
@ -30,7 +30,7 @@
|
|||||||
|
|
||||||
void do_first_line(void)
|
void do_first_line(void)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant;
|
size_t old_pww = placewewant;
|
||||||
current = fileage;
|
current = fileage;
|
||||||
placewewant = 0;
|
placewewant = 0;
|
||||||
current_x = 0;
|
current_x = 0;
|
||||||
@ -40,7 +40,7 @@ void do_first_line(void)
|
|||||||
|
|
||||||
void do_last_line(void)
|
void do_last_line(void)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant;
|
size_t old_pww = placewewant;
|
||||||
current = filebot;
|
current = filebot;
|
||||||
placewewant = 0;
|
placewewant = 0;
|
||||||
current_x = 0;
|
current_x = 0;
|
||||||
@ -51,7 +51,7 @@ void do_last_line(void)
|
|||||||
|
|
||||||
void do_home(void)
|
void do_home(void)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant;
|
size_t old_pww = placewewant;
|
||||||
#ifndef NANO_SMALL
|
#ifndef NANO_SMALL
|
||||||
if (ISSET(SMART_HOME)) {
|
if (ISSET(SMART_HOME)) {
|
||||||
int old_current_x = current_x;
|
int old_current_x = current_x;
|
||||||
@ -78,7 +78,7 @@ void do_home(void)
|
|||||||
|
|
||||||
void do_end(void)
|
void do_end(void)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant;
|
size_t old_pww = placewewant;
|
||||||
current_x = strlen(current->data);
|
current_x = strlen(current->data);
|
||||||
placewewant = xplustabs();
|
placewewant = xplustabs();
|
||||||
check_statblank();
|
check_statblank();
|
||||||
@ -88,7 +88,7 @@ void do_end(void)
|
|||||||
|
|
||||||
void do_page_up(void)
|
void do_page_up(void)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant;
|
size_t old_pww = placewewant;
|
||||||
const filestruct *old_current = current;
|
const filestruct *old_current = current;
|
||||||
#ifndef DISABLE_WRAPPING
|
#ifndef DISABLE_WRAPPING
|
||||||
wrap_reset();
|
wrap_reset();
|
||||||
@ -134,7 +134,7 @@ void do_page_up(void)
|
|||||||
|
|
||||||
void do_page_down(void)
|
void do_page_down(void)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant;
|
size_t old_pww = placewewant;
|
||||||
const filestruct *old_current = current;
|
const filestruct *old_current = current;
|
||||||
#ifndef DISABLE_WRAPPING
|
#ifndef DISABLE_WRAPPING
|
||||||
wrap_reset();
|
wrap_reset();
|
||||||
@ -247,7 +247,7 @@ void do_down(void)
|
|||||||
|
|
||||||
void do_left(int allow_update)
|
void do_left(int allow_update)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant;
|
size_t old_pww = placewewant;
|
||||||
if (current_x > 0)
|
if (current_x > 0)
|
||||||
current_x--;
|
current_x--;
|
||||||
else if (current != fileage) {
|
else if (current != fileage) {
|
||||||
@ -267,7 +267,7 @@ void do_left_void(void)
|
|||||||
|
|
||||||
void do_right(int allow_update)
|
void do_right(int allow_update)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant;
|
size_t old_pww = placewewant;
|
||||||
assert(current_x <= strlen(current->data));
|
assert(current_x <= strlen(current->data));
|
||||||
|
|
||||||
if (current->data[current_x] != '\0')
|
if (current->data[current_x] != '\0')
|
||||||
|
@ -1158,13 +1158,13 @@ void do_enter(void)
|
|||||||
#ifndef NANO_SMALL
|
#ifndef NANO_SMALL
|
||||||
void do_next_word(void)
|
void do_next_word(void)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant;
|
size_t old_pww = placewewant;
|
||||||
const filestruct *current_save = current;
|
const filestruct *current_save = current;
|
||||||
assert(current != NULL && current->data != NULL);
|
assert(current != NULL && current->data != NULL);
|
||||||
|
|
||||||
/* Skip letters in this word first. */
|
/* Skip letters in this word first. */
|
||||||
while (current->data[current_x] != '\0' &&
|
while (current->data[current_x] != '\0' &&
|
||||||
isalnum((int)current->data[current_x]))
|
isalnum((int)current->data[current_x]))
|
||||||
current_x++;
|
current_x++;
|
||||||
|
|
||||||
for (; current != NULL; current = current->next) {
|
for (; current != NULL; current = current->next) {
|
||||||
@ -1190,7 +1190,7 @@ void do_next_word(void)
|
|||||||
/* The same thing for backwards. */
|
/* The same thing for backwards. */
|
||||||
void do_prev_word(void)
|
void do_prev_word(void)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant;
|
size_t old_pww = placewewant;
|
||||||
const filestruct *current_save = current;
|
const filestruct *current_save = current;
|
||||||
assert(current != NULL && current->data != NULL);
|
assert(current != NULL && current->data != NULL);
|
||||||
|
|
||||||
|
@ -166,7 +166,7 @@ typedef struct openfilestruct {
|
|||||||
long file_flags; /* Current file's flags: modification
|
long file_flags; /* Current file's flags: modification
|
||||||
* status (and marking status, if
|
* status (and marking status, if
|
||||||
* available). */
|
* available). */
|
||||||
int file_placewewant; /* Current file's place we want. */
|
size_t file_placewewant; /* Current file's place we want. */
|
||||||
int file_totlines; /* Current file's total number of
|
int file_totlines; /* Current file's total number of
|
||||||
* lines. */
|
* lines. */
|
||||||
long file_totsize; /* Current file's total size. */
|
long file_totsize; /* Current file's total size. */
|
||||||
|
10
src/proto.h
10
src/proto.h
@ -33,7 +33,7 @@ extern ssize_t wrap_at;
|
|||||||
#endif
|
#endif
|
||||||
extern int editwinrows;
|
extern int editwinrows;
|
||||||
extern int current_x, current_y, totlines;
|
extern int current_x, current_y, totlines;
|
||||||
extern int placewewant;
|
extern size_t placewewant;
|
||||||
#ifndef NANO_SMALL
|
#ifndef NANO_SMALL
|
||||||
extern int mark_beginx;
|
extern int mark_beginx;
|
||||||
#endif
|
#endif
|
||||||
@ -406,7 +406,7 @@ void do_replace(void);
|
|||||||
void do_gotoline(ssize_t line, int save_pos);
|
void do_gotoline(ssize_t line, int save_pos);
|
||||||
void do_gotoline_void(void);
|
void do_gotoline_void(void);
|
||||||
#if defined (ENABLE_MULTIBUFFER) || !defined (DISABLE_SPELLER)
|
#if defined (ENABLE_MULTIBUFFER) || !defined (DISABLE_SPELLER)
|
||||||
void do_gotopos(int line, int pos_x, int pos_y, int pos_placewewant);
|
void do_gotopos(int line, int pos_x, int pos_y, size_t pos_pww);
|
||||||
#endif
|
#endif
|
||||||
void do_find_bracket(void);
|
void do_find_bracket(void);
|
||||||
#ifndef NANO_SMALL
|
#ifndef NANO_SMALL
|
||||||
@ -539,10 +539,10 @@ void reset_cursor(void);
|
|||||||
void edit_add(const filestruct *fileptr, const char *converted, int
|
void edit_add(const filestruct *fileptr, const char *converted, int
|
||||||
yval, size_t start);
|
yval, size_t start);
|
||||||
void update_line(const filestruct *fileptr, size_t index);
|
void update_line(const filestruct *fileptr, size_t index);
|
||||||
int need_horizontal_update(int old_placewewant);
|
int need_horizontal_update(size_t old_pww);
|
||||||
int need_vertical_update(int old_placewewant);
|
int need_vertical_update(size_t old_pww);
|
||||||
void edit_scroll(updown direction, int nlines);
|
void edit_scroll(updown direction, int nlines);
|
||||||
void edit_redraw(const filestruct *old_current, int old_pww);
|
void edit_redraw(const filestruct *old_current, size_t old_pww);
|
||||||
void edit_refresh(void);
|
void edit_refresh(void);
|
||||||
void edit_update(filestruct *fileptr, topmidnone location);
|
void edit_update(filestruct *fileptr, topmidnone location);
|
||||||
int statusq(int allowtabs, const shortcut *s, const char *def,
|
int statusq(int allowtabs, const shortcut *s, const char *def,
|
||||||
|
16
src/search.c
16
src/search.c
@ -359,8 +359,8 @@ int findnextstr(int can_display_wrap, int wholeword, const filestruct
|
|||||||
/* Search for a string. */
|
/* Search for a string. */
|
||||||
void do_search(void)
|
void do_search(void)
|
||||||
{
|
{
|
||||||
size_t old_pww = placewewant, i, fileptr_x = current_x;
|
size_t old_pww = placewewant, fileptr_x = current_x;
|
||||||
int didfind;
|
int i, didfind;
|
||||||
filestruct *fileptr = current;
|
filestruct *fileptr = current;
|
||||||
|
|
||||||
#ifndef DISABLE_WRAPPING
|
#ifndef DISABLE_WRAPPING
|
||||||
@ -588,8 +588,8 @@ char *replace_line(const char *needle)
|
|||||||
int do_replace_loop(const char *needle, const filestruct *real_current,
|
int do_replace_loop(const char *needle, const filestruct *real_current,
|
||||||
size_t *real_current_x, int wholewords)
|
size_t *real_current_x, int wholewords)
|
||||||
{
|
{
|
||||||
int old_pww = placewewant, replaceall = FALSE, numreplaced = -1;
|
int replaceall = FALSE, numreplaced = -1;
|
||||||
size_t current_x_save = current_x;
|
size_t old_pww = placewewant, current_x_save = current_x;
|
||||||
const filestruct *current_save = current;
|
const filestruct *current_save = current;
|
||||||
#ifdef HAVE_REGEX_H
|
#ifdef HAVE_REGEX_H
|
||||||
/* The starting-line match and bol/eol regex flags. */
|
/* The starting-line match and bol/eol regex flags. */
|
||||||
@ -880,7 +880,7 @@ void do_gotoline_void(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#if defined(ENABLE_MULTIBUFFER) || !defined(DISABLE_SPELLER)
|
#if defined(ENABLE_MULTIBUFFER) || !defined(DISABLE_SPELLER)
|
||||||
void do_gotopos(int line, int pos_x, int pos_y, int pos_placewewant)
|
void do_gotopos(int line, int pos_x, int pos_y, size_t pos_pww)
|
||||||
{
|
{
|
||||||
/* since do_gotoline() resets the x-coordinate but not the
|
/* since do_gotoline() resets the x-coordinate but not the
|
||||||
y-coordinate, set the coordinates up this way */
|
y-coordinate, set the coordinates up this way */
|
||||||
@ -893,7 +893,7 @@ void do_gotopos(int line, int pos_x, int pos_y, int pos_placewewant)
|
|||||||
|
|
||||||
/* set the rest of the coordinates up */
|
/* set the rest of the coordinates up */
|
||||||
current_x = pos_x;
|
current_x = pos_x;
|
||||||
placewewant = pos_placewewant;
|
placewewant = pos_pww;
|
||||||
update_line(current, pos_x);
|
update_line(current, pos_x);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
@ -904,7 +904,8 @@ void do_find_bracket(void)
|
|||||||
char ch_under_cursor, wanted_ch;
|
char ch_under_cursor, wanted_ch;
|
||||||
const char *pos, *brackets = "([{<>}])";
|
const char *pos, *brackets = "([{<>}])";
|
||||||
char regexp_pat[] = "[ ]";
|
char regexp_pat[] = "[ ]";
|
||||||
int old_pww = placewewant, current_x_save, count = 1;
|
size_t old_pww, current_x_save;
|
||||||
|
int count = 1;
|
||||||
long flags_save;
|
long flags_save;
|
||||||
filestruct *current_save;
|
filestruct *current_save;
|
||||||
|
|
||||||
@ -919,6 +920,7 @@ void do_find_bracket(void)
|
|||||||
assert(strlen(brackets) % 2 == 0);
|
assert(strlen(brackets) % 2 == 0);
|
||||||
wanted_ch = brackets[(strlen(brackets) - 1) - (pos - brackets)];
|
wanted_ch = brackets[(strlen(brackets) - 1) - (pos - brackets)];
|
||||||
|
|
||||||
|
old_pww = placewewant;
|
||||||
current_x_save = current_x;
|
current_x_save = current_x;
|
||||||
current_save = current;
|
current_save = current;
|
||||||
flags_save = flags;
|
flags_save = flags;
|
||||||
|
37
src/winio.c
37
src/winio.c
@ -193,7 +193,8 @@ int get_translated_kbinput(int kbinput, int *es
|
|||||||
#endif
|
#endif
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
static size_t escapes = 0, ascii_digits = 0;
|
static int escapes = 0;
|
||||||
|
static size_t ascii_digits = 0;
|
||||||
int retval = ERR;
|
int retval = ERR;
|
||||||
|
|
||||||
#ifndef NANO_SMALL
|
#ifndef NANO_SMALL
|
||||||
@ -413,9 +414,9 @@ int get_translated_kbinput(int kbinput, int *es
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
fprintf(stderr, "get_translated_kbinput(): kbinput = %d, es = %d, escapes = %d, ascii_digits = %d, retval = %d\n", kbinput, *es, escapes, ascii_digits, retval);
|
fprintf(stderr, "get_translated_kbinput(): kbinput = %d, es = %d, escapes = %d, ascii_digits = %lu, retval = %d\n", kbinput, *es, escapes, (unsigned long)ascii_digits, retval);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Return the result. */
|
/* Return the result. */
|
||||||
@ -511,7 +512,7 @@ int get_ascii_kbinput(int kbinput, size_t ascii_digits
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
fprintf(stderr, "get_ascii_kbinput(): kbinput = %d, ascii_digits = %d, ascii_kbinput = %d, retval = %d\n", kbinput, ascii_digits, ascii_kbinput, retval);
|
fprintf(stderr, "get_ascii_kbinput(): kbinput = %d, ascii_digits = %lu, ascii_kbinput = %d, retval = %d\n", kbinput, (unsigned long)ascii_digits, ascii_kbinput, retval);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* If the result is an ASCII character, reset the ASCII character
|
/* If the result is an ASCII character, reset the ASCII character
|
||||||
@ -1096,7 +1097,7 @@ int *get_verbatim_kbinput(WINDOW *win, int *v_kbinput, size_t *v_len,
|
|||||||
(*v_len)++;
|
(*v_len)++;
|
||||||
v_kbinput[0] = kbinput;
|
v_kbinput[0] = kbinput;
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
fprintf(stderr, "get_verbatim_kbinput(): kbinput = %d, v_len = %d\n", kbinput, *v_len);
|
fprintf(stderr, "get_verbatim_kbinput(): kbinput = %d, v_len = %lu\n", kbinput, (unsigned long)*v_len);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/* Read any following characters using non-blocking input, until
|
/* Read any following characters using non-blocking input, until
|
||||||
@ -1111,7 +1112,7 @@ int *get_verbatim_kbinput(WINDOW *win, int *v_kbinput, size_t *v_len,
|
|||||||
v_kbinput = (int *)nrealloc(v_kbinput, *v_len * sizeof(int));
|
v_kbinput = (int *)nrealloc(v_kbinput, *v_len * sizeof(int));
|
||||||
v_kbinput[*v_len - 1] = kbinput;
|
v_kbinput[*v_len - 1] = kbinput;
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
fprintf(stderr, "get_verbatim_kbinput(): kbinput = %d, v_len = %d\n", kbinput, *v_len);
|
fprintf(stderr, "get_verbatim_kbinput(): kbinput = %d, v_len = %lu\n", kbinput, (unsigned long)*v_len);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
nodelay(win, FALSE);
|
nodelay(win, FALSE);
|
||||||
@ -1230,7 +1231,7 @@ int get_untranslated_kbinput(int kbinput, size_t position, int
|
|||||||
retval = kbinput;
|
retval = kbinput;
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
fprintf(stderr, "get_untranslated_kbinput(): kbinput = %d, position = %d, ascii_digits = %d\n", kbinput, position, ascii_digits);
|
fprintf(stderr, "get_untranslated_kbinput(): kbinput = %d, position = %lu, ascii_digits = %lu\n", kbinput, (unsigned long)position, (unsigned long)ascii_digits);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return retval;
|
return retval;
|
||||||
@ -1392,7 +1393,7 @@ void blank_titlebar(void)
|
|||||||
|
|
||||||
void blank_edit(void)
|
void blank_edit(void)
|
||||||
{
|
{
|
||||||
size_t i;
|
int i;
|
||||||
for (i = 0; i < editwinrows; i++)
|
for (i = 0; i < editwinrows; i++)
|
||||||
mvwaddstr(edit, i, 0, hblank);
|
mvwaddstr(edit, i, 0, hblank);
|
||||||
}
|
}
|
||||||
@ -2543,7 +2544,7 @@ void update_line(const filestruct *fileptr, size_t index)
|
|||||||
/* Return a nonzero value if we need an update after moving
|
/* Return a nonzero value if we need an update after moving
|
||||||
* horizontally. We need one if the mark is on or if old_pww and
|
* horizontally. We need one if the mark is on or if old_pww and
|
||||||
* placewewant are on different pages. */
|
* placewewant are on different pages. */
|
||||||
int need_horizontal_update(int old_pww)
|
int need_horizontal_update(size_t old_pww)
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
#ifndef NANO_SMALL
|
#ifndef NANO_SMALL
|
||||||
@ -2555,7 +2556,7 @@ int need_horizontal_update(int old_pww)
|
|||||||
/* Return a nonzero value if we need an update after moving vertically.
|
/* Return a nonzero value if we need an update after moving vertically.
|
||||||
* We need one if the mark is on or if old_pww and placewewant
|
* We need one if the mark is on or if old_pww and placewewant
|
||||||
* are on different pages. */
|
* are on different pages. */
|
||||||
int need_vertical_update(int old_pww)
|
int need_vertical_update(size_t old_pww)
|
||||||
{
|
{
|
||||||
return
|
return
|
||||||
#ifndef NANO_SMALL
|
#ifndef NANO_SMALL
|
||||||
@ -2630,7 +2631,7 @@ void edit_scroll(updown direction, int nlines)
|
|||||||
|
|
||||||
/* Update any lines between old_current and current that need to be
|
/* Update any lines between old_current and current that need to be
|
||||||
* updated. */
|
* updated. */
|
||||||
void edit_redraw(const filestruct *old_current, int old_pww)
|
void edit_redraw(const filestruct *old_current, size_t old_pww)
|
||||||
{
|
{
|
||||||
int do_refresh = need_vertical_update(0) ||
|
int do_refresh = need_vertical_update(0) ||
|
||||||
need_vertical_update(old_pww);
|
need_vertical_update(old_pww);
|
||||||
@ -2689,7 +2690,7 @@ void edit_refresh(void)
|
|||||||
const filestruct *foo = edittop;
|
const filestruct *foo = edittop;
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
fprintf(stderr, "edit_refresh(): edittop->lineno = %ld\n", edittop->lineno);
|
fprintf(stderr, "edit_refresh(): edittop->lineno = %d\n", edittop->lineno);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
while (nlines < editwinrows) {
|
while (nlines < editwinrows) {
|
||||||
@ -2964,6 +2965,10 @@ void do_cursorpos(int constant)
|
|||||||
}
|
}
|
||||||
i += current_x;
|
i += current_x;
|
||||||
|
|
||||||
|
/* Check whether totsize is correct. Else there is a bug
|
||||||
|
* somewhere. */
|
||||||
|
assert(current != filebot || i == totsize);
|
||||||
|
|
||||||
if (constant && ISSET(DISABLE_CURPOS)) {
|
if (constant && ISSET(DISABLE_CURPOS)) {
|
||||||
UNSET(DISABLE_CURPOS);
|
UNSET(DISABLE_CURPOS);
|
||||||
old_i = i;
|
old_i = i;
|
||||||
@ -2975,8 +2980,8 @@ void do_cursorpos(int constant)
|
|||||||
* unconditionally; otherwise, only display the position when the
|
* unconditionally; otherwise, only display the position when the
|
||||||
* character values have changed. */
|
* character values have changed. */
|
||||||
if (!constant || old_i != i || old_totsize != totsize) {
|
if (!constant || old_i != i || old_totsize != totsize) {
|
||||||
unsigned long xpt = xplustabs() + 1;
|
size_t xpt = xplustabs() + 1;
|
||||||
unsigned long cur_len = strlenpt(current->data) + 1;
|
size_t cur_len = strlenpt(current->data) + 1;
|
||||||
int linepct = 100 * current->lineno / totlines;
|
int linepct = 100 * current->lineno / totlines;
|
||||||
int colpct = 100 * xpt / cur_len;
|
int colpct = 100 * xpt / cur_len;
|
||||||
int bytepct = totsize == 0 ? 0 : 100 * i / totsize;
|
int bytepct = totsize == 0 ? 0 : 100 * i / totsize;
|
||||||
@ -2984,7 +2989,7 @@ void do_cursorpos(int constant)
|
|||||||
statusbar(
|
statusbar(
|
||||||
_("line %ld/%ld (%d%%), col %lu/%lu (%d%%), char %lu/%ld (%d%%)"),
|
_("line %ld/%ld (%d%%), col %lu/%lu (%d%%), char %lu/%ld (%d%%)"),
|
||||||
current->lineno, totlines, linepct,
|
current->lineno, totlines, linepct,
|
||||||
xpt, cur_len, colpct,
|
(unsigned long)xpt, (unsigned long)cur_len, colpct,
|
||||||
i, totsize, bytepct);
|
i, totsize, bytepct);
|
||||||
UNSET(DISABLE_CURPOS);
|
UNSET(DISABLE_CURPOS);
|
||||||
}
|
}
|
||||||
@ -3158,7 +3163,7 @@ void do_help(void)
|
|||||||
* expect word to have tabs and control characters expanded. */
|
* expect word to have tabs and control characters expanded. */
|
||||||
void do_replace_highlight(int highlight_flag, const char *word)
|
void do_replace_highlight(int highlight_flag, const char *word)
|
||||||
{
|
{
|
||||||
int y = xplustabs();
|
size_t y = xplustabs();
|
||||||
size_t word_len = strlen(word);
|
size_t word_len = strlen(word);
|
||||||
|
|
||||||
y = get_page_start(y) + COLS - y;
|
y = get_page_start(y) + COLS - y;
|
||||||
|
Loading…
Reference in New Issue
Block a user