XForms: a trivial patch for 1.1

From: Angus Leeming (a.leeming@ic.ac.uk)
Date: Sat Dec 07 2002 - 08:13:44 EST

  • Next message: Peter S Galbraith: "Re: XForms: problem with fl_set_idle_delta in 1.0 RC 5.2"

    # To subscribers of the xforms list from Angus Leeming <a.leeming@ic.ac.uk> :

    This can be found in do_keyboard:
            kbuflen = fl_XLookupString((XKeyEvent *) xev, (char *) keybuf,
                                       sizeof(keybuf), &keysym);

    It fills keysym and keybuf which are then passed on to fl_handle_forms.
    However, at present (keysym == 0) is passed to fl_handle_forms which makes
    little sense.

    The problem occurs only while composing "foreign" chars like ä (a-umlaut)
    using the keyboard sequence ComposeKey-a-". During composition, (I've hit
    ComposeKey-a but not yet "), keysym, keybuf and kbuflen are all set to 0.

    Here's the culprit:

                /* pass all keys to the handler */
                else if (IsCursorKey(keysym) || kbuflen == 0)
                    fl_handle_form(keyform, formevent, keysym, xev);

    (But you're passing a null-key! Not what the comment suggests was intended.)

    The most transparent patch is:
            kbuflen = fl_XLookupString((XKeyEvent *) xev, (char *) keybuf,
                                       sizeof(keybuf), &keysym);
    + if (!keysym)
    + return;

    Steve, would you add this patch to your list for 1.1?
    Best regards,
    Angus
    _________________________________________________
    To unsubscribe, send the message "unsubscribe" to
    xforms-request@bob.usuhs.mil or see
    http://bob.usuhs.mil/mailserv/xforms.html
    XForms Home Page: http://world.std.com/~xforms
    List Archive: http://bob.usuhs.mil/mailserv/list-archives/



    This archive was generated by hypermail 2b29 : Sat Dec 07 2002 - 08:08:35 EST