修复 get_window_class_instance 函数中的内存释放错误
This commit is contained in:
@@ -43,7 +43,8 @@ void get_window_class_instance(xcb_window_t window,
|
|||||||
xcb_icccm_get_wm_class_reply_t prop;
|
xcb_icccm_get_wm_class_reply_t prop;
|
||||||
const char *class = NULL;
|
const char *class = NULL;
|
||||||
const char *instance = NULL;
|
const char *instance = NULL;
|
||||||
if (xcb_icccm_get_wm_class_reply(conn, cookie, &prop, NULL)) {
|
bool has_reply = xcb_icccm_get_wm_class_reply(conn, cookie, &prop, NULL);
|
||||||
|
if (has_reply) {
|
||||||
class = prop.class_name;
|
class = prop.class_name;
|
||||||
instance = prop.instance_name;
|
instance = prop.instance_name;
|
||||||
} else {
|
} else {
|
||||||
@@ -54,7 +55,7 @@ void get_window_class_instance(xcb_window_t window,
|
|||||||
strncpy(class_instance->class, class, LENGTH(class_instance->class));
|
strncpy(class_instance->class, class, LENGTH(class_instance->class));
|
||||||
strncpy(class_instance->instance, instance, LENGTH(class_instance->instance));
|
strncpy(class_instance->instance, instance, LENGTH(class_instance->instance));
|
||||||
|
|
||||||
xcb_icccm_get_wm_class_reply_wipe(&prop);
|
if (has_reply) xcb_icccm_get_wm_class_reply_wipe(&prop);
|
||||||
}
|
}
|
||||||
|
|
||||||
static visual_t *find_alpha_visual() {
|
static visual_t *find_alpha_visual() {
|
||||||
|
|||||||
Reference in New Issue
Block a user