Andrew Borodin
ffe6412c30
tar: prepare to support the POSIX extended headers.
...
Move required stuff to tar-internal.{ch} files.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-05-01 13:04:29 +03:00
Andrew Borodin
8223f82857
tar: refactoring of archive reading.
...
Make it close to GNU tar imlementation.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-05-01 13:02:57 +03:00
Andrew Borodin
4158824d70
(tar_read_header): move entry/inode creation to new function tar_insert_entry().
2023-05-01 13:02:57 +03:00
Andrew Borodin
c35dfc3363
tar: use separate structure to store various file info.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-05-01 13:02:57 +03:00
Andrew Borodin
d4d0fe6019
(tar_read_header): minor optimization.
...
Calculate length of file and link name if that is really needed.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-05-01 13:02:42 +03:00
Andrew Borodin
d4ded63724
(tar_read_header): rename variable.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-04-23 20:51:57 +03:00
Andrew Borodin
07a0aa352d
(tar_find_next_block): rename from tar_get_next_block.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-04-23 20:51:57 +03:00
Andrew Borodin
3ed39fb883
src/vfs/tar/tar.c: remove period from error messages.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-04-23 20:51:56 +03:00
Andrew Borodin
3a9524979c
(tar_read_header): rename variables.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-04-23 20:51:56 +03:00
Andrew Borodin
96ebde8d68
(tar_get_next_block): use file descriptor from archive descriptor.
...
(tar_skip_n_records): likewise.
(tar_read_header): likewise.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-04-23 20:51:56 +03:00
Andrew Borodin
74c16acf6a
(tar_open_archive_int): return status of tar archive open
...
... instead of file descriptor.
(tar_open_archive): remove variable stored file descriptor. Use file
descriptor from archive descriptor.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-04-23 20:51:56 +03:00
Andrew Borodin
35e548b054
src/vfs/tar/tar.c: clarify support of OLDGNU format.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-04-23 20:51:56 +03:00
Andrew Borodin
d647914bfb
(tar_decode_header): do not decode size here.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-04-23 20:51:56 +03:00
Andrew Borodin
78a25f7800
Ticket #1952 : tar: support long file names in archive.
...
Initial changeset: tar.c: update code to be close to GNU tar.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-04-23 20:49:41 +03:00
Andrew Borodin
86a9e0be2c
Merge branch '4450_pcre2'
...
* 4450_pcre2:
Ticket #4450 : support PCRE2 in the search engine.
2023-04-02 20:53:23 +03:00
Andrew Borodin
49624e473b
Ticket #4450 : support PCRE2 in the search engine.
...
* m4.include/ax_path_lib_pcre.m4: replace by recent version from GNU
Autoconf Archive.
* m4.include/ax_check_pcre2.m4: get grom GNU Autoconf Archive.
* m4.include/mc-check-search-type.m4: support both PCRE versions.
* */*/Makefile.am: remove @CHECK_CFLAGS@ and @PCRE_LIBS@ ads they are
added via AX_PATH_LIB_PCRE and AX_CHECK_PCRE2.
* lib/search.h, lib/search/: add support of PCRE2. Thanks broly <gagan@hotmail.com>
for the initial patch.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-25 10:07:41 +03:00
Andrew Borodin
be3822cafa
Merge branch '4426_cleanup'
...
* 4426_cleanup: (38 commits)
Update po/*.po files.
(edit_find_editor): rename from find_editor.
Listbox window: rename functions.
(buttonbar_find): rename from find_buttonbar.
Menu: rename functions.
(advanced_chown_cmd): use intermediate variables to make text more readable.
Use mc_fgetflags() and mc_fsetflags() where needed.
VFS: mc_fgetflags, mc_fsetflags: new APIs.
Minor optimization of chown/chmod/chattr operations.
(operate_single_file): clarify creation of file operation UI.
(dlg_default_destroy): send MSG_DESTROY to the dialog itself
Collect all editor options to structure.
Add EDIT and CONST_EDIT macros.
usermenu: clarify compilation w/o internal editor.
src/editor/spell.c: add missed #include.
Update template for .c files.
(do_search): remove intermediate variable.
(do_search): get rid of string duplication.
Change WDialog::data from void* to union{void*, int}
Don't create an empty string in WLabel objects.
...
2023-03-19 20:40:09 +03:00
Andrew Borodin
acedeff17a
Update po/*.po files.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:39:51 +03:00
Andrew Borodin
a286f042d4
(edit_find_editor): rename from find_editor.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
c157b048e5
Listbox window: rename functions.
...
create_listbox_window -> listbox_window_new
create_listbox_window_centered -> listbox_window_new_centered
run_listbox -> listbox_run
run_listbox_with_data -> listbox_run_with_data
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
d9383ba8b3
(buttonbar_find): rename from find_buttonbar.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
fd2d5b49ac
Menu: rename functions.
...
menu_entry_create -> menu_entry_new
menu_separator_create -> menu_separator_new
create_menu -> menu_new
destroy_menu -> menu_free
find_menubar -> menubar_find
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
a242e8b91f
(advanced_chown_cmd): use intermediate variables to make text more readable.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
79c8a351ba
Use mc_fgetflags() and mc_fsetflags() where needed.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
2a6580127a
VFS: mc_fgetflags, mc_fsetflags: new APIs.
...
(mc_fgetflags): fgetflags(3) VFS wrapper.
(mc_fsetflags): fsetflags(3) VFS wrapper.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
50f4717f45
Minor optimization of chown/chmod/chattr operations.
...
(try_chmod): create filename when required.
(try_chown): likewise.
(try_advanced_chown): likewise.
(try_chattr): likewise.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
6329771fc0
(operate_single_file): clarify creation of file operation UI.
...
Create UI to show confirmation dialog in case of foreground operation
regardless of ENABLE_BACKGROUND.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
47da3a764a
(dlg_default_destroy): send MSG_DESTROY to the dialog itself
...
...to avoid various memory leaks.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
8a951746b3
Collect all editor options to structure.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
d2b9454f4b
Add EDIT and CONST_EDIT macros.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
683122482b
usermenu: clarify compilation w/o internal editor.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andreas Mohr
de1edb72f8
src/editor/spell.c: add missed #include.
...
Signed-off-by: Andreas Mohr <and@gmx.li>
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
7257f794d2
Update template for .c files.
...
Add section for forward declarations of local functions. This section is
located before file scope variables because functions can be used in
strucutres (see find.c for example):
/*** forward declarations (file scope functions) *************************************************/
/* button callbacks */
static int start_stop (WButton * button, int action);
static int find_do_view_file (WButton * button, int action);
static int find_do_edit_file (WButton * button, int action);
/*** file scope variables ************************************************************************/
static struct
{
...
bcback_fn callback;
} fbuts[] =
{
...
{ B_STOP, NORMAL_BUTTON, N_("S&uspend"), 0, 0, NULL, start_stop },
...
{ B_VIEW, NORMAL_BUTTON, N_("&View - F3"), 0, 0, NULL, find_do_view_file },
{ B_VIEW, NORMAL_BUTTON, N_("&Edit - F4"), 0, 0, NULL, find_do_edit_file }
};
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:24 +03:00
Andrew Borodin
e1ff8d94e4
(do_search): remove intermediate variable.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
c7f9329dcb
(do_search): get rid of string duplication.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
584fb9815c
Change WDialog::data from void* to union{void*, int}
...
...to use data of type other than pointer w/o extra type cast.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
c5466cd494
Don't create an empty string in WLabel objects.
...
* (simple_status_msg_init_cb): pass NULL instead of "" to label_new()
to get rid of an empty string duplication.
* (advanced_chown_dlg_create): likewise.
* (chown_dlg_create): likewise.
* (dirsize_status_init_cb): likewise.
* (file_op_context_create_ui): likewise.
* (setup_gui): likewise.
* (init_hotlist): likewise.
* (init_learn): likewise.
* (file_progress_show_source): pass NULL instead of "" to
label_set_text() to get rid of an empty string duplication.
* (file_progress_show_target): likewise.
* (create_file_manager): pass NULL instead of 0 to label_new().
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
e472f23c13
Don't NULLify objects by returned value of g_ptr_array_free().
...
g_ptr_array_free(obj, ...) returns a pointer (including NULL) to
obj->pdata, not to obj.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrei Stepanov
08a89a87aa
doc/man/ru/mc.1.in: fix typos.
...
Closes MidnightCommander/mc#179 .
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
000c1f18e6
src/vfs/tar/tar.c: reorder routines.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
ea93350506
(tar_decode_header): use offsetof().
...
Sync with GNU tar b8feb2b14247d76200fd53607d3613c82b6e5b81.
Access header->buffer + offsetof (struct posix_header, magic), instead
of header->header.magic, when reading or writing the OLDGNU_MAGIC
pattern. The code violates the C standard without this change, and GCC
warns about this if fortify checking is enabled. It's not a bug on
traditional (i.e., non-debugging) platforms, but it does violate the C
standard so it should be fixed. Problem originally reported by John
Emil Karlson in
<http://lists.gnu.org/archive/html/bug-tar/2010-04/msg00023.html >.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
4a17f02b21
(tar_skip_n_records): change type of n to off_t.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
4ae197e788
(tar_checksum): sync with GNU tar b5db9788306d45cd9432fda71236f07b8a214212.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
c4e20d3176
src/vfs/tar/tar.c: rename header read status and values.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
8ce58eab7b
src/vfs/tar/tar.c: reorder includes; add <sys/stat.h>.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
a15b91b030
src/vfs/tar/tar.c: clean up.
...
Sync with GNU tar 33b63ebe94b8a2dc2cb8fb907d8b7c16591b05bc.
(struct extra_header): Removed unused structure.
(union block.extra_header): Removed unused member.
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
8fdcbeed74
Move definition of file_entry_t to separate file.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
cf223bec27
Use g_ptr_array_new_with_free_func() where reasonably.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
273fbd2afe
mceditor: editbuffer: use g_ptr_array_new_full() to create text buffers.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00
Andrew Borodin
381dc8732b
lib/filehighlight/ini-file-read.c: fix coding style.
...
Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
2023-03-19 20:34:23 +03:00