Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 6 Jun 2006 10:35:55 GMT
From:      Yoshiaki Kasahara <kasahara@nc.kyushu-u.ac.jp>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/98590: [FIX] ports rxvt-devel on amd64 crashes inside rxvt_selection_send()
Message-ID:  <200606061035.k56AZtFH078206@www.freebsd.org>
Resent-Message-ID: <200606061040.k56AeT3R013633@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         98590
>Category:       ports
>Synopsis:       [FIX] ports rxvt-devel on amd64 crashes inside rxvt_selection_send()
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Jun 06 10:40:28 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Yoshiaki Kasahara
>Release:        FreeBSD 6.1-STABLE amd64
>Organization:
Kyushu University
>Environment:
FreeBSD elvenbow.cc.kyushu-u.ac.jp 6.1-STABLE FreeBSD 6.1-STABLE #0: Mon May  8 16:54:22 JST 2006     root@elvenbow.cc.kyushu-u.ac.jp:/usr/obj/usr/src/sys/ELVENBOW  amd64

>Description:
I experienced repeatable crashes of x11/rxvt-devel with sysutils/synergy on amd64, saying "rxvt: XError: Request 18 . 0, Error: 2".  It always happened when a selection was active on the rxvt and the mouse pointer moved off from the X display to the synergy client display.

Here is the cause:  (screen.c line 3549~ inside rxvt_selection_send())

    } else if (rq->target == r->h->xa[XA_TIMESTAMP] && r->selection.text) {
        XChangeProperty(r->Xdisplay, rq->requestor, rq->property, XA_INTEGER,
                        (8 * sizeof(Time)), PropModeReplace,
                        (unsigned char *)&r->h->selection_time, 1);

On amd64, sizeof(Time) is 8, but 64 is invalid for XChangeProperty(),
and it generates BadValue error.  It should be 32 instead, which means "long".


>How-To-Repeat:
Configure a synergy client and a synergy server.  Run rxvt-devel on the server side.
Select some text on the rxvt by a mouse.  Move the pointer over to the client side.

(I couldn't find more convenient way to invoke rxvt_selection_send)

>Fix:
Change (8 * sizeof(Time)) to 32 (more appropriate macro available?).


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200606061035.k56AZtFH078206>