public inbox for cygwin-xfree@sourceware.org
help / color / mirror / Atom feed
From: Marco Atzeri <marco.atzeri@gmail.com>
To: "cygwin-xfree@cygwin.com" <cygwin-xfree@cygwin.com>
Subject: possible bug in libXt or libXaw
Date: Sat, 15 Nov 2014 23:30:00 -0000	[thread overview]
Message-ID: <5467E20A.4000503@gmail.com> (raw)

testing ncview
http://meteora.ucsd.edu/~pierce/ncview_home_page.html

I found, only on 64 bit, a segfault due to incorrect
widget (aka pointer) value.
It could be a software bug, but it looks to me
more a bug somewhere in the underlying libs

#0  LayoutChild (w=w@entry=0x60014bd50)
     at /usr/src/debug/libXaw-1.0.12-2/src/Form.c:693
#1  0x00000003fa40fc26 in LayoutChild (w=w@entry=0x60014dd30)
     at /usr/src/debug/libXaw-1.0.12-2/src/Form.c:702
#2  0x00000003fa40fc26 in LayoutChild (w=<optimized out>)
     at /usr/src/debug/libXaw-1.0.12-2/src/Form.c:702
#3  0x00000003fa4104ed in Layout (fw=0x600112640, width=<optimized out>,
     height=<optimized out>, force_relayout=1)
     at /usr/src/debug/libXaw-1.0.12-2/src/Form.c:565
#4  0x00000003fa40fb2b in XawFormChangeManaged (w=0x600112640)
     at /usr/src/debug/libXaw-1.0.12-2/src/Form.c:1022
#5  0x00000003fa228f5c in XtUnmanageChildren (children=0x22a880, 
num_children=1)
     at /usr/src/debug/libXt-1.1.4-2/src/Manage.c:184
#6  0x00000003fa229038 in XtUnmanageChild (child=0x60014bd40,
     child@entry=0x60014dd30) at 
/usr/src/debug/libXt-1.1.4-2/src/Manage.c:204
#7  0x00000003fa21b1db in XtPhase2Destroy (widget=0x60014dd30)
     at /usr/src/debug/libXt-1.1.4-2/src/Destroy.c:228
#8  0x00000003fa21b4e8 in _XtDoPhase2Destroy (app=app@entry=0x60003cf50,
     dispatch_level=dispatch_level@entry=1)
     at /usr/src/debug/libXt-1.1.4-2/src/Destroy.c:322
#9  0x00000003fa22018b in XtDispatchEvent (event=0x100632940 <event>)
     at /usr/src/debug/libXt-1.1.4-2/src/Event.c:1432
#10 0x0000000100425526 in x_process_user_input ()
     at /usr/src/debug/ncview-2.1.3-1/src/interface/x_interface.c:2492
#11 0x000000010041f52a in in_process_user_input ()
     at /usr/src/debug/ncview-2.1.3-1/src/interface/interface.c:149
#12 0x0000000100403188 in process_user_input ()
     at /usr/src/debug/ncview-2.1.3-1/src/ncview.c:715
#13 0x00000001004012e4 in main (argc=2, argv=0x22aae0)
     at /usr/src/debug/ncview-2.1.3-1/src/ncview.c:149

(gdb) frame 0
#0  LayoutChild (w=w@entry=0x60014bd50)
     at /usr/src/debug/libXaw-1.0.12-2/src/Form.c:693
693             FormConstraints ref_form = 
(FormConstraints)ref->core.constraints;
(gdb) l
688         }
689
690         form->form.new_x = form->form.dx;
691         form->form.new_y = form->form.dy;
692         if ((ref = form->form.horiz_base) != NULL) {
693             FormConstraints ref_form = 
(FormConstraints)ref->core.constraints;
694
695             LayoutChild(ref);
696             form->form.new_x += ref_form->form.new_x + XtWidth(ref) +
697                                 (XtBorderWidth(ref) << 1);


this is the pointer causing the segfault

(gdb) p form->form.horiz_base
$2 = (Widget) 0x6275705f6779632f

while similar pointers have a much smaller address,

(gdb) p w
$5 = (Widget) 0x60014bd50

so it that an assignment not clearing the upper
portion of the pointer.

Unfortunately my knowledge of Xt and Xaw is very limited so
if someone have any idea how to trace the bug origin,
I will appreciate.

Program and data available at:
http://matzeri.altervista.org/x86_64/ncview/
http://matzeri.altervista.org/works/ncview/

to run the program
ncview sresa1b_ncar_ccsm3_0_run1_200001.nc

just changing the "Var" value 3 or 4 times trigger
the segfault.

Regards
Marco




--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://x.cygwin.com/docs/
FAQ:                   http://x.cygwin.com/docs/faq/


             reply	other threads:[~2014-11-15 23:30 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-15 23:30 Marco Atzeri [this message]
2014-11-16  6:30 ` Mark Geisert
2014-11-16  7:16   ` Marco Atzeri
2014-11-16  9:14     ` Mark Geisert
2014-11-16 16:17       ` Marco Atzeri

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5467E20A.4000503@gmail.com \
    --to=marco.atzeri@gmail.com \
    --cc=cygwin-xfree@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).