Bug 643256 - mc crashes on SIGSEV when had copy multiple files
Summary: mc crashes on SIGSEV when had copy multiple files
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: mc
Version: rawhide
Hardware: i686
OS: Linux
low
medium
Target Milestone: ---
Assignee: Jindrich Novy
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Keywords:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-10-15 05:19 UTC by Frantisek Hanzlik
Modified: 2013-07-02 23:49 UTC (History)
5 users (show)

(edit)
Clone Of:
(edit)
Last Closed: 2010-12-09 07:30:05 UTC


Attachments (Terms of Use)

Description Frantisek Hanzlik 2010-10-15 05:19:09 UTC
Maybe this bug appears when mc operate over many (several thousands) files.
In this case I did:

- start mc, cd to my local Fedora 14 i386 updates-testing repo (4321 files)
- on second panel I FTP to Fedora 14 rawhide repo (17845 files):
  "/#ftp:download.fedora.redhat.com/pub/fedora/linux/development/14/i386/os/"
- compare these dirs by file sizes, in local directory it give 2674 equally lenghty files
- pressing F5 (copy) and entering "../../os/Packages/" to copy these 2674 files to my local rawhide repo
- after hitting ENTER to copy start, mc crashes. I's perfectly always repeatable.

When running under gdb with debuginfo pkgs installed, it says:
Program received signal SIGSEGV, Segmentation fault.
0x0808d0ac in file_op_context_create_ui_without_init (ctx=0x82786e8, with_eta=1, dialog_type=FILEGUI_DIALOG_MULTI_ITEM) at filegui.c:347
347                 ui->progress_total_gauge->from_left_to_right = FALSE;


Version-Release number of selected component (if applicable):
mc-4.7.4-2.fc14.i686

Additional info:
It appears as when operate on very small directories (only several tens or hunderts files), all is OK. Crashes when number of files is greater.

Comment 1 Frantisek Hanzlik 2010-10-15 06:53:06 UTC
Small refine: I hasn't checked "Verbose operation" in my default saved configuration. Then mc behaves as I wrote - crashes. But when I check "Verbose operation" box, then mc is working as expected, without crashes.

Comment 2 Jindrich Novy 2010-11-30 12:36:51 UTC
Sorry for later reply, but could you please submit a backtrace and output of "p ui->progress_total_gauge" in gdb here?

Comment 3 Frantisek Hanzlik 2010-12-08 01:30:20 UTC
When it isn't sufficient, please notify me:

Program received signal SIGSEGV, Segmentation fault.
0x0808d0ac in file_op_context_create_ui_without_init (ctx=0x82634b8, with_eta=1, dialog_type=FILEGUI_DIALOG_MULTI_ITEM) at filegui.c:347 
347                 ui->progress_total_gauge->from_left_to_right = FALSE;
(gdb) bt
#0  0x0808d0ac in file_op_context_create_ui_without_init (ctx=0x82634b8, with_eta=1, dialog_type=FILEGUI_DIALOG_MULTI_ITEM) at filegui.c:347
#1  0x0808d120 in file_op_context_create_ui (ctx=0x82634b8, with_eta=1, dialog_type=FILEGUI_DIALOG_MULTI_ITEM) at filegui.c:360
#2  0x0808b13d in panel_operate (source_panel=0x8252cf0, operation=OP_COPY, force_single=0) at file.c:2152
#3  0x0807f049 in copy_cmd () at cmd.c:406
#4  0x0809b8f5 in midnight_execute_cmd (sender=0x8240980, command=7010) at main.c:1030
#5  0x0809c495 in midnight_callback (h=0x82439b0, sender=0x8240980, msg=DLG_ACTION, parm=7010, data=0x0) at main.c:1604
#6  0x0806bc6b in buttonbar_call (w=0x8240980, msg=WIDGET_HOTKEY, parm=1005) at widget.c:3019
#7  buttonbar_callback (w=0x8240980, msg=WIDGET_HOTKEY, parm=1005) at widget.c:3107
#8  0x08061f72 in send_message (h=0x82439b0, key=1005, event=0xbffff554) at dialog.h:269
#9  dlg_try_hotkey (h=0x82439b0, key=1005, event=0xbffff554) at dialog.c:888
#10 dlg_key_event (h=0x82439b0, key=1005, event=0xbffff554) at dialog.c:935
#11 dlg_process_event (h=0x82439b0, key=1005, event=0xbffff554) at dialog.c:1003
#12 0x0806233a in frontend_run_dlg (h=0x82439b0) at dialog.c:1045
#13 run_dlg (h=0x82439b0) at dialog.c:1075
#14 0x0809ce6f in create_panels_and_run_mc (argc=1, argv=0xbffff774) at main.c:1716
#15 do_nc (argc=1, argv=0xbffff774) at main.c:1798
#16 main (argc=1, argv=0xbffff774) at main.c:2048
(gdb) p ui->progress_total_gauge
$1 = (WGauge *) 0x0
(gdb)

Comment 4 Frantisek Hanzlik 2010-12-08 01:53:42 UTC
Addition to my comment #3:
This crash occurs, when I wand copy directory contens (60 normal files) do another directory (/etc/sysconfig/).
MC crashes almost immediately after hit confirmation ENTER - only text in destination field is erased, otherwise screen seems same as before crash.
Crash occurs both in GUI (gnome-terminal) or console - above output is from console run, as in GUI mouse cursor stay in mode when isn't possible capture text on screen (cursor is as arrow, not as vertical line) and I not know how switch it (maybe terminating gdb and then let new mc instance switch to text can help, but...)

Comment 5 Jindrich Novy 2010-12-09 07:30:05 UTC
Found a culprit and it is now fixed. One has to have a "Classic progressbar" switched off to make the crash happen. Thanks for the report!

Comment 6 Fedora Update System 2010-12-09 10:05:05 UTC
mc-4.7.4-3.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/mc-4.7.4-3.fc14

Comment 7 Fedora Update System 2010-12-09 10:07:01 UTC
mc-4.7.4-3.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/mc-4.7.4-3.fc13

Comment 8 Fedora Update System 2011-01-12 17:13:17 UTC
mc-4.7.5-1.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/mc-4.7.5-1.fc14

Comment 9 Fedora Update System 2011-01-12 17:15:37 UTC
mc-4.7.5-1.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/mc-4.7.5-1.fc13

Comment 10 Fedora Update System 2011-01-21 22:52:00 UTC
mc-4.7.5-1.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 11 Fedora Update System 2011-01-21 22:56:32 UTC
mc-4.7.5-1.fc13 has been pushed to the Fedora 13 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.