aboutsummaryrefslogtreecommitdiffstats
path: root/src/firecfg/desktop_files.c
diff options
context:
space:
mode:
authorLibravatar smitsohu <smitsohu@gmail.com>2018-08-28 17:01:59 +0200
committerLibravatar smitsohu <smitsohu@gmail.com>2018-08-28 17:01:59 +0200
commit2d08ecaf45fcf11fd0409995c73cdab37b2b0f56 (patch)
treef02293aa5735709cf69b7fe781792af546d6f389 /src/firecfg/desktop_files.c
parentfix and harden overlay options (diff)
parentmemory leaks (diff)
downloadfirejail-2d08ecaf45fcf11fd0409995c73cdab37b2b0f56.tar.gz
firejail-2d08ecaf45fcf11fd0409995c73cdab37b2b0f56.tar.zst
firejail-2d08ecaf45fcf11fd0409995c73cdab37b2b0f56.zip
Merge branch 'master' of https://github.com/netblue30/firejail
Diffstat (limited to 'src/firecfg/desktop_files.c')
-rw-r--r--src/firecfg/desktop_files.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/firecfg/desktop_files.c b/src/firecfg/desktop_files.c
index 71b39390e..de2b8cfa2 100644
--- a/src/firecfg/desktop_files.c
+++ b/src/firecfg/desktop_files.c
@@ -144,6 +144,8 @@ void fix_desktop_files(char *homedir) {
144 perror("opendir"); 144 perror("opendir");
145 fprintf(stderr, "Warning: cannot access /usr/share/applications directory, desktop files fixing skipped...\n"); 145 fprintf(stderr, "Warning: cannot access /usr/share/applications directory, desktop files fixing skipped...\n");
146 free(user_apps_dir); 146 free(user_apps_dir);
147 if (dir)
148 closedir(dir);
147 return; 149 return;
148 } 150 }
149 151
@@ -266,12 +268,16 @@ void fix_desktop_files(char *homedir) {
266 268
267 if (stat(outname, &sb) == 0) { 269 if (stat(outname, &sb) == 0) {
268 printf(" %s skipped: file exists\n", filename); 270 printf(" %s skipped: file exists\n", filename);
271 if (change_exec)
272 free(change_exec);
269 continue; 273 continue;
270 } 274 }
271 275
272 FILE *fpin = fopen(filename, "r"); 276 FILE *fpin = fopen(filename, "r");
273 if (!fpin) { 277 if (!fpin) {
274 fprintf(stderr, "Warning: cannot open /usr/share/applications/%s\n", filename); 278 fprintf(stderr, "Warning: cannot open /usr/share/applications/%s\n", filename);
279 if (change_exec)
280 free(change_exec);
275 continue; 281 continue;
276 } 282 }
277 283
@@ -279,6 +285,8 @@ void fix_desktop_files(char *homedir) {
279 if (!fpout) { 285 if (!fpout) {
280 fprintf(stderr, "Warning: cannot open ~/.local/share/applications/%s\n", outname); 286 fprintf(stderr, "Warning: cannot open ~/.local/share/applications/%s\n", outname);
281 fclose(fpin); 287 fclose(fpin);
288 if (change_exec)
289 free(change_exec);
282 continue; 290 continue;
283 } 291 }
284 fprintf(fpout, "# converted by firecfg\n"); 292 fprintf(fpout, "# converted by firecfg\n");