XdbeQueryExtension() tells to the caller if the Xdbe extension is present in
the X server, so it should be called for sanity. But like is said in
XdbeQueryExtension(3):
No other Xdbe functions may be called before this function. If a
client violates this rule, the effects of all subsequent Xdbe calls
that it makes are undefined.
it is mandatory call this function.
---
st.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
XSetWindowAttributes attrs;
Cursor cursor;
Window parent;
XSetWindowAttributes attrs;
Cursor cursor;
Window parent;
+ int sw, sh, major, minor;
if(!(xw.dpy = XOpenDisplay(NULL)))
die("Can't open display\n");
if(!(xw.dpy = XOpenDisplay(NULL)))
die("Can't open display\n");
CWBackPixel | CWBorderPixel | CWBitGravity | CWEventMask
| CWColormap,
&attrs);
CWBackPixel | CWBorderPixel | CWBitGravity | CWEventMask
| CWColormap,
&attrs);
+ if(!XdbeQueryExtension(xw.dpy, &major, &minor))
+ die("Xdbe extension is not present\n");
xw.buf = XdbeAllocateBackBufferName(xw.dpy, xw.win, XdbeCopied);
xw.buf = XdbeAllocateBackBufferName(xw.dpy, xw.win, XdbeCopied);
/* input methods */
xw.xim = XOpenIM(xw.dpy, NULL, NULL, NULL);
xw.xic = XCreateIC(xw.xim, XNInputStyle, XIMPreeditNothing
/* input methods */
xw.xim = XOpenIM(xw.dpy, NULL, NULL, NULL);
xw.xic = XCreateIC(xw.xim, XNInputStyle, XIMPreeditNothing