summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2019-12-017z: Don't set the work directory, i.e. use temporary directoryrbuj1-1/+0
closes https://github.com/mate-desktop/engrampa/issues/200
2019-12-01Check if a mime-type is an alias in compute_supported_archive_typesrbuj1-1/+14
For instance, application/x-lha is an alias of application/x-lzh-compressed, mime_type_desc.mime_type should only store non duplicated primary mime-types, to avoid duplicates in the warehouse.
2019-12-01define LOCALEDIR for bindtextdomain()Wu Xiaotian1-0/+1
2019-11-24Clean file type selection in new archive dialogrbuj2-71/+60
2019-11-20Automatically sets the maximum size of static arraysrbuj1-4/+4
2019-10-20Fix localized pause UI logicoctoghost1-1/+1
2019-10-03LHA: add test for checking compressed file integrityrbuj1-1/+12
2019-10-03Set compiler debug flags using MATE_DEBUG_CHECK and update configure summaryrbuj8-19/+33
test: $ ./autogen.sh --enable-debug=profile --prefix=/usr <cut> Configuration: Source code location: . Compiler: gcc Compiler flags: -g -pg Warning flags: -Wall -Wmissing-prototypes Linker flags: -pg Caja support: yes PackageKit support: yes Run in place no Use libmagic: no JSON support: yes Now type `make' to compile engrampa $ ./autogen.sh --enable-debug --prefix=/usr <cut> Configuration: Source code location: . Compiler: gcc Compiler flags: -g -O0 Warning flags: -Wall -Wmissing-prototypes Linker flags: Caja support: yes PackageKit support: yes Run in place no Use libmagic: no JSON support: yes Now type `make' to compile engrampa $ grep MATE_ENABLE_DEBUG config.h
2019-10-03Add application/(x-compress|x-rpm|x-lzh-compressed) in local magicrbuj1-0/+4
$ file -b --mime-type ~/test.tar.Z application/x-compress $ hexdump -C -n 2 ~/test.tar.Z 00000000 1f 9d |..| 00000002 $ file -b --mime-type ~/atril-1.23.1-1.fc30.src.rpm application/x-rpm $ hexdump -C -n 4 ~/atril-1.23.1-1.fc30.src.rpm 00000000 ed ab ee db |....| 00000004 $ file -b --mime-type ~/test.lzh application/x-lzh-compressed $ hexdump -C -s 2 -n 3 ~/test.lzh 00000002 2d 6c 68 |-lh| 00000005
2019-10-03Show archive type in properties dialogrbuj2-0/+34
2019-10-03Zstandard: read .tar.zst filesrbuj2-0/+22
$ tar cafv ~/test.tar.zst ~/test $ xdg-mime query filetype ~/test.tar.zst application/x-zstd-compressed-tar Test: $ CFLAGS="-g -O0" ./autogen.sh --enable-magic --enable-packagekit --prefix=/usr && make && sudo make install $ engrampa ~/test.tar.zst
2019-10-03Zstandard: add test for checking compressed file integrityrbuj1-1/+10
2019-10-03Zstandard: Update MIME typerbuj2-7/+7
MIME type is application/x-zstd: $ lorem-ipsum-generator -p 10000 -l -f plain > lorem.txt $ zstd lorem.txt $ file -b --mime-type lorem.txt.zst application/x-zstd Test: $ CFLAGS="-g -O0" ./autogen.sh --enable-magic --enable-packagekit --prefix=/usr && make && sudo make install
2019-10-01Ar: Update MIME type and add magic numbersrbuj3-8/+10
Changes: Replace application/x-ar with application/x-archive ar magic number: "!<arch>\n" deb magic number (Debian 0.93+): "!<arch>\ndebian-binary" REF: https://en.wikipedia.org/wiki/Ar_(Unix) https://en.wikipedia.org/wiki/Deb_(file_format) Test: $ touch a && touch b && ar r test.ar a b && cp test.ar test-2.a $ xdg-mime query filetype test.ar application/x-archive $ xdg-mime query filetype dftp_2.2-1.deb application/vnd.debian.binary-package $ gio info test.ar | grep content-type standard::content-type: application/x-archive standard::fast-content-type: application/x-archive $ gio info dftp_2.2-1.deb | grep content-type standard::content-type: application/vnd.debian.binary-package standard::fast-content-type: application/vnd.debian.binary-package $ hexdump -C -n 8 test.ar 00000000 21 3c 61 72 63 68 3e 0a |!<arch>.| 00000008 $ hexdump -C -n 21 dftp_2.2-1.deb 00000000 21 3c 61 72 63 68 3e 0a 64 65 62 69 61 6e 2d 62 |!<arch>.debian-b| 00000010 69 6e 61 72 79 |inary| 00000015 $ ./autogen.sh --prefix=/usr --disable-magic && make && sudo make install
2019-10-01fr-command-ar: fetch dates with strptimerbuj1-49/+13
2019-10-01Remove internal mkdtemp and define feature test macrorbuj5-253/+3
mkdtemp(): /* Since glibc 2.19: */ _DEFAULT_SOURCE || /* Glibc 2.19 and earlier: */ _BSD_SOURCE || /* Since glibc 2.10: */ _POSIX_C_SOURCE >= 200809L _POSIX_C_SOURCE 200809L is enabled by _XOPEN_SOURCE >= 700. Ref: http://man7.org/linux/man-pages/man7/feature_test_macros.7.html
2019-10-01fr-command-tar: fetch dates with strptimerbuj1-37/+9
2019-09-30Use mate-compiler-flags.m4 provided by mate-commonrbuj2-2/+11
USAGE: ./autogen.sh --enable-compile-warnings=no/minimum/yes/maximum/error@ If --enable-compile-warnings is not provided, the default is --enable-compile-warnings=yes
2019-09-30ar: don't remove leading whitespaces in filename fieldrbuj1-6/+6
test: $ touch " test" $ touch " test" $ ar r test.a " test" " test" $ ar tv test.a rw-rw-r-- 1000/1001 0 Sep 18 14:58 2019 test rw-rw-r-- 1000/1001 0 Sep 18 14:58 2019 test $ engrampa test.a
2019-09-30LHA: make compatible with content-type response from gio file queryrbuj1-1/+1
gio returns "application/x-lha" in get_mime_type_from_content test: $ LANG=C gio info 1.lzh | grep content-type standard::content-type: application/x-lha standard::fast-content-type: application/x-lha
2019-09-26fr-command-dpkg: fetch dates with strptimerbuj1-17/+19
2019-09-22dlg-prop: set property label in ui filerbuj2-42/+32
2019-09-22Add extract-dialog-options.uirbuj4-163/+277
2019-09-22LHA: Fix internet media typerbuj2-4/+4
LHA media type is application/x-lzh-compressed $ file --mime-type ~/test.lzh /home/robert/test.lzh: application/x-lzh-compressed
2019-09-22Use g_list_free_full and g_slist_free_fullrbuj7-22/+11
void g_list_free_full (GList *list, GDestroyNotify free_func); void g_slist_free_full (GList *list, GDestroyNotify free_func); Convenience methods, which free all the memory used by a list, and calls free_func on every element's data.
2019-09-17dlg-prop: show the exact number of bytes as part of the sizerbuj1-2/+2
2019-09-15dlg-prop: allow to open the archive's folderrbuj1-4/+12
Based on https://github.com/GNOME/file-roller/commit/9a37eb44a8ec5d0a20ea78c9a44c7c9e50bb508f#diff-41f5e2a364a93ff790f678ba58265d43
2019-09-15remove warnings: ‘gtk_image_new_from_stock’ is deprecatedrbuj3-26/+15
gtk-utils.c:171:3: warning: ‘gtk_image_new_from_stock’ is deprecated: Use 'gtk_image_new_from_icon_name' instead [-Wdeprecated-declarations] 171 | image = gtk_image_new_from_stock (text, GTK_ICON_SIZE_BUTTON); | ^~~~~ gtk-utils.c:173:3: warning: ‘gtk_image_new_from_stock’ is deprecated: Use 'gtk_image_new_from_icon_name' instead [-Wdeprecated-declarations] 173 | image = gtk_image_new_from_stock (stock_id, GTK_ICON_SIZE_BUTTON); | ^~~~~
2019-09-15glib-utils & gtk-utils: Remove unused functionsrbuj4-315/+0
cppcheck --enable=unusedFunction .
2019-09-15dlg-package-installer: show icons in error dialog buttonsrbuj1-2/+31
2019-09-15dlg-package-installer: remove warning ‘GtkStock’ is deprecatedrbuj1-2/+2
dlg-package-installer.c:294:9: warning: ‘GtkStock’ is deprecated [-Wdeprecated-declarations] 294 | GTK_STOCK_DIALOG_ERROR, | ^~~~~~~~~~~~~~~~~~~~~~ dlg-package-installer.c:297:9: warning: ‘GtkStock’ is deprecated [-Wdeprecated-declarations] 297 | GTK_STOCK_CANCEL, GTK_RESPONSE_NO, | ^~~~~~~~~~~~~~~~
2019-09-14gio-utils: Remove unused functionsrbuj2-81/+0
$ cppcheck --enable=unusedFunction . [src/gio-utils.c:1091]: (style) The function 'g_copy_uri_async' is never used. [src/gio-utils.c:1060]: (style) The function 'g_copy_uris_async' is never used.
2019-09-10glib-utils: Remove get_time_string()rbuj4-27/+15
get_time_string() is a local function that wraps strftime(). In contrast to strftime(), g_date_time_format() always produces an UTF-8 string, regardless of the current locale.
2019-09-10unace 2.5: Don't show archive summary in file listingrbuj1-0/+3
closes #303
2019-09-08tar: don't remove leading whitespaces in filename fieldrbuj1-6/+6
closes #299
2019-09-08Initialization discards ‘const’ qualifier from pointer target typerbuj12-41/+41
Remove 317 warnings [-Wdiscarded-qualifiers].
2019-09-07remove warnings: "ENABLE_MAGIC" is not defined, evaluates to 0rbuj1-2/+2
fr-archive.c:45:5: warning: "ENABLE_MAGIC" is not defined, evaluates to 0 [-Wundef] fr-archive.c:519:5: warning: "ENABLE_MAGIC" is not defined, evaluates to 0 [-Wundef]
2019-09-05comparison of integer expressions of different signedness: ‘size_t’rbuj6-11/+11
2019-09-03Missing initializer for struct fieldrbuj26-28/+53
caja-engrampa.c:439:2: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘const struct _GTypeInfo’} [-Wmissing-field-initializers] eggtreemultidnd.c:70:2: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘const struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command.c:98:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-7z.c:750:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-ace.c:334:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-alz.c:397:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-ar.c:383:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-arj.c:429:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command.c:98:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-cfile.c:692:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-cpio.c:319:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-dpkg.c:305:17: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-iso.c:308:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-jar.c:234:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-lha.c:408:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-lrzip.c:262:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-rar.c:832:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-rpm.c:319:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-tar.c:1267:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-unarchiver.c:361:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-unstuff.c:381:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-zip.c:513:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-command-zoo.c:419:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-window.c:839:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] fr-list-model.c:148:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘const struct _GTypeInfo’} [-Wmissing-field-initializers] fr-process.c:248:3: warning: missing initializer for field ‘value_table’ of ‘GTypeInfo’ {aka ‘struct _GTypeInfo’} [-Wmissing-field-initializers] ui.h:32:2: warning: missing initializer for field ‘accelerator’ of ‘GtkActionEntry’ {aka ‘struct _GtkActionEntry’} [-Wmissing-field-initializers] ui.h:33:2: warning: missing initializer for field ‘accelerator’ of ‘GtkActionEntry’ {aka ‘struct _GtkActionEntry’} [-Wmissing-field-initializers] ui.h:34:2: warning: missing initializer for field ‘accelerator’ of ‘GtkActionEntry’ {aka ‘struct _GtkActionEntry’} [-Wmissing-field-initializers] ui.h:35:2: warning: missing initializer for field ‘accelerator’ of ‘GtkActionEntry’ {aka ‘struct _GtkActionEntry’} [-Wmissing-field-initializers] ui.h:36:2: warning: missing initializer for field ‘accelerator’ of ‘GtkActionEntry’ {aka ‘struct _GtkActionEntry’} [-Wmissing-field-initializers]
2019-09-03remove warnings: cast from function call [-Wbad-function-cast]rbuj3-4/+4
dlg-batch-add.c:513:83: warning: cast from function call of type ‘gint’ {aka ‘int’} to non-matching type ‘double’ [-Wbad-function-cast] 513 | gtk_spin_button_set_value (GTK_SPIN_BUTTON (GET_WIDGET ("a_volume_spinbutton")), (double) g_settings_get_int (data->settings, PREF_BATCH_ADD_VOLUME_SIZE) / MEGABYTE); | ^ dlg-new.c:321:81: warning: cast from function call of type ‘gint’ {aka ‘int’} to non-matching type ‘double’ [-Wbad-function-cast] 321 | gtk_spin_button_set_value (GTK_SPIN_BUTTON (data->n_volume_spinbutton), (double) g_settings_get_int (settings, PREF_BATCH_ADD_VOLUME_SIZE) / MEGABYTE); | ^
2019-09-03remove build warning: local variable shadows another variablerbuj3-10/+8
actions.c:245:24: warning: declaration of ‘dialog’ shadows a previous local [-Wshadow] caja-engrampa.c:137:17: warning: declaration of ‘file’ shadows a previous local [-Wshadow] caja-engrampa.c:58:17: warning: declaration of ‘file’ shadows a previous local [-Wshadow] dlg-add-files.c:120:9: warning: declaration of ‘uri’ shadows a previous local [-Wshadow] fr-window.c:4935:11: warning: declaration of ‘value’ shadows a previous local [-Wshadow]
2019-09-02java-utils: Remove blank spaces before reading package namerbuj1-3/+14
Closes https://github.com/mate-desktop/engrampa/issues/291 Test: touch test.txt zip test.zip test.txt mv test.zip test.jar cat << EOF > HelloWorld.java package org.mate.tests; class HelloWorld { public static void main(String args[]) { System.out.println("Hello, World"); } } EOF engrampa -a test.jar HelloWorld.java jar tf test.jar Output: test.txt org/mate/tests/HelloWorld.java
2019-09-02fr-command-lrzip: Fix empty string checkrbuj1-1/+1
str is empty: if (*str == '\0') {...}
2019-09-01Redundant redeclaration of ‘fr_command_is_capable_of’rbuj1-2/+0
fr-command.h:205:16: warning: redundant redeclaration of ‘fr_command_is_capable_of’ [-Wredundant-decls]
2019-09-01comparison of unsigned expression >= 0 is always truerbuj1-3/+4
java-utils.c:310:23: warning: comparison of unsigned expression >= 0 is always true [-Wtype-limits] 310 | for (i = length; (i >= 0) && (end == 0); i-- ) | ^~
2019-08-30gtk-utils: Remove unused wrapper for gtk_builder_new_from_filerbuj3-23/+0
Unused since https://github.com/mate-desktop/engrampa/commit/0d3a5b087f4bb6c118abe34a14ea27b86583f812
2019-08-29glib-genmarshal warning: BOOL token is deprecatedrbuj2-2/+2
2019-08-28comparison of integers of different signs: 'int' and 'guint'rbuj6-28/+28
Fix compiler warning: comparison of integers of different signs: 'int' and 'guint' (aka 'unsigned int') [-Wsign-compare]
2019-08-27glib-utils: Remove unused function - g_ptr_array_copyrbuj2-17/+0
closes https://github.com/mate-desktop/engrampa/issues/283
2019-08-26return sentence won't be never executed as it's preceded by exitrbuj1-2/+1
Detected by clang static analyzer: $ scan-build -enable-checker alpha.deadcode.UnreachableCode --keep-cc -o html-report make ... exit (EXIT_SUCCESS); return TRUE; /* <= This statement is never executed */ ...