xaizek / vifm (License: GPLv2+) (since 2018-12-07)
Vifm is a file manager with curses interface, which provides Vi[m]-like environment for managing objects within file systems, extended with some useful ideas from mutt.
Commit 58327fd08a519ee8923e970753496472f4f4a792

Fix recursion on discovering .desktop files
The directories that contain them shouldn't actually have
subdirectories, but keeping the code there just in case. Since
subdirectories are visited, whatever is found in them shouldn't be
discarded and no memory should be leaked.
Author: xaizek
Author date (UTC): 2026-10-04 12:34
Committer name: xaizek
Committer date (UTC): 2026-10-18 13:17
Parent(s): 2eeb5e480cf8a8f6607f4d1a38dd7d7978ff4ef9
Signing key: 99DC5E4DB05F6BE2
Tree: 4e754ceaa924d13936bc9e18610d65362db68075
File Lines added Lines deleted
ChangeLog 2 0
src/int/desktop.c 1 1
File ChangeLog changed (mode: 100644) (index 4ddce4fda..befce3a93)
44 44 Fixed cleaning up IPC pipe file on exiting after handling `--remote` or Fixed cleaning up IPC pipe file on exiting after handling `--remote` or
45 45 `--remote-expr`. `--remote-expr`.
46 46
47 Fixed an unlikely memory leak on discovering .desktop files.
48
47 49 0.14.3 to 0.14.4 (2026-05-31) 0.14.3 to 0.14.4 (2026-05-31)
48 50
49 51 Added example of handling .deb-files to sample vifmrc. Patch by Kirill Added example of handling .deb-files to sample vifmrc. Patch by Kirill
File src/int/desktop.c changed (mode: 100644) (index 20ad2a037..a83768209)
... ... parse_desktop_files_internal(const char path[], const char mime_type[],
82 82 dentry->d_name); dentry->d_name);
83 83 if(get_dirent_type(dentry, full_path) == DT_DIR) if(get_dirent_type(dentry, full_path) == DT_DIR)
84 84 { {
85 parse_desktop_files(full_path, mime_type);
85 parse_desktop_files_internal(full_path, mime_type, result);
86 86 } }
87 87 else else
88 88 { {
Hints

Before first commit, do not forget to setup your git environment:
git config --global user.name "your_name_here"
git config --global user.email "your@email_here"

Clone this repository using HTTP(S):
git clone https://code.reversed.top/user/xaizek/vifm

Clone this repository using ssh (do not forget to upload a key first):
git clone ssh://rocketgit@code.reversed.top/user/xaizek/vifm

You are allowed to anonymously push to this repository.
This means that your pushed commits will automatically be transformed into a pull request:
... clone the repository ...
... make some changes and some commits ...
git push origin master