Fix use after free in DPI computation
This commit is contained in:
parent
41e49ef4e6
commit
b2b0119f4d
1 changed files with 1 additions and 1 deletions
|
@ -358,7 +358,6 @@ void get_monitors()
|
||||||
for (int j = 0; j < crtc_info->noutput; ++j) {
|
for (int j = 0; j < crtc_info->noutput; ++j) {
|
||||||
XRROutputInfo *output_info = XRRGetOutputInfo(server.display, res, crtc_info->outputs[j]);
|
XRROutputInfo *output_info = XRRGetOutputInfo(server.display, res, crtc_info->outputs[j]);
|
||||||
server.monitors[i_monitor].names[j] = g_strdup(output_info->name);
|
server.monitors[i_monitor].names[j] = g_strdup(output_info->name);
|
||||||
XRRFreeOutputInfo(output_info);
|
|
||||||
server.monitors[i_monitor].primary = crtc_info->outputs[j] == primary_output;
|
server.monitors[i_monitor].primary = crtc_info->outputs[j] == primary_output;
|
||||||
int dpi = compute_dpi(crtc_info, output_info);
|
int dpi = compute_dpi(crtc_info, output_info);
|
||||||
if (dpi)
|
if (dpi)
|
||||||
|
@ -370,6 +369,7 @@ void get_monitors()
|
||||||
server.monitors[i_monitor].width,
|
server.monitors[i_monitor].width,
|
||||||
server.monitors[i_monitor].height,
|
server.monitors[i_monitor].height,
|
||||||
server.monitors[i_monitor].dpi);
|
server.monitors[i_monitor].dpi);
|
||||||
|
XRRFreeOutputInfo(output_info);
|
||||||
}
|
}
|
||||||
server.monitors[i_monitor].names[crtc_info->noutput] = NULL;
|
server.monitors[i_monitor].names[crtc_info->noutput] = NULL;
|
||||||
XRRFreeCrtcInfo(crtc_info);
|
XRRFreeCrtcInfo(crtc_info);
|
||||||
|
|
Loading…
Reference in a new issue