On Thu, Jan 13, 2000 at 11:16:47AM +0100, Frank Richter wrote:
> Hallo,
> 
> I found a bug, related to the changed handling of IC. You hit it by
> WRKSPLF, display (option 5) one item (but not the first one). If you
> return, the cursor should be set to the same position. But instead it
> moves to the first entry field.
> 
> I changed session.c:
> 
>     /* If we've gotten an MC or IC order, set the cursor to that
>      * position.
>      * Otherwise set the cursor to the first non-bypass field, if there
>      * is
>      * one.  If not, set the cursor position to 0,0. */
> +   if (tn5250_display_pending_insert (This->display))
> +        tn5250_display_set_cursor_home(This->display);
> +   else {
>       if (end_y != 0xff && end_x != 0xff)
>       .
>       .
>       .
> +   }

The ending position of the cursor should be set to the last IC or MC order
received, given that the IC order sets the IC address which persists across
Write to Displays.  It wasn't persisting accross Write to Displays before.

I rearanged your if() so that an MC order will set the cursor position when
present.

> 
> That works for me, so far. But I don't know, if that breaks anything
> else.

Thanks,
-Jay 'Eraserhead' Felice
+---
| This is the LINUX5250 Mailing List!
| To submit a new message, send your mail to [EMAIL PROTECTED]
| To subscribe to this list send email to [EMAIL PROTECTED]
| To unsubscribe from this list send email to [EMAIL PROTECTED]
| Questions should be directed to the list owner/operator: [EMAIL PROTECTED]
+---

Reply via email to