Bug 1306413

Summary: [abrt] nano: main(): nano killed by SIGSEGV
Product: [Fedora] Fedora Reporter: Don Swaner <greatauk37>
Component: nanoAssignee: Kamil Dudka <kdudka>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 23CC: dwmw2, jaswinder, kdudka
Target Milestone: ---Keywords: Patch
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
URL: https://retrace.fedoraproject.org/faf/reports/bthash/b226e0193991e9f79830a127d8d38f8a469582b9
Whiteboard: abrt_hash:38d229b90d39107ef3fccc8aa4f670ba58f93a16;
Fixed In Version: nano-2.4.2-3.fc23 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-02-17 03:50:55 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
File: backtrace
none
File: cgroup
none
File: core_backtrace
none
File: dso_list
none
File: environ
none
File: exploitable
none
File: limits
none
File: maps
none
File: mountinfo
none
File: open_fds
none
File: proc_pid_status
none
File: var_log_messages none

Description Don Swaner 2016-02-10 19:01:51 UTC
Description of problem:
1.  edit a file with nano (with "set locking" in .nanorc)
2.  start another nano session on the same file.
3.  at the locking conflict prompt enter N

Version-Release number of selected component:
nano-2.4.2-2.fc23

Additional info:
reporter:       libreport-2.6.4
backtrace_rating: 4
cmdline:        nano temp.txt
crash_function: main
executable:     /usr/bin/nano
global_pid:     3499
kernel:         4.3.5-300.fc23.x86_64
runlevel:       N 5
type:           CCpp
uid:            1000

Truncated backtrace:
Thread no. 1 (0 frames)

Comment 1 Don Swaner 2016-02-10 19:01:58 UTC
Created attachment 1122875 [details]
File: backtrace

Comment 2 Don Swaner 2016-02-10 19:02:00 UTC
Created attachment 1122876 [details]
File: cgroup

Comment 3 Don Swaner 2016-02-10 19:02:01 UTC
Created attachment 1122877 [details]
File: core_backtrace

Comment 4 Don Swaner 2016-02-10 19:02:02 UTC
Created attachment 1122878 [details]
File: dso_list

Comment 5 Don Swaner 2016-02-10 19:02:03 UTC
Created attachment 1122879 [details]
File: environ

Comment 6 Don Swaner 2016-02-10 19:02:05 UTC
Created attachment 1122880 [details]
File: exploitable

Comment 7 Don Swaner 2016-02-10 19:02:06 UTC
Created attachment 1122881 [details]
File: limits

Comment 8 Don Swaner 2016-02-10 19:02:07 UTC
Created attachment 1122882 [details]
File: maps

Comment 9 Don Swaner 2016-02-10 19:02:08 UTC
Created attachment 1122883 [details]
File: mountinfo

Comment 10 Don Swaner 2016-02-10 19:02:09 UTC
Created attachment 1122884 [details]
File: open_fds

Comment 11 Don Swaner 2016-02-10 19:02:11 UTC
Created attachment 1122885 [details]
File: proc_pid_status

Comment 12 Don Swaner 2016-02-10 19:02:12 UTC
Created attachment 1122886 [details]
File: var_log_messages

Comment 13 Kamil Dudka 2016-02-10 19:21:43 UTC
*** Bug 1306272 has been marked as a duplicate of this bug. ***

Comment 14 Kamil Dudka 2016-02-10 19:23:13 UTC
The backtrace does not make any sense to me.  Are you sure you have up2date debuginfo packages installed?

Comment 15 Don Swaner 2016-02-10 19:59:27 UTC
5 or 8 new packages were automatically installed today during the reporting of this bug (1306413), so I assume the debuginfo is current.  If there is some additional check I need to do to insure it is current, I don't know how to do that.

Comment 16 Kamil Dudka 2016-02-11 13:26:43 UTC
The backtrace is actually correct although it contains only the main() frame.  Sorry for not recognizing it previously!  The following patch will fix it:

--- a/src/nano.c
+++ b/src/nano.c
@@ -520,15 +520,12 @@ openfilestruct *make_new_opennode(void)
     openfilestruct *newnode =
        (openfilestruct *)nmalloc(sizeof(openfilestruct));

-    newnode->filename = NULL;
-    newnode->fileage = NULL;
-    newnode->filebot = NULL;
-    newnode->edittop = NULL;
-    newnode->current = NULL;
+    /* make sure that everything is initialized instead of open-coding
+     * NULL assignments that compilers do not check for completeness */
+    memset(newnode, 0, sizeof *newnode);
+
 #ifndef NANO_TINY
-    newnode->current_stat = NULL;
     newnode->last_action = OTHER;
-    newnode->lock_filename = NULL;
 #endif

     return newnode;

Comment 17 Kamil Dudka 2016-02-11 13:30:19 UTC
pushed to the f23 branch dist-git:

http://pkgs.fedoraproject.org/cgit/rpms/nano.git/commit/?id=798e2b0d

Comment 18 Fedora Update System 2016-02-11 13:40:21 UTC
nano-2.4.2-3.fc23 has been submitted as an update to Fedora 23. https://bodhi.fedoraproject.org/updates/FEDORA-2016-7cad63cca8

Comment 19 Don Swaner 2016-02-11 14:45:50 UTC
The bug occurred when nano was executed in a MATE terminal with monospace 12 font size.  If I "zoom out" so that the font size is smaller, then the bug does not occur.

Comment 20 Kamil Dudka 2016-02-11 15:05:37 UTC
Could you please re-test it with nano-2.4.2-3.fc23?

http://koji.fedoraproject.org/koji/buildinfo?buildID=734964

Comment 21 Fedora Update System 2016-02-14 16:23:46 UTC
nano-2.4.2-3.fc23 has been pushed to the Fedora 23 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2016-7cad63cca8

Comment 22 Fedora Update System 2016-02-17 03:50:53 UTC
nano-2.4.2-3.fc23 has been pushed to the Fedora 23 stable repository. If problems still persist, please make note of it in this bug report.