Skip to content

Commit

Permalink
optimize x11 display code
Browse files Browse the repository at this point in the history
  • Loading branch information
vcaesar committed Jan 1, 2022
1 parent b270210 commit fe42b2a
Showing 1 changed file with 6 additions and 9 deletions.
15 changes: 6 additions & 9 deletions base/xdisplay_c.h
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@

static Display *mainDisplay = NULL;
static int registered = 0;

static char *displayName = NULL;
static int hasDisplayNameChanged = 0;

Display *XGetMainDisplay(void)
{
Display *XGetMainDisplay(void) {
/* Close the display if displayName has changed */
if (hasDisplayNameChanged) {
XCloseMainDisplay();
Expand All @@ -20,7 +20,7 @@ Display *XGetMainDisplay(void)
mainDisplay = XOpenDisplay(displayName);

/* Then try using environment variable DISPLAY */
if (mainDisplay == NULL) {
if (mainDisplay == NULL && displayName != NULL) {
mainDisplay = XOpenDisplay(NULL);
}

Expand All @@ -40,22 +40,19 @@ Display *XGetMainDisplay(void)
return mainDisplay;
}

void XCloseMainDisplay(void)
{
void XCloseMainDisplay(void) {
if (mainDisplay != NULL) {
XCloseDisplay(mainDisplay);
mainDisplay = NULL;
}
}

void setXDisplay(char *name)
{
void setXDisplay(char *name) {
displayName = strdup(name);
hasDisplayNameChanged = 1;
}

char *getXDisplay(void)
{
char *getXDisplay(void) {
return displayName;
}

0 comments on commit fe42b2a

Please sign in to comment.