Używam następującego kodu:
typedef unsigned N32;
xcb_get_image_cookie_t ret_id = xcb_get_image_unchecked( display->x_display
, XCB_IMAGE_FORMAT_Z_PIXMAP
, pixmap
, x, y, 1, 1
, ~0
);
xcb_get_image_reply_t *ret = xcb_get_image_reply( display->x_display, ret_id, 0 ); //NDFN Po pewnym czasie zwraca 0.
N32 pixel = *( N32 * )xcb_get_image_data(ret);
free(ret);
Jednak po kilku wywołaniach funkcja xcb_get_image_reply
wraca z NULL. Nie wiem, dlaczego tak się dzieje. Kolejne wywołania już w nieskończoność wracają z NULL.
W związku z tym zastanawiam się, czy nie potrzeba jeszcze zwalniać jakoś “image” otrzymanego funkcją “xcb_get_image_unchecked”.
W Internecie nie znalazłem pełnej informacji na temat poprawnego użycia tej funkcji ani przykładów.