* 3212_panel_columns:
Set number of brief columns in the "Listing mode" dialog box.
(quick_dialog_skip): fix location of labeled input.
Save/load brief columns to/from panels.ini.
WPanel: support up to 9 columns in brief mode.
Refactoring: use panel_lines() function instead of llines macro.
(format_file): fix potential out-of-range and NULL dereference.
Minor refactoring of file panel draw.
Ticket #3212: support more than 2 columns in the file panel.
* Resolve "Please use AWS4-HMAC-SHA256" error: enforce the new V4 authentication
method. It is required in many (if not all) locations nowadays.
* Now s3+ works with buckets in different regions: locations are auto-detected.
* Debug level specification support (MCVFS_EXTFS_S3_DEBUGLEVEL).
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
(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>
* 3420_cleanup: (24 commits)
Ticket #3431: add missing default cases.
Ticket #3440: (find_file): fix memory leak.
Ticket #3439: (dir_list_reload): fix memory leak.
Ticket #3438: (dir_list_load): fix memory leak.
Ticket #3437: (custom_canonicalize_pathname): fix heap-buffer-overflow.
(edit_find_line): use labs() instead of abs() for argument of type 'long'.
(progress_update_one): fix variable initialization.
(file_date): fix variable initialization.
is_7bit_printable() is used only if support of charset selection and conversion is disabled.
lib/strutil/strutil8bit.c: remove unused functions.
Ticket #3435: clang compiler fixes/cleanups.
Fixes in tests
Ticket #3134: fix cflags check when using clang compiler.
Add -Wundef compiler option for future compile checks.
Use #ifdef for autoconf provided marcos (continue).
Use #ifdef for autoconf provided marcos...
Better use of S_IS* macros.
Ticket #3430: introduce -Wundef check to catch macro typos.
Ticket #3429: fix -Wstrict-prototypes compiler warnings...
reset_hp_softkeys variable is used in S-Lang-based mc only.
...
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>
Find_parameter() allocate start_dir but object will never freed.
Testcase: search file.
(Found by LeakSanitizer.)
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
When dir_copy filling with fentry objects, dir_list_clean() on dir_copy
will never work because dir_copy->len is still zero.
Testcase: switch panels on/off.
(Found by LeakSanitizer.)
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
When root directory found list->len is decrease but listobj->fname
object will never be freed.
Clear list instead of resetting list len only.
(Found by LeakSanitizer.)
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>
With clang invalid cflags usage result in exit 0, we expect exit 1.
$ clang -c -Wmaybe-uninitialized conftest.c ; echo $?
warning: unknown warning option '-Wmaybe-uninitialized'; did you mean '-Wuninitialized'? [-Wunknown-warning-option]
1 warning generated.
0
solution with -Werror on cflags check
$ clang -c -Werror -Wmaybe-uninitialized conftest.c ; echo $?
error: unknown warning option '-Wmaybe-uninitialized'; did you mean '-Wuninitialized'? [-Werror,-Wunknown-warning-option]
1
(Tested with clang 3.6.)
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Add editor_state_full_filename option to choose full or base file name
in the mceditor status line. Option is hidden and accessible in the
mc.ini configuration file only. Disabled by default to be consistent
with the file name format in the mcviewer status line.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Sync with gnulib 3fb6e360363744462ce15c381f0b116c6fc4ce82.
src/filemanager/mountlist.c: remove dependency on libmount.
Parse /proc/self/mountinfo directly, rather than depending on libmount,
which has many dependencies due to its dependence on libselinux, as
detailed at:
http://lists.gnu.org/archive/html/bug-gnulib/2015-01/msg00063.html.
Note we restrict this to __linux__ as that's probably where this
interface will remain. If ever porting, it would be best to first pull
the makedev() wrapper from coreutils to a gnulib module.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>