Subject: Re: bug#18438: 24.4.50; assertion failed in bidi.c

From: Eli Zaretskii <[email-masked]>
Date: Thu, 18 Sep 2014 17:42:17 +0300

> Date: Thu, 18 Sep 2014 16:59:34 +1200
> From: [email-masked]
> Cc: Eli Zaretskii <[email-masked]>
> 
> > My reading of this is:
> >
> >   . the value being tested is originally in ECX
> >   . it is stored in a temporary local variable at RBP+0x10
> >   . then it is compared with 0x17 (decimal 23)
> >
> > So you have two places to check: the ECX register and the value
> > pointed to by RBP+0x10.
> 
> Here we are:
> 
> (gdb) print $ecx
> $3 = 6
> (gdb) x $rbp+0x10
> 0x222e10:       0x00000001

Thanks.  Both values are valid, although the second one is probably
the accurate one.

So again, this is a riddle for which I have no clues.  Perhaps the
strange backtraces reported in bug #17753, and the discussion Ken
started on the Cygwin list about that, will bring some insight (e.g.,
is it possible that this code also runs in some other thread?).