Obtener el título de la ventana con XCB

Estoy tratando de obtener información sobre la ventana en foco. Parece que obtengo una identificación de ventana correcta dexcb_get_input_focus_reply_t->focus: permanece igual para mi Eclipse IDE (56623164) y es otro para cualquier otra ventana en foco. Sin embargo, la longitud del valor siempre es 0 paraXCB_ATOM_WM_NAME.

código acortado

cookie = xcb_get_property(c, 0, fr->focus, XCB_ATOM_WM_NAME,
            XCB_ATOM_STRING, 0, 0);
if ((reply = xcb_get_property_reply(c, cookie, NULL))) {
    int len = xcb_get_property_value_length(reply);
    if (len == 0) {
        printf("Zero Length\n");
        free(reply);
        return;
    }
    printf("WM_NAME is %.*s\n", len, (char*) xcb_get_property_value(reply));
}

Depurador Eclipse

reply xcb_get_property_reply_t * 0x60bd40
    response_type uint8_t            1 '\001'
    format        uint8_t            0 '\0'
    sequence      uint16_t           2
    length        uint32_t           0
    type          xcb_atom_t         0
    bytes_after   uint32_t           0
    value_len     uint32_t           0
    pad0          unsigned char [12] 0x60bd54   

No hay error (pasé e inspeccioné unxcb_generic_error_t) ¿Tienes alguna idea de qué podría salir mal? Tal vez debería usar Xlib en su lugar ...

Respuestas a la pregunta(1)

Su respuesta a la pregunta