Has anyone hit an issue where Xutf8LookupString simply is not available in
the implementaion of X on Solaris/OpenSolaris ?

I refer to this function :
http://www.xfree86.org/current/Xutf8LookupString.3.html

I have looked around and found a statement by Mr. Coopersmith that says :

  Actually there are two implementation of the XLookupString in the Xlib
  namely a 'core protocol' one and an XKB replacement for this subroutine.
  And the XKB's XLookupString does this 'HACKing' from its birth.

Although there is nothing under /usr/X11/man that has anything to do with
a lookup of any kind.

Consider the following code :

    if ((winPtr->dispPtr->flags & TK_DISPLAY_USE_IM)
            && (winPtr->inputContext != NULL)
            && (eventPtr->type == KeyPress))
    {
        int len;
        Status status;

        Tcl_DStringSetLength(dsPtr, TCL_DSTRING_STATIC_SIZE-1);
        len = Xutf8LookupString(winPtr->inputContext, &eventPtr->xkey,
                Tcl_DStringValue(dsPtr), Tcl_DStringLength(dsPtr),
                NULL, &status);

        /*   will not work on Solaris/OpenSolaris because
         *   Xutf8LookupString is absent.
         */

        if (status == XBufferOverflow) { /* Expand buffer and try again */
            Tcl_DStringSetLength(dsPtr, len);
            /* same issue on Solaris/OpenSolaris */
            len = Xutf8LookupString(winPtr->inputContext, &eventPtr->xkey,
                    Tcl_DStringValue(dsPtr), Tcl_DStringLength(dsPtr),
                    NULL, &status);
        }
        if ((status != XLookupChars) && (status != XLookupBoth)) {
            Tcl_DStringSetLength(dsPtr, 0);
            len = 0;
            .
            .
            .

A search in src.opensolaris.org says there is no XmbLookupString nor
Xutf8LookupString.

Any suggestions ? [1]

-- 
Dennis


[1] besides do a whole hog port of XFree86 or similar.

_______________________________________________
opensolaris-discuss mailing list
[email protected]

Reply via email to