From 44b827bb9f4d6a4248f79436c59597fe8345241e Mon Sep 17 00:00:00 2001 From: Andrew Borodin Date: Thu, 17 Nov 2011 16:30:23 +0300 Subject: [PATCH] Fixes segfault after switch panel mode ...from non-listing one (info, tree, quick view) to panelization. Signed-off-by: Andrew Borodin --- src/filemanager/panelize.c | 6 ++++-- src/filemanager/panelize.h | 2 ++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/filemanager/panelize.c b/src/filemanager/panelize.c index 48ecc2a00..df8f3b1f9 100644 --- a/src/filemanager/panelize.c +++ b/src/filemanager/panelize.c @@ -52,6 +52,7 @@ #include "dir.h" #include "midnight.h" /* current_panel */ +#include "panel.h" /* WPanel */ #include "panelize.h" @@ -484,9 +485,10 @@ panelize_save_panel (struct WPanel *panel) void cd_panelize_cmd (void) { - WPanel *panel = MENU_PANEL_IDX == 0 ? left_panel : right_panel; + if (get_display_type (MENU_PANEL_IDX) != view_listing) + set_display_type (MENU_PANEL_IDX, view_listing); - do_panelize_cd (panel); + do_panelize_cd ((struct WPanel *) get_panel_widget (MENU_PANEL_IDX)); } /* --------------------------------------------------------------------------------------------- */ diff --git a/src/filemanager/panelize.h b/src/filemanager/panelize.h index e7f47dada..13addb1b4 100644 --- a/src/filemanager/panelize.h +++ b/src/filemanager/panelize.h @@ -11,6 +11,8 @@ /*** structures declarations (and typedefs of structures)*****************************************/ +struct WPanel; + /*** global variables defined in .c file *********************************************************/ /*** declarations of public functions ************************************************************/ -- 2.11.4.GIT