This is the mail archive of the insight@sources.redhat.com mailing list for the Insight project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

[macgregorsoftware@worldnet.att.net: [Fwd: Insight problem]]


I'm forwarding your problem to the insight mailing list.

You might want to subscribe to this list by sending email to

insight-subscribe@sources.redhat.com

cgf

----- Forwarded message from "James A. MacGregor III" <macgregorsoftware@worldnet.att.net> -----

From: "James A. MacGregor III" <macgregorsoftware@worldnet.att.net>
To: cgf@redhat.com
Subject: [Fwd: Insight problem]
Date: Mon, 13 Nov 2000 07:57:13 -0500
Reply-To: jamesm@macraigor.com
Organization: MacGregor Software Incorporated

Mr Faylor:

    We built Insight with the cvs version. We are still seeing the
problem ie ::
        - only in power pc builds
        - insight generates an exception when run without the -nw option

        - runs fine with the -nw option.


    is still there.
    Are we doing something wrong?

    Jim MacGregor
    Macraigor Systems LLC

From: "Peter Reilley" <micrio@mv.com>
To: "Jim McGreggor" <jamesm@macraigor.com>
Subject: Insight problem
Date: Sun, 12 Nov 2000 17:31:46 -0500

Running insight results in the following exception.
If I run insight --nw everything works fine.

Pete.

----------------------------------------------------

This is the Win98 exception report


GDB caused an invalid page fault in
module CYGTK80.DLL at 0167:6633c554.
Registers:
EAX=02fff798 CS=0167 EIP=6633c554 EFLGS=00010202
EBX=0527bb28 SS=016f ESP=0f03f4d8 EBP=0f03f4f0
ECX=61083de4 DS=016f ESI=0527bb28 FS=3d9f
EDX=05285138 ES=016f EDI=0506ede8 GS=0000
Bytes at CS:EIP:
39 50 08 75 07 c7 40 08 00 00 00 00 39 58 04 75 
Stack dump:
05249aa8 0527bb28 0f03f590 6637c07f 05249aa8 0527bb28 
0f03f590 6637c0a1 0527bb28 0527bb28 0f03f590 6637c098 
0527bb28 05367448 818eece4 6104477f 


-------------------------------------------------------

Here is the offending routine.   The exception occured at: 6633c554.

6633c528 <_TkEventDeadWindow>:
6633c528: 55                    push   %ebp
6633c529: 89 e5                 mov    %esp,%ebp
6633c52b: 83 ec 14              sub    $0x14,%esp
6633c52e: 53                    push   %ebx
6633c52f: 8b 5d 08              mov    0x8(%ebp),%ebx
6633c532: 83 bb 9c 00 00 00 00  cmpl   $0x0,0x9c(%ebx)
6633c539: 74 4d                 je     6633c588 <_TkEventDeadWindow+0x60>
6633c53b: 90                    nop    
6633c53c: 8b 93 9c 00 00 00     mov    0x9c(%ebx),%edx
6633c542: 8b 42 0c              mov    0xc(%edx),%eax
6633c545: 89 83 9c 00 00 00     mov    %eax,0x9c(%ebx)
6633c54b: a1 d8 3e 38 66        mov    0x66383ed8,%eax
6633c550: 85 c0                 test   %eax,%eax
6633c552: 74 1f                 je     6633c573 <_TkEventDeadWindow+0x4b>

Offending code:
6633c554: 39 50 08              cmp    %edx,0x8(%eax)
6633c557: 75 07                 jne    6633c560 <_TkEventDeadWindow+0x38>
6633c559: c7 40 08 00 00 00 00  movl   $0x0,0x8(%eax)
6633c560: 39 58 04              cmp    %ebx,0x4(%eax)
6633c563: 75 07                 jne    6633c56c <_TkEventDeadWindow+0x44>
6633c565: c7 40 04 00 00 00 00  movl   $0x0,0x4(%eax)
6633c56c: 8b 40 0c              mov    0xc(%eax),%eax
6633c56f: 85 c0                 test   %eax,%eax
6633c571: 75 e1                 jne    6633c554 <_TkEventDeadWindow+0x2c>
6633c573: 83 c4 f4              add    $0xfffffff4,%esp
6633c576: 52                    push   %edx
6633c577: e8 0c 0f 04 00        call   6637d488 <_Tcl_Free>
6633c57c: 83 c4 10              add    $0x10,%esp
6633c57f: 83 bb 9c 00 00 00 00  cmpl   $0x0,0x9c(%ebx)
6633c586: 75 b4                 jne    6633c53c <_TkEventDeadWindow+0x14>
6633c588: 8b 5d e8              mov    0xffffffe8(%ebp),%ebx
6633c58b: 89 ec                 mov    %ebp,%esp
6633c58d: 5d                    pop    %ebp
6633c58e: c3                    ret    
6633c58f: 90                    nop    

--------------------------------------------------------------

Here is the C code from tkEvent.c
If I read my assembly correctly the offending code is 
marked with >>>>


/*
 *--------------------------------------------------------------
 *
 * TkEventDeadWindow --
 *
 * This procedure is invoked when it is determined that
 * a window is dead.  It cleans up event-related information
 * about the window.
 *
 * Results:
 * None.
 *
 * Side effects:
 * Various things get cleaned up and recycled.
 *
 *--------------------------------------------------------------
 */

void
TkEventDeadWindow(winPtr)
    TkWindow *winPtr;  /* Information about the window
     * that is being deleted. */
{
    register TkEventHandler *handlerPtr;
    register InProgress *ipPtr;

    /*
     * While deleting all the handlers, be careful to check for
     * Tk_HandleEvent being about to process one of the deleted
     * handlers.  If it is, tell it to quit (all of the handlers
     * are being deleted).
     */

    while (winPtr->handlerList != NULL) {
 handlerPtr = winPtr->handlerList;
 winPtr->handlerList = handlerPtr->nextPtr;
 for (ipPtr = pendingPtr; ipPtr != NULL; ipPtr = ipPtr->nextPtr) {
>>>>     if (ipPtr->nextHandler == handlerPtr) {
  ipPtr->nextHandler = NULL;
     }
     if (ipPtr->winPtr == winPtr) {
  ipPtr->winPtr = None;
     }
 }
 ckfree((char *) handlerPtr);
    }
}



----- End forwarded message -----

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]