(mc_error_message): return error code for possible following use."
(sftpfs_cb_open_connection): fix dereference of null pointer.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Introduce -Wswitch-default check.
Some minor cosmetics.
Thanks Andreas Mohr <and at gmx dot li> for original patch.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Only use strncmp when path has enough room (greater then url_delim_len
size).
Overflow happen when path = './'.
(Found by AddressSanitizer.)
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
...to search for the executable when opening pipe:
add the G_SPAWN_SEARCH_PATH flag to the g_spawn_async_with_pipes() call,
which cause mc to use the PATH environment variable to search for the
executable.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Using the "?" pattern in the file selection dialog brought up with '+',
mc uses the file name length in bytes instead of characters.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
Namely, backslash-escaped metacharacter like {}*? will remain in the pattern (with the current code it is just stripped). Second, comma will be transformed to | only inside a group.
Signed-off-by: Slava Zanko <slavazanko@gmail.com>
How to reproduce:
Either on the command line, or in any other text entry field (e.g. copy
file to) enter a string where the last word consists of one single
letter only. E.g. "abc de f".
Press Alt+Backspace.
Expected behavior: Remove the last word, that is, the letter "f" only,
leaving "abc de ".
Actual behavior: Yet another word is removed, leaving "abc ".
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Problem:
Suppose you want to replace a substring in some file names with another,
so you do a File Rename operation with source pattern:
*OLDSTRING*
and target pattern:
\1NEWSTRING\2
If OLDSTRING occurs inside a filename, it is replaced correctly, but if
at the beginning or end of the filename, the corresponding zero-length
wildcard match is replaced by literal \1 or \2, respectively.
Expected
Wildcards that match a zero-length substring should be substituted with
an empty string.
Thanks boris<> for the original patch.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
mc fails to build when using musl as the libc provider. This is due to
the CTRL() macro not being defined in <termios.h>. We could include
<sys/ttydefaults.h> explicitly but it's easier just to ensure CTRL is
defined.
This patch taken from the Sabotage Linux distro which fixes this. This
patch has also been tested and works with the OpenEmbedded build
system.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
export PS1=$'\[\e[38:5:214m\]orange$\[\e[0m\]'
mc
Expected: "orange$" prompt shows up in black under the panels.
Actual: some additional garbage.
The 256-color and true-color escape sequences should allow either ';' or
':' inside as separator, actually, ':' is the more correct according to
ECMA-48. Some terminal emulators (e.g. xterm, gnome-terminal) support
this.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>