What happened to this site? And what's that frog about?

collect + sort + get on subview crashes

F147 - Failure Feedback Forum 

Status: Severity: minor Category: Vlerq Ratcl Created: 2007-03-22 Updated: 2007-08-11

When a collect expression contains a "sort | get" on a subview, ratcl crashes:

 % view {a b} def {1 a 2 b 3 c 4 d 1 e 2 f 3 g} | group a g | collect {[view $(g) sort | get]}

without the sort, it works fine:

 % view {a b} def {1 a 2 b 3 c 4 d 1 e 2 f 3 g} | group a g | collect {[view $(g) get]}
 {a e} {b f} {c g} d


2007-03-22 btheado

Imported

2007-03-23 btheado

Hmm. I just tried this from linux and did not get a crash. I duplicated it several times in Windows XP.

2007-03-31 jcw

Crash confirmed on mac osx (luckily!):

  view {a b} def {1 a} | group a g | collect {[view $(g) sort | get]}

ALso a reproducable case with tcl errors thrown, and one with an assertion - all by doing something different with the sort results.

Thanks. It's not clear at all so far - but that should help track this down.

2007-06-21 jcw

(Changed: stat)

2007-08-11 btheado

I played around with this to narrow it down some more. It looks like it is a problem with sorts on views containing a single row:

 % view b def a | sort | loop -collect {$(b)}
 can't read "(b)": cursor_tracer?
 % view b def a | sort | get
 crash

With two rows it works fine:

 % view b def {a b} | sort | loop -collect {$(b)}
 a b
 % view b def {a b} | sort | get
 a b

Add a comment:

Tip: add empty lines between paragraphs and indent lines to prevent reformatting.

Your name or initials:  

Powered by Mavrig