Move atoms and global unit initialization to func "dwm_main"
This commit is contained in:
parent
69e0c4185c
commit
3fd95b3f80
26
src/dwm.c
26
src/dwm.c
|
@ -292,19 +292,37 @@ int dwm_main(const char *const new_program_title)
|
||||||
warning("no locale support in X");
|
warning("no locale support in X");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Resource allocations start here.
|
||||||
|
|
||||||
if (!(dpy = XOpenDisplay(NULL))) {
|
if (!(dpy = XOpenDisplay(NULL))) {
|
||||||
fatal("cannot open display");
|
fatal("cannot open display");
|
||||||
}
|
}
|
||||||
|
|
||||||
checkotherwm();
|
checkotherwm();
|
||||||
|
|
||||||
|
if (!(atoms = atoms_create(dpy))) {
|
||||||
|
fatal("cannot create atoms");
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!(global_unit = unit_new(UNIT_GLOBAL, NULL))) {
|
||||||
|
fatal("cannot create atoms");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Old code.
|
||||||
|
|
||||||
if (!setup()) {
|
if (!setup()) {
|
||||||
fatal("cannot setup");
|
fatal("cannot setup");
|
||||||
}
|
}
|
||||||
|
|
||||||
scan();
|
scan();
|
||||||
run();
|
run();
|
||||||
|
|
||||||
cleanup();
|
cleanup();
|
||||||
|
|
||||||
|
// Resource cleanups.
|
||||||
|
|
||||||
|
UNIT_DELETE(global_unit);
|
||||||
|
ATOMS_DELETE(atoms);
|
||||||
XCloseDisplay(dpy);
|
XCloseDisplay(dpy);
|
||||||
|
|
||||||
return EXIT_SUCCESS;
|
return EXIT_SUCCESS;
|
||||||
|
@ -553,13 +571,10 @@ void cleanup()
|
||||||
scheme_destroy();
|
scheme_destroy();
|
||||||
|
|
||||||
wmcheckwin_destroy();
|
wmcheckwin_destroy();
|
||||||
ATOMS_DELETE(atoms);
|
|
||||||
drw_free(drw);
|
drw_free(drw);
|
||||||
XSync(dpy, False);
|
XSync(dpy, False);
|
||||||
XSetInputFocus(dpy, PointerRoot, RevertToPointerRoot, CurrentTime);
|
XSetInputFocus(dpy, PointerRoot, RevertToPointerRoot, CurrentTime);
|
||||||
XDeleteProperty(dpy, root, atoms->netatom[NetActiveWindow]);
|
XDeleteProperty(dpy, root, atoms->netatom[NetActiveWindow]);
|
||||||
|
|
||||||
if (global_unit) UNIT_DELETE(global_unit);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void configure(Client *c)
|
void configure(Client *c)
|
||||||
|
@ -1776,8 +1791,6 @@ bool setup()
|
||||||
{
|
{
|
||||||
XSetWindowAttributes wa;
|
XSetWindowAttributes wa;
|
||||||
|
|
||||||
if (!(global_unit = unit_new(UNIT_GLOBAL, NULL))) return false;
|
|
||||||
|
|
||||||
/* init screen */
|
/* init screen */
|
||||||
screen.x_screen = DefaultScreen(dpy);
|
screen.x_screen = DefaultScreen(dpy);
|
||||||
screen.sizes.w = DisplayWidth(dpy, screen.x_screen);
|
screen.sizes.w = DisplayWidth(dpy, screen.x_screen);
|
||||||
|
@ -1787,9 +1800,6 @@ bool setup()
|
||||||
if (!drw_fontset_create(drw, fonts, LENGTH(fonts)))
|
if (!drw_fontset_create(drw, fonts, LENGTH(fonts)))
|
||||||
fatal("no fonts could be loaded.");
|
fatal("no fonts could be loaded.");
|
||||||
updategeom();
|
updategeom();
|
||||||
/* init atoms */
|
|
||||||
atoms = atoms_create(dpy);
|
|
||||||
if (atoms == NULL) fatal("cannot allocate atoms");
|
|
||||||
/* init cursors */
|
/* init cursors */
|
||||||
cursor[CurNormal] = drw_cur_create(drw, XC_left_ptr);
|
cursor[CurNormal] = drw_cur_create(drw, XC_left_ptr);
|
||||||
cursor[CurResize] = drw_cur_create(drw, XC_sizing);
|
cursor[CurResize] = drw_cur_create(drw, XC_sizing);
|
||||||
|
|
Loading…
Reference in New Issue