[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: Gattrib bugs fixed (hopefully). Please test!!



Hi Stuart,
unfortunately the bugs found by Dan didn't solve the bug report I did.

I was searching a little more, and I think it has something to do with
the gtk library. However, I don't know yet what is the problem.

I added some printf to the x_window_add_item function, so it looks like
this:

------- At the end of x_window_add_item 
#ifdef DEBUG
  printf("Showing all stuff.\n");
#endif
  if (sheet_head->pin_count > 0) {
    gtk_widget_show( GTK_WIDGET(sheets[2]) );
    gtk_widget_show( GTK_WIDGET(scrolled_windows[2]) );
  }

  gtk_widget_show( GTK_WIDGET(notebook) );
  gtk_widget_show( GTK_WIDGET(main_vbox) );
  gtk_widget_show( GTK_WIDGET(window) ); 

#ifdef DEBUG
  printf("End of x_window_add_items\n");
#endif

  return;

}

------------------ end of code

I run it again with the schematic attached, and I got:

------ begin of console output
In x_window_add_items, now load up the row and column labels.
In x_window_add_items, now put comp attrib values in the comp sheet.
In x_window_add_items, now put net attrib values in the net sheet.
In x_window_add_items, now put pin attrib values in the pin sheet.
Showing all stuff.

(gattrib:4791): Gtk-WARNING **: gtkwidget.c:7100: widget class
`GtkSheet' has no property named `default_border'

(gattrib:4791): Gtk-WARNING **: gtkwidget.c:7100: widget class
`GtkSheet' has no property named `default_outside_border'

----- end of console output.

It hangs, so I hit Ctrl+C .

Notice that the printf("End of x_window_add_items\n"); is not executed.
In fact, gattrib hangs inside gtk_widget_show( GTK_WIDGET(window) ), and
looking at the Gtk-WARNINGS, it seems to be something about some
properties in GtkSheet.
I tried to remove all calls to g_container_set_border_width inside
gattrib's code. When I tried that, gattrib continues a little more
inside its code, but it hanged again in another place, with the same
Gtk-WARNINGS.

I'm using GTK 2.6.2. Which GTK versions has gattrib been tested with?

Cheers,

Carlos


El dom, 06-03-2005 a las 15:36 -0500, Stuart Brorson escribió:
> Geda-users and Carlos,
> 
> Carlos sent me a bug report in gattrib a while back:  It would crash
> (segfault) when he tried to run one (or any) of the examples bundled
> with gschem.  I was never able to reproduce his bug on my machine.
> 
> Dan meanwhile sent me some bugs he found by turning on -wall during
> gattrib compilation.  Gattrib was using some uninitialized string
> variables.  It is likely (I hope) that these bugs were the root of
> Carlos's problem -- with uninitialized strings the program will
> sometimes work, and sometimes die.  It just depends upon luck, and the
> exact way your memory is layed out at the particular time when you
> run, I guess. 
> 
> I have just fixed these problems, and uploaded the latest to CVS.
> Carlos & others, please take some time to download the latest gattrib
> and run it against the gEDA examples, or your favorite design.  If you
> experience any crashes, please let me know!  I appreciate your help in
> testing this program!   
> 
> Thanks,
> 
> Stuart
-- 
Carlos Nieves Ónega <cnieves@xxxxxxxxxx>
v 20041228 1
N 21600 30400 21300 30400 4
N 21600 31300 21300 31300 4
N 22900 30200 24400 30200 4
{
T 24000 30300 5 10 1 1 0 0 1
netname=Q_L
}
N 22900 31500 24400 31500 4
{
T 24000 31600 5 10 1 1 0 0 1
netname=Q_H
}
N 23200 31500 23200 31200 4
N 23200 30500 23200 30200 4
N 21600 31700 19700 31700 4
{
T 19700 31800 5 10 1 1 0 0 1
netname=SET_L
}
N 21600 30000 19700 30000 4
{
T 19700 30100 5 10 1 1 0 0 1
netname=RESET_L
}
N 21300 30400 21300 30600 4
N 21300 31100 21300 31300 4
N 21300 31100 23200 30500 4
N 23200 31200 21300 30600 4
C 17000 16500 0 0 0 title-C.sym
T 20600 28800 9 14 1 0 0 0 1
SET-RESET FLIP-FLOP
N 21600 25400 21300 25400 4
N 21600 26300 21300 26300 4
N 22900 25200 24400 25200 4
{
T 24000 25300 5 10 1 1 0 0 1
netname=Q_L
}
N 22900 26500 24400 26500 4
{
T 24000 26600 5 10 1 1 0 0 1
netname=Q_H
}
N 23200 26500 23200 26200 4
N 23200 25500 23200 25200 4
N 21600 26700 19700 26700 4
{
T 19700 26800 5 10 1 1 0 0 1
netname=SET_H
}
N 21600 25000 19700 25000 4
{
T 19700 25100 5 10 1 1 0 0 1
netname=RESET_H
}
N 21300 25400 21300 25600 4
N 21300 26100 21300 26300 4
N 21300 26100 23200 25500 4
N 23200 26200 21300 25600 4
T 20600 23800 9 14 1 0 0 0 1
SET-RESET FLIP-FLOP
T 21400 28400 9 12 1 0 0 0 1
NAND GATES
T 21400 23400 9 12 1 0 0 0 1
NOR GATES
T 32500 17400 9 14 1 0 0 0 1
Flip-Flops
T 32100 16900 9 8 1 0 0 0 1
flipflop.sch
T 32500 16600 9 8 1 0 0 0 1
1
T 34100 16600 9 8 1 0 0 0 1
1
T 36300 16900 9 8 1 0 0 0 1
1
T 36300 16600 9 8 1 0 0 0 1
Ales V. Hvezda
N 29800 30500 29500 30500 4
N 29800 31400 29500 31400 4
N 31400 31600 31400 31300 4
N 31400 30600 31400 30300 4
N 29500 30500 29500 30700 4
N 29500 31200 29500 31400 4
N 29500 31200 31400 30600 4
N 31400 31300 29500 30700 4
N 31100 31600 31400 31600 4
N 29800 31800 29200 31800 4
N 29800 27500 29500 27500 4
N 29800 28400 29500 28400 4
N 31400 27600 31400 27300 4
N 29500 27500 29500 27700 4
N 29500 28200 29500 28400 4
N 29500 28200 31400 27600 4
N 31400 28300 29500 27700 4
N 31400 28300 31400 28800 4
N 29800 27100 28000 27100 4
{
T 28000 27200 5 10 1 1 0 0 1
netname=D_H
}
N 28800 30100 28800 28800 4
N 28800 29500 28000 29500 4
{
T 28000 29600 5 10 1 1 0 0 1
netname=C_H
}
N 28800 30100 29800 30100 4
N 28800 28800 29800 28800 4
N 29800 29200 29500 29200 4
N 29500 29200 29500 29400 4
N 29200 31800 29200 26400 4
N 29200 26400 31300 26400 4
N 31300 26400 31300 27300 4
N 31100 27300 31400 27300 4
N 32400 29200 32100 29200 4
N 32400 29900 32100 29900 4
N 32100 29200 32100 29400 4
N 32100 29700 32100 29900 4
N 34000 30100 34000 29800 4
N 34000 29300 34000 29000 4
N 33700 29000 35000 29000 4
{
T 34600 29100 5 10 1 1 0 0 1
netname=Q_L
}
N 33700 30100 35000 30100 4
{
T 34600 30200 5 10 1 1 0 0 1
netname=Q_H
}
N 34000 29300 32100 29700 4
N 32100 29400 34000 29800 4
N 31300 30300 31300 30000 4
N 31300 30000 29500 29400 4
N 31100 28800 32400 28800 4
N 31100 30300 32400 30300 4
T 31700 30400 9 10 1 0 0 0 1
SET
T 31500 28900 9 10 1 0 0 0 1
RESET
T 30100 25600 9 14 1 0 0 0 1
D FLIP-FLOP
T 29200 25200 9 12 1 0 0 0 1
POSITIVE-EDGE TRIGGERED
N 24800 20400 24500 20400 4
N 24800 21300 24500 21300 4
N 26100 20200 27600 20200 4
{
T 27200 20300 5 10 1 1 0 0 1
netname=Q_L
}
N 26100 21500 27600 21500 4
{
T 27200 21600 5 10 1 1 0 0 1
netname=Q_H
}
N 26400 21500 26400 21200 4
N 26400 20500 26400 20200 4
N 24500 20400 24500 20600 4
N 24500 21100 24500 21300 4
N 24500 21100 26400 20500 4
N 26400 21200 24500 20600 4
N 22500 21500 22000 21500 4
N 22000 21500 22000 20200 4
N 22000 20200 22500 20200 4
N 23800 20000 24800 20000 4
N 23800 21700 24800 21700 4
N 22500 21900 19700 21900 4
{
T 19700 22000 5 10 1 1 0 0 1
netname=D_H
}
N 22000 20900 19700 20900 4
{
T 19700 21000 5 10 1 1 0 0 1
netname=C_H
}
N 20500 19800 20500 21900 4
N 21900 19800 22500 19800 4
N 20800 19800 20500 19800 4
T 23000 18700 9 14 1 0 0 0 1
D LATCH
N 32200 22100 30300 22100 4
{
T 30300 22200 5 10 1 1 0 0 1
netname=INPUT_H
}
N 33800 22100 34500 22100 4
N 34500 22100 34500 20800 4
N 34500 20800 31700 20800 4
N 31700 20800 31700 23100 4
N 31700 23100 32200 23100 4
N 35700 23100 33800 23100 4
{
T 35100 23200 5 10 1 1 0 0 1
netname=DIV_2_H
}
N 33000 21500 33000 21400 4
N 33000 23800 33000 23700 4
T 32200 19900 9 14 1 0 0 0 1
DIVIDE BY 2
C 21600 31000 1 0 0 7400-1.sym
{
T 21900 31900 5 10 1 1 0 0 1
refdes=U1
}
C 21600 29700 1 0 0 7400-1.sym
{
T 21900 30600 5 10 1 1 0 0 1
refdes=U2
}
C 21400 30000 1 0 0 decon-1.sym
C 21400 31700 1 0 0 decon-1.sym
C 21600 26000 1 0 0 7402-1.sym
{
T 21900 26900 5 10 1 1 0 0 1
refdes=U3
}
C 21600 24700 1 0 0 7402-1.sym
{
T 21900 25600 5 10 1 1 0 0 1
refdes=U4
}
C 29800 31100 1 0 0 7400-1.sym
{
T 30100 32000 5 10 1 1 0 0 1
refdes=U5
}
C 29800 29800 1 0 0 7400-1.sym
{
T 30100 30700 5 10 1 1 0 0 1
refdes=U6
}
C 29800 26800 1 0 0 7400-1.sym
{
T 30100 27700 5 10 1 1 0 0 1
refdes=U7
}
C 29800 28300 1 0 0 7410-1.sym
{
T 30200 29200 5 10 1 1 0 0 1
refdes=U8
}
C 32400 29600 1 0 0 7400-1.sym
{
T 32700 30500 5 10 1 1 0 0 1
refdes=U9
}
C 32400 28500 1 0 0 7400-1.sym
{
T 32700 29400 5 10 1 1 0 0 1
refdes=U10
}
C 22500 19500 1 0 0 7400-1.sym
{
T 22800 20400 5 10 1 1 0 0 1
refdes=U11
}
C 22500 21200 1 0 0 7400-1.sym
{
T 22800 22100 5 10 1 1 0 0 1
refdes=U12
}
C 24800 21000 1 0 0 7400-1.sym
{
T 25100 21900 5 10 1 1 0 0 1
refdes=U13
}
C 24800 19700 1 0 0 7400-1.sym
{
T 25100 20600 5 10 1 1 0 0 1
refdes=U14
}
C 20800 19300 1 0 0 7404-2.sym
{
T 21100 20200 5 10 1 1 0 0 1
refdes=U15
}
C 32200 21500 1 0 0 7474-1.sym
{
T 33500 23500 5 10 1 1 0 6 1
refdes=U16
T 32200 21500 5 10 1 0 0 0 1
description=description
}
C 33200 21400 1 180 0 vdd-1.sym
C 32800 23800 1 0 0 vdd-1.sym
C 32000 23100 1 0 0 decon-1.sym