summaryrefslogtreecommitdiff
path: root/src/xcb_ext.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/xcb_ext.c')
-rw-r--r--src/xcb_ext.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/xcb_ext.c b/src/xcb_ext.c
index 610ec57..3732515 100644
--- a/src/xcb_ext.c
+++ b/src/xcb_ext.c
@@ -84,6 +84,8 @@ static lazyreply *get_lazyreply(XCBConnection *c, XCBExtension *ext)
const XCBQueryExtensionRep *XCBGetExtensionData(XCBConnection *c, XCBExtension *ext)
{
lazyreply *data;
+ if(c->has_error)
+ return 0;
pthread_mutex_lock(&c->ext.lock);
data = get_lazyreply(c, ext);
@@ -99,6 +101,8 @@ const XCBQueryExtensionRep *XCBGetExtensionData(XCBConnection *c, XCBExtension *
void XCBPrefetchExtensionData(XCBConnection *c, XCBExtension *ext)
{
+ if(c->has_error)
+ return;
pthread_mutex_lock(&c->ext.lock);
get_lazyreply(c, ext);
pthread_mutex_unlock(&c->ext.lock);