if (ve->im.im_list) { XtFree((char *)ve->im.im_list[0]); XtFree((char *)ve->im.im_list); } if (ve->ic.ic_list) { XtFree((char *)ve->ic.ic_list[0]); XtFree((char *)ve->ic.ic_list); }
static void FreeAllDataOfVendorShell(ve, vw)    XawVendorShellExtPart * ve;    VendorShellWidget vw;{    XawIcTableList       p, next;    contextErrDataRec *contextErrData;    if (!XFindContext(XtDisplay(vw), (Window)vw, extContext,		      (XPointer*)&contextErrData)) {	if (contextErrData) XtFree((char *)contextErrData);    }    XDeleteContext(XtDisplay(vw), (Window)vw, extContext);    if (ve->im.im_list) {        XtFree((char *)ve->im.im_list[0]);        XtFree((char *)ve->im.im_list);    }    if (ve->ic.ic_list) {        XtFree((char *)ve->ic.ic_list[0]);        XtFree((char *)ve->ic.ic_list);    }    if (ve->ic.shared_ic_table)        XtFree((char *)ve->ic.shared_ic_table);    if (ve->im.resources) XtFree((char *)ve->im.resources);    for (p = ve->ic.ic_table; p; p = next) {        next = p->next;        XtFree((char *)p);    }}