From 583c6a9f3d6bfbaa810f163328f36356ec55b52e Mon Sep 17 00:00:00 2001
From: Mooffie <mooffie@gmail.com>
Date: Thu, 14 Jul 2016 22:56:58 +0300
Subject: [PATCH] Ticket #3663: panelize resets marks on marked files.
---
src/filemanager/panel.c | 14 ++------------
1 file changed, 2 insertions(+), 12 deletions(-)
diff --git a/src/filemanager/panel.c b/src/filemanager/panel.c
index 28cf315..3c98598 100644
a
|
b
|
reload_panelized (WPanel * panel) |
4057 | 4057 | { |
4058 | 4058 | vfs_path_t *vpath; |
4059 | 4059 | |
4060 | | if (list->list[i].f.marked) |
4061 | | { |
4062 | | /* Unmark the file in advance. In case the following mc_lstat |
4063 | | * fails we are done, else we have to mark the file again |
4064 | | * (Note: do_file_mark depends on a valid "list->list [i].buf"). |
4065 | | * IMO that's the best way to update the panel's summary status |
4066 | | * -- Norbert |
4067 | | */ |
4068 | | do_file_mark (panel, i, 0); |
4069 | | } |
4070 | 4060 | vpath = vfs_path_from_str (list->list[i].fname); |
4071 | 4061 | if (mc_lstat (vpath, &list->list[i].st) != 0) |
4072 | 4062 | g_free (list->list[i].fname); |
4073 | 4063 | else |
4074 | 4064 | { |
4075 | | if (list->list[i].f.marked) |
4076 | | do_file_mark (panel, i, 1); |
4077 | 4065 | if (j != i) |
4078 | 4066 | list->list[j] = list->list[i]; |
4079 | 4067 | j++; |
… |
… |
reload_panelized (WPanel * panel) |
4085 | 4073 | else |
4086 | 4074 | list->len = j; |
4087 | 4075 | |
| 4076 | recalculate_panel_summary (panel); |
| 4077 | |
4088 | 4078 | if (panel != current_panel) |
4089 | 4079 | (void) mc_chdir (current_panel->cwd_vpath); |
4090 | 4080 | } |