- 23 Dec, 2016 5 commits
-
-
Benno Schulenberg authored
-
Benno Schulenberg authored
-
Benno Schulenberg authored
In path names and file names, 0x0A means an embedded newline and should be shown as ^J, but in anything related to the file's data, 0x0A is an encoded NUL and should be displayed as ^@. So... switch mode at the two main entry points into the "file system" (reading in a file, and writing out a file), and also when drawing the titlebar. Switch back to the default mode in the main loop. This fixes https://savannah.gnu.org/bugs/?49893.
-
Benno Schulenberg authored
Decode 0x0A bytes to 0x00 when saving the search history, and encode them again when reading the file back in, to prevent nano from hanging or aborting when encountering 0x00 on a line by itself.
-
Benno Schulenberg authored
After updating the color palette, the corresponding new window content should be drawn immediately, before some other part of the code calls doupdate(), to prevent the old content being shown in the new colors. This fixes https://savannah.gnu.org/bugs/?49912 . Reported-by:
Mike Frysinger <vapier@gentoo.org>
-
- 22 Dec, 2016 6 commits
-
-
Benno Schulenberg authored
-
Benno Schulenberg authored
This fixes https://savannah.gnu.org/bugs/?49884.
-
Benno Schulenberg authored
And certainly don't return zero when the key wouldn't have been found, because that would have meant jumping a word to the right.
-
Benno Schulenberg authored
Also, swap the logic around, to use less braces.
-
Benno Schulenberg authored
Which is possible because those keycodes are hard-bound to the relevant functions.
-
Benno Schulenberg authored
In nano 2.7.1 and 2.7.2, pressing Shift+Ctrl+Arrow on a Linux console would behave as if Shift wasn't held. It got broken three months ago, by commit 08cd197b, messing up the proper order of the checks. This fixes https://savannah.gnu.org/bugs/?49906.
-
- 21 Dec, 2016 2 commits
-
-
Benno Schulenberg authored
On some systems, typing ^C apparently results in a KEY_CANCEL in the input stream, which gets hard-bound to the do_cancel function. But in the main menu there is no Cancel function. So... in that case, let it fall back to the plain old Ctrl-C code: 0x03. Reported-by:
Liam Gretton <liam.gretton@leicester.ac.uk>
-
Benno Schulenberg authored
-
- 20 Dec, 2016 2 commits
-
-
Benno Schulenberg authored
-
Benno Schulenberg authored
-
- 19 Dec, 2016 5 commits
-
-
Benno Schulenberg authored
A third method does not exist.
-
Benno Schulenberg authored
-
Benno Schulenberg authored
There is no need for a counter, nor an old counter to compare it with.
-
Benno Schulenberg authored
Taking the terminating newline into account, and that there is at least one digit per number.
-
Benno Schulenberg authored
For clarity and a tiny bit more speed. Also rename some variables.
-
- 18 Dec, 2016 14 commits
-
-
Benno Schulenberg authored
A filename might contain spaces, so we can't look for the numbers (the second and third elements) starting from the head of the line -- we have to start at the tail and work backward. This fixes https://savannah.gnu.org/bugs/?49879.
-
Benno Schulenberg authored
(I don't /see/ single-letter variables -- they are too small.)
-
Benno Schulenberg authored
-
Benno Schulenberg authored
-
Benno Schulenberg authored
It is irrelevant -- the line is discarded as soon as the data has been extracted.
-
Benno Schulenberg authored
-
Benno Schulenberg authored
So they will not break a line in the positionlog file in two. (Strangely, the reading in of such a log file already decodes nulls back into newlines.) This fixes https://savannah.gnu.org/bugs/?49877.
-
Benno Schulenberg authored
Because changing anything to a null effectively means to truncate the name. This fixes https://savannah.gnu.org/bugs/?49868 and fixes https://savannah.gnu.org/bugs/?49874.
-
Benno Schulenberg authored
The byte 0x0A means 0x00 *only* when it is found in nano's internal representation of a file's data, not when it occurs in a file name. This fixes the second part of https://savannah.gnu.org/bugs/?49867.
-
Benno Schulenberg authored
So that embedded control characters will be represented instead of acted upon. This fixes the first part of https://savannah.gnu.org/bugs/?49867.
-
Benno Schulenberg authored
-
Benno Schulenberg authored
Most full paths are needed only temporarily and will be freed within milliseconds. Only 'full_operating_dir' and 'backup_dir' continue to exist for the whole current session. Any partition, too, will soon be unpartitioned, so the extra reallocation is just a waste of time.
-
Benno Schulenberg authored
It doesn't align anything -- any allocations are already aligned to whatever multiple is required -- it just shrinks the allocated space.
-
Benno Schulenberg authored
And which normally is just some ten or twenty characters long, and never gets wildly overallocated.
-
- 15 Dec, 2016 6 commits
-
-
Benno Schulenberg authored
Nano would crash straight afterward if any of these asserts would fail, so they don't add anything. A few others are simply superfluous.
-
Benno Schulenberg authored
Also trim or improve a few comments.
-
Benno Schulenberg authored
-
Benno Schulenberg authored
That is: elide a second test from the most travelled path: a valid character. This adds a second call of mblen() when parse_mbchar() is called on a terminating zero, but that should never happen.
-
Benno Schulenberg authored
-
Benno Schulenberg authored
-