1. 11 Feb, 2022 2 commits
  2. 07 Feb, 2022 4 commits
  3. 28 Jan, 2022 1 commit
    • Ignacy Kuchciński's avatar
      extractor: Propagate libarchive errors when metadata is encrypted · b26de9d2
      Ignacy Kuchciński authored
      Currently, when trying to extract password protected 7z/RAR archives
      with encrypted file lists, the reported error message is "empty
      This message is not helpful and may be confusing for users.
      To fix this situation, propagate libarchive errors by swapping the
      "empty archive" and "autoar_common_g_error_new_a" statements.
      Fixes #26
  4. 07 Jan, 2022 1 commit
  5. 07 Dec, 2021 4 commits
    • Ondrej Holy's avatar
      Add missing initialization for g_auto* variables · 97c33177
      Ondrej Holy authored
      When building Fedora package, I see many "may be used uninitialzed"
      warnings. I am not sure why but I don't see those warnings locally even
      when `-Wmaybe-uninitialized` is used. Anyway, this is because the
      `g_autofree` and `g_autoptr` variables are not explicitely initialized
      as mentioned in the documentation. Let's initialize them to get rid of
      those warnings.
    • Ondrej Holy's avatar
      tests: Add test cases for raw format archives · 185684e8
      Ondrej Holy authored
      The raw format archives are not tested currently. Let's two test cass
      to reduce change that their support will be broken again.
      Relates: #38
    • Ondrej Holy's avatar
      extractor: Fix extraction to root directory · 72372764
      Ondrej Holy authored
      An extraction to the root of an archive which contains the "/" path
      leads to crashes. Let's handle this rare corner case.
      Relates: #38
    • Ondrej Holy's avatar
      extractor: Fix extraction of raw format archives · b46a1899
      Ondrej Holy authored
      An extraction of raw format archives leads to crashes currently.
      This is because the generic "data" string is returned from libarchive
      instead of the real pathname, which is not expected currently. Let's
      handle this case properly and fallback to the source basename.
      Fixes: #38
  6. 30 Nov, 2021 1 commit
    • Ondrej Holy's avatar
      tests: Do not left read-only directory in the tree · 0f528ab6
      Ondrej Holy authored
      Currently, various tools fail to remove the read-only directory, which
      is created as an output from the test suite. This for example breaks
      package building when tests are enabled. Let's make it writable again
      when test is done to fix the issue.
      Fixes: #34
  7. 30 Oct, 2021 1 commit
  8. 08 Oct, 2021 1 commit
    • Ondrej Holy's avatar
      extractor: Fix extraction in symlinked locations · 86260357
      Ondrej Holy authored
      The "The file is not a directory" error is returned in case the archive has
      common prefix, which have not been changed over the `decide-destination`
      signal and the destination is a symlink. This is regression caused by the
      commit b9590ab7. It causes that the security checks, which was added by the
      commit 8109c368, verifies also the destination directory by mistake. Let's
      partially rework the problematic commit to avoid this regression.
      Fixes: #36
  9. 13 Sep, 2021 1 commit
    • Ondrej Holy's avatar
      extractor: Return when passphrase prompt was cancelled · cfd15502
      Ondrej Holy authored
      Currently, a misleading error appears when the passphrase prompt in Nautilus
      is cancelled. This is because the `scanned` signal is emitted regardless the
      `cancellable` state. This happens only for archives with one file. Let's
      return immediately to prevent this problematic behavior.
      Fixes: #35
  10. 11 Aug, 2021 3 commits
  11. 10 Aug, 2021 1 commit
  12. 09 Aug, 2021 9 commits
  13. 06 Aug, 2021 1 commit
    • Ondrej Holy's avatar
      ci: Add check for ABI breaks · 2703ca85
      Ondrej Holy authored
      Let's add a check for potential ABI breaks to not break ABI by mistake,
      or to not forget to update the library version.
  14. 05 Aug, 2021 1 commit
    • Ondrej Holy's avatar
      ci: Use fedora:latest instead of rawhide · ca4219a6
      Ondrej Holy authored
      There are various problems with the rawhide image currently and I don't
      know how to workaround them. Let's use fedora:latest (temporarily) to fix
      our pipeline.
  15. 04 Aug, 2021 1 commit
    • Ondrej Holy's avatar
      ci: Add meson to the image · 94948f4f
      Ondrej Holy authored
      The meson package is not part of the CI image as Autotools are used
      currently. Let's add meson as a preparation for the upcoming meson port.
  16. 19 Jul, 2021 1 commit
  17. 08 Jul, 2021 1 commit
    • Ondrej Holy's avatar
      extractor: Ensure that absolute paths are relative to destination · 8bbb2d51
      Ondrej Holy authored
      Currently, archive entries with absolute paths lose their paths when
      extracting, or even cause crashes. The code expects that the
      `autoar_extractor_do_sanitize_pathname` function will always return paths
      inside, or equal to the destination directory, but this is not true. The
      problem is that the `g_file_get_child` resp. `g_file_resolve_relative_path`
      functions expect relative paths, but are used with absolute paths also.
      Let's convert absolute paths to relative ones to ensure that they will
      be exctracted as relative to the destination dir. Also, update the
      corresponding test case to confirm this.
      Fixes: #32
  18. 14 Jun, 2021 1 commit
  19. 04 Jun, 2021 1 commit
  20. 25 May, 2021 4 commits
    • Ondrej Holy's avatar
      tests: Skip conflicting files by default over test-extract · 47b643b2
      Ondrej Holy authored
      By default, the conflicting files are skipped and this default behavior is
      also used by Nautilus and other clients. However, the `test-extract` util
      overwrites the files instead. Let's honor the default behavior here as well
      to make debugging easier.
    • Ondrej Holy's avatar
      extractor: Print debug when conflict happened · 9f4edea8
      Ondrej Holy authored
      The debug output doesn't contain info when conflict happens. This makes
      hard to debug issues which are caused by them. Let's print one when
      a conflict happens to make it obvious.
    • Ondrej Holy's avatar
      extractor: Prevent redundant path name handling for equal prefixes · b9590ab7
      Ondrej Holy authored
      Currently, redundant path name handling happens when archive files have
      a common prefix and an equal destination is returned from the `decide-destination`
      signal. In this case, the old prefix is removed and the new one (the equal one)
      is added again. Let's detect this case and prevent the redundancy.
    • Ondrej Holy's avatar
      extractor: Fix extraction of one file archives · 135053d5
      Ondrej Holy authored
      Currently, an empty folder is created when extracting an archive over
      Nautilus which contains one file with the same name as the archive.
      This is because gnome-autoar always creates the top-level folder, but
      the one file archive with the same name should be extracted directly
      without creating additional folders. Otherwise the `conflict` signal
      is emitted and Nautilus by default skips conflicting files, so only
      empty folder remains after extraction. This problem have not been
      unfortunately noticed by the `test-one-file-same-name` unit test due to
      differences in the `decide-destination` signal handling. Let's do not
      create the top-level folder at all as `g_file_make_directory_with_parents`
      is used later anyway.
      Fixes: #28