bug-gnu-electric
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

electric crash (6.04)


From: Tuukka Toivonen
Subject: electric crash (6.04)
Date: Wed, 1 Aug 2001 12:23:34 +0300 (EEST)

Here's another trace for a bug. I'll prepare later a demonstration file
which reproduces this unless Steven (or someone else) says the fix is
obvious.

This happens with a couple of certain large libraries, when I first move a
facet from A to B and then move back another facet (which was moved
automatically along the first move) from B to A (using Cross-library Copy)

Program received signal SIGSEGV, Segmentation fault.
0x816a95e in net_nconnect (ai=0x8b852e0, newnetwork=0x8b6e218, 
power=0xbffff008, ground=0xbffff004) at src/net/network.c:2090
(gdb) bt
#0  0x816a95e in net_nconnect (ai=0x8b852e0, newnetwork=0x8b6e218, 
power=0xbffff008, ground=0xbffff004) at src/net/network.c:2090
#1  0x816aa2b in net_nconnect (ai=0x8ba3e48, newnetwork=0x8b6e218, 
power=0xbffff008, ground=0xbffff004) at src/net/network.c:2113
#2  0x8169567 in net_newobject (addr=146423368, type=12) at 
src/net/network.c:1489
#3  0x805db6d in db_broadcastchange (c=0x865e6a8, firstchange=0, undoredo=0) at 
src/db/dbchange.c:333
#4  0x805d8b9 in db_change (obj=146423368, change=3, a1=0, a2=0, a3=0, a4=0, 
a5=0, a6=0) at src/db/dbchange.c:270
#5  0x806461f in db_newarcinst (typ=0x8503590, wid=0, initialbits=813697858, 
nA=0x8a5f850, pA=0x8551280, xA=-191600, yA=32000, nB=0x8ba3d98, pB=0x8ba3cc8, 
xB=-191600, yB=39600, parnt=0x8a4ffb0) at src/db/dbcreate.c:723
#6  0x8092316 in replacenodeinst (ni=0x8b851f8, np=0x8ba38c0, 
ignoreportnames=0, allowmissingports=0) at src/db/dbnoproto.c:2322
#7  0x82ded41 in us_copyrecursively (fromnp=0x8b84050, toname=0x8a4eb58 
"A_INV", tolib=0x8abdbb8, toview=0x84f5ce8, verbose=1, move=1, 
subdescript=0x843dd6e "subfacet ", norelatedviews=0) at src/usr/usrnet.c:831
#8  0x82deb68 in us_copyrecursively (fromnp=0x8b914d8, toname=0x86131b0 
"A_AND2", tolib=0x8abdbb8, toview=0x84f5d30, verbose=1, move=1, 
subdescript=0x843de60 "alternate view ", norelatedviews=0) at 
src/usr/usrnet.c:768
#9  0x82def58 in us_copyrecursively (fromnp=0xffffffff, toname=0x8b7b26d 
"A_AND2", tolib=0x8abdbb8, toview=0x84f5ce8, verbose=1, move=1, 
subdescript=0x84214e8 "", norelatedviews=0) at src/usr/usrnet.c:885
#10 0x822077b in us_copyfacet (count=2, par=0xbffff3ac) at 
src/usr/usrcomcd.c:764
#11 0x826efcb in us_copyfacetdlog (prompt=0x875be18 "x") at 
src/usr/usrdiacom.c:5270
#12 0x82f7c15 in ttygetparam (prompt=0x875be18 "x", parameter=0x8494400, 
keycount=17, paramstart=0xbffff4c0) at src/usr/usrparse.c:1656
#13 0x824f03b in us_terminal (count=4, par=0xbffff4b4) at src/usr/usrcomtv.c:567
#14 0x82f4afc in us_execute (item=0x8653358, print=0, macro=1, fromuser=1) at 
src/usr/usrparse.c:446
#15 0x80cd449 in gra_nextevent () at src/graph/graphunixx11.c:7859
#16 0x80cb28b in waitforbutton (x=0xbffff5d0, y=0xbffff5ce, but=0xbffff5d2) at 
src/graph/graphunixx11.c:6380
#17 0x8203d01 in us_slice () at src/usr/usr.c:1246
#18 0x8062f8e in tooltimeslice () at src/db/dbcontrol.c:254
#19 0x80cccd0 in gra_dowork (client_data=0x0) at src/graph/graphunixx11.c:7491
#20 0x401e1f5e in CallWorkProc () from /usr/X11R6/lib/libXt.so.6
#21 0x401e2181 in XtAppNextEvent () from /usr/X11R6/lib/libXt.so.6
#22 0x401d8107 in XtAppMainLoop () from /usr/X11R6/lib/libXt.so.6
#23 0x80bbc8c in main (argc=1, argv=0xbffff6f4) at src/graph/graphunixx11.c:1074
(gdb) 

2086                         /* see if the two ports connect electrically */
2087                         if (cpp->network != copp->network)
2088                         {
2089                                 /* check for single signals ending up as 
part of another bus */
2090                                 if (newnetwork->signals == 1 && 
copp->network->signals > 1)
2091                                 {
2092                                         for(j=0; j<copp->network->signals; 
j++)
2093                                                 if (cpp->network == 
copp->network->networklist[j]) break;
2094                                         if (j < copp->network->signals)
2095                                                 recheck++;
2096                                 }
2097                                 continue;
2098                         }

newnetwork->signals = 1
copp->network = 0xffffffff

Redo Network Numbering seems not to cure this




reply via email to

[Prev in Thread] Current Thread [Next in Thread]