#90 mged segfault

crash or data loss
closed-works-for-me
Sean Morrison
Modeling (29)
5
2010-04-09
2006-10-30
Karel Kulhavy
No

I copied one prim to another and then started to edit
the copy. MGED segfaulted. Maybe because I didn't do "B
copy.s"?

I think the original was called sym1.s and the copy was
called sym2.s or sym3.s or sym4.s.

Couldn't reproduce, as usual.

#0 0x1c0c0240 in dotitles (overlay_vls=0xcfbcce00) at
titles.c:261
path_lhs = {vls_magic = -1993131077,
vls_str = 0x85f32900 "/sym1.s/\200š\232\210",
vls_offset = 0, vls_len = 12,
vls_max = 192}
path_rhs = {vls_magic = -1993131077, vls_str =
0x0, vls_offset = 0,
vls_len = 0, vls_max = 0}
dp = (struct directory *) 0xf
i = 2
x = 72680722
y = 2122244096
temp = {0, 0, 0}
yloc = -2088404992
xloc = -2088404992
scroll_ybot = 151030621
vls = {vls_magic = -1993131077, vls_str = 0x0,
vls_offset = 0,
vls_len = 0, vls_max = 0}
cent_x =
",\224Đ}\a\000\000\000\a\000\000\0004ř\026\210", '\0'
<repeats 17 times>,
"x\205\203\000x\205\203\001\000\000\000\000\000\000\000\000x\205\203\000x\205\203ŘÍźĎ\bĘ\005\034\000ě\026\2104ř\026\210\000\000đ?˙˙˙˙"
cent_y =
"\000 |\210Ř)&,(ĚźĎĐľ&\f,\225Đ}˙\000\000\0008̟Ϲ &\f\000 |\210Ř)&,8ĚźĎ\aĽ&\f\000\221*\200¨,&/\210̟Ϫź&\017˙\000\000\000˙\000\000\000˙\000\000\000D\225Đ}"
cent_z =
"\000ŕ~~Đł˙(\000\221*\200Ř)&,\000\000\000\000\000\000đż\000\000---Type
<return> to continue, or q <return> to quit---
\000\000\022Ž(\f\000\000\000\000\000\000\000\000\000\221*\200Ř)&,\000x\205\203pĚźĎ\bĚźĎÔÖ(\fE\000\000\000,\225Đ}Hý\212\217\006ˇ(\f"
size = '\0' <repeats 16 times>,
"#B\222\fĄ\234Ç;", '\0' <repeats 38 times>,
"đ?Ä ˙(\ft\001<\000\000\000\000\022Ž(\f"
ang_x =
"\000\000\000\000Đł˙(xËźĎ u\000\t\000\000\000\000\000\000đ?",
'\0' <repeats 38 times>, "đ?", '\0' <repeats 15 times>
ang_y =
"\000\000\000\000Đł˙(ŘĘźĎĐł˙(\000ŕ~~\017\000\000\000\b˟Ϟ¤\000\tlű˙(\017\000\000\000\030ËźĎ\036¤\000\t$\000\000\000\000\000\000\000\030ËźĎĐł˙(\000ŕ~~ě ˙(x˟Ϟy\000\t"
ang_z =
"\000 |\210¨,&/\210̟ϣš&\017@ĚźĎ\000\000\000\000\000\000\200żwš&\017\000FĐ\202\000\000\000\0008ĚźĎ?\213\000\tpo\"ă`\233\224\201°ĘźĎ\000ŕ~~Ä ˙(`\233\224\201\000\000\000\000\232Ľ\000\t"
ss_line_not_drawn = 1
tmp_val = -1.075674736973566e-291
#1 0x1c094f5c in refresh () at ged.c:1859
p = (struct dm_list *) 0x802a5000
save_dm_list = (struct dm_list *) 0x84205000
overlay_vls = {vls_magic = -1993131077, vls_str
= 0x0, vls_offset = 0,
vls_len = 0, vls_max = 0}
tmp_vls = {vls_magic = -1993131077, vls_str =
0x0, vls_offset = 0,
vls_len = 0, vls_max = 0}
do_overlay = 0
elapsed_time = 1.0000000000000001e-05
---Type <return> to continue, or q <return> to quit---
do_time = 1
#2 0x1c09235e in main (argc=2, argv=0xcfbccfc8) at
ged.c:735
rateflag = 0
c = -1
read_only_flag = 0
pid = 0
parent_pipe = {5, 6}
use_pipe = 1

Discussion

  • Sean Morrison
    Sean Morrison
    2010-04-09

    After some testing, I've similarly not been able to reproduce this bug. Using your stack trace, though, I did add a slew of additional validation to the code that will hopefully make things more informative if they continue to occur.

    (For historic record, my guess is that the illump somehow has an invalid s_fullpath or is itself invalid but non-null.)

     
  • Sean Morrison
    Sean Morrison
    2010-04-09

    • assigned_to: nobody --> brlcad
    • status: open --> closed-works-for-me