Skip to content

Bugfix for filenames with backslash and minor improvements #12

Merged
merged 11 commits into from
Jun 21, 2022
Merged

Commits on Jun 20, 2022

  1. Configuration menu
    Copy the full SHA
    4b45ed5 View commit details
    Browse the repository at this point in the history
  2. fn_escape: Escape backslash in filename

    Fixes: 1c04573 ("fn_escape: Do not use unicode regex")
    
    The commit missed the fact that not only non-graph characters but also
    the backslash character needs to be escaped.
    
    We run into errors when the original filename contains backslash
    characters like
    
       ./udev/links/\x2fdisk\x2fby-id\x2fscsi-35000c50084770037
    
    which is wrongly decoded to
    
       ./udev/links//disk/by-id/scsi-35000c50084770037
    donald committed Jun 20, 2022
    Configuration menu
    Copy the full SHA
    746bd66 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8260d1c View commit details
    Browse the repository at this point in the history
  4. Remove development relict

    Remove three void expressions which were used in early development to
    avoid "unused parameter" warnings when the code was incomplete.
    donald committed Jun 20, 2022
    Configuration menu
    Copy the full SHA
    c4d1b2e View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    a35aa4e View commit details
    Browse the repository at this point in the history
  6. Add G_SPAWN_LEAVE_DESCRIPTORS_OPEN to g_spawn calls

    We don't need g_spawn to close our file descriptiors. However, doing so
    produces unnecessary close() calls and interfers with debugging (e.g.
    valgrind).
    donald committed Jun 20, 2022
    Configuration menu
    Copy the full SHA
    6c53f2c View commit details
    Browse the repository at this point in the history
  7. Switch to glibc getopt_long

    The current option parsing code is based on g_option_context_parse from
    glib. This code doesn't support abbreviated long options.
    
    Additionally, there is a possible memory leak with the current
    implementation, because g_option_context_parse() removes processed
    options from the argument vector so these strings are not freed when
    argv runs out of scope.
    
    Switch to getopt_long.
    
    Because of the differences in the interfaces, we need to change the
    surrounding code a bit.
    donald committed Jun 20, 2022
    Configuration menu
    Copy the full SHA
    ce7a6cb View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    5282a21 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    6789183 View commit details
    Browse the repository at this point in the history
  10. Unify common code

    donald committed Jun 20, 2022
    Configuration menu
    Copy the full SHA
    9abad42 View commit details
    Browse the repository at this point in the history
  11. Don't use --nodelete

    For some reason lost in ancient times, the slave is started with eitehr
    --delete or an explicit --nodelete. The later is not required, because
    that is the default.
    donald committed Jun 20, 2022
    Configuration menu
    Copy the full SHA
    15d25c4 View commit details
    Browse the repository at this point in the history