summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2024-02-04Use unar instead of cpio for CPIO archivesColomban Wendling2-3/+4
2024-02-01Fix double URI escapingColomban Wendling1-7/+13
2024-02-01Escapes a string for use in a URI. replace special "# and ?" characters in urizhuyaliang1-3/+9
Fix https://github.com/mate-desktop/engrampa/issues/501
2024-01-31rar: Actually accept unrar-free as the executable nameColomban Wendling1-20/+30
I had been relying on `unrar-free` being available as `unrar`, but that seems to be a Debian thing, so accept the `unrar-free` itself as an alternative. The code has been refactored a little to avoid some duplication, but it basically just adds `unrar-free` as a lower precedence alternative.
2024-01-31rar: Add support for unrar-freeColomban Wendling2-10/+30
Tested with unrar-free 0.1.3.
2024-01-31rar: Fix out of bounds read on malformed outputColomban Wendling1-18/+25
Check the fields count before retrieving it not to go out of bounds. This also slightly revise the logic to require the proper number of fields in the RAR5 `attribute_field_with_space()` case.
2024-01-31rar: Simplify and merge duplicate codeColomban Wendling1-20/+4
Merge version matching for rar and unrar. This is ever so slightly slower in theory for unrar 5.x because there's an additional unnecessary `sscanf()` call, but it's not actually gonna matter, and saves quite a bit of duplicated logic. This also makes the matching a bit more safe by verifying `sscanf()` actually worked, and avoids using a uninitialized `version` value due to an unexpected input. Finally, this makes the parsing a bit more strict by requiring a version number after the `RAR` and `UNRAR` line prefixes -- leading not to using the uninitialized version variable. This will be required by the upcoming unrar-free support as it reports a `RAR archive ...` line that would have matched the `RAR` version check.
2024-01-31zip: Fix crashes on buggy zip outputColomban Wendling1-1/+12
Fix crash if the `zip` command emits a line starting with one of 'd?-' yet having less than 8 fields in it, or if the date field is malformed.
2024-01-257z: Fix accepting RAR archives when unar-open-zip=trueColomban Wendling1-1/+1
Offset was not properly updated when adding support for EPUB+ZIP in 84fb5cfe96263f79e50b68a5a6996e40c514cf74, leading to disabling both ZIP and RAR when the option unar-open-zip was enabled.
2023-12-20correct translation stringraveit651-1/+1
- reported by translators https://app.transifex.com/mate/MATE/translate/#id/master--engrampa/470908044
2023-10-03Fix Segfault on opening .deb files after recent Debian Unstable updateszhuyaliang1-0/+4
Fix https://github.com/mate-desktop/engrampa/issues/496
2023-08-11Check if the remaining disk space is sufficient when add extractzhuyaliang1-0/+42
2023-07-24priority useing get_mime_type_from_filename to obtain mime typezhuyaliang1-10/+0
MAGIC returned incorrect mime type while processing tar compression type Fix https://github.com/mate-desktop/engrampa/issues/492
2023-06-15Fix MIME detection logic from #490Colomban Wendling1-2/+8
A blooper has been made there: * if ENABLE_MIME is set, the intention was to try, in order: magic, content, filename; but it was made filename, content, magic (which was the same as before the changes); * if ENABLE_MIME is not set, the intention was to try, in order: filename, content, magic; but it has been made magic, content, magic (notice the duplicate, and the missing "filename"). This probably doesn't change much in the wild as magic is gonna work most of the time, but it's especially problematic that the non-libmagic case doesn't have the filename test. Anyway, fix this so the code is consistent, and we retain the behavior for the non-libmagic case, and have the new expected one for the libmagic case.
2023-06-14Update to change the fallback and fix gzip issueToyeesh Sinha3-6/+6
2023-06-14Fixed libmagic bugToyeesh Sinha1-1/+6
2023-05-29Add "Extract to subdirectory" optionxmusjackson6-23/+70
This commit adds an "Extract to subdirectory" option to the extract dialog which allows the user to extract the contents of the archive to a directory with the name of the archive (without the extension.) The user will be prompted if the directory must be created. file-utils.c: Improve remove_extension_from_path Rework this function so that it correctly parses and truncates files with multiple extensions like .tar.gz file-utils.c: Improve get_file_extension Improve this function to correctly identify and return supported compressed tar file extensions
2023-05-23Add meson compilation supportzhuyaliang2-0/+112
2023-05-15Set the current folder of the file chooser dialog using a local file namezhuyaliang1-1/+7
2023-05-14Fix failure to extract multiple fileszhuyaliang1-0/+3
2023-05-13Uniform file chooser dialog margin sizezhuyaliang1-1/+0
2023-05-13Archive do not track symbolic linkzhuyaliang2-9/+18
g_file_enumerate_children_async default should use G_FILE_QUERY_INFO_NOFOLLOW_SYMLINKS. This can avoid link loops
2023-05-13Fix failed restore of saved sessionszhuyaliang1-1/+1
2023-05-09Replace deprecated functions and fix compilation warningszhuyaliang9-694/+1676
Replacing GtkAction with GAction Replacing GtkUIManager with GtkBuilder
2023-04-23command-7z: Add new 7-zip(7zz and 7zzs) project supportzhuyaliang2-14/+30
2023-04-21file-utils: Include <strings.h> for strcasecmpFlorian Weimer1-0/+1
The _XOPEN_SOURCE macro definition overrides _DEFAULT_SOURCE and disables the declaration in <string.h>. This avoids an implicit function declaration and build failures with future compilers.
2023-04-21action: Delete unused sort_by_entries codezhuyaliang5-68/+0
2023-04-15fr-process: fix memory leakrbuj1-26/+9
2023-04-07UI: Remove useless code and filezhuyaliang4-24/+0
2023-04-05Fix icon missing when compressing files with the right mouse buttonzhuyaliang1-1/+6
2023-04-05Extract: add the function of automatically closing the dialog box after ↵zhuyaliang5-0/+54
decompression
2023-03-22zstd: support both old and new mime typeĐoàn Trần Công Danh2-8/+15
As of it's now, we're supporting zstd {,de}compression with specific mime type that was reported by libmagic as configure time. Thus, the built binaries is not correct after upgrading file-devel after configure. In addition, this configure's time hard-coded value prevent our users from partial upgrade. Let's accept both mime types reported by both old and new file-devel. For the mapping between file extensions and mime types, let's choose the new mime value.
2023-03-22fr-command-rar: Parameter 'line' can be declared with constrbuj1-1/+1
2023-03-22Fix archive file save as functionzhuyaliang4-3/+22
2023-03-22glib-utils: redundant conditionrbuj1-1/+1
2023-03-21fix: Encrypted documents in all formats cannot be successfully pasted to the ↵jishengjie1-2/+7
specified directory after copying and cutting encrypted files and folders
2023-03-21fix: Encrypted documents in. 7z format cannot delete locked files and foldersjishengjie3-1/+45
2023-03-16fr-window: fix -Wincompatible-pointer-types warningrbuj1-1/+1
2023-03-15file-utils: remove unused functionsrbuj2-232/+0
2023-03-15fr-command-rar: parse date & time using strptimerbuj1-32/+7
2022-03-10Enable mouse-less navigation & reading for output dialogsValentin Villenave1-2/+10
We actually want a cursor to be displayed in case a screen reader is used with visual tracking.
2022-03-10Accessibility: add proper mnemonic relations and labellingValentin Villenave4-0/+16
2022-03-10Fix implicit conversion changes signedness: 'gboolean'rbuj3-5/+5
2022-01-29file-data: fix memory leakrbuj2-5/+8
2022-01-29fr-command-tar: fix memory leakrbuj1-2/+7
2022-01-29fr-window: fix memory leakrbuj1-3/+10
2022-01-29dlg-package-installer: fix memory leakrbuj1-1/+4
2022-01-29Fix build warnings about missing field initializerrbuj2-2/+3
2022-01-29Fix some -Wfloat-conversion warningsrbuj4-20/+25
2022-01-28Fix -Wimplicit-int-conversion warningrbuj24-49/+47