summaryrefslogtreecommitdiff
path: root/xserver/Xext/panoramiX.c
diff options
context:
space:
mode:
Diffstat (limited to 'xserver/Xext/panoramiX.c')
-rw-r--r--xserver/Xext/panoramiX.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/xserver/Xext/panoramiX.c b/xserver/Xext/panoramiX.c
index 844ea49ce..bd9c45b03 100644
--- a/xserver/Xext/panoramiX.c
+++ b/xserver/Xext/panoramiX.c
@@ -751,11 +751,7 @@ PanoramiXMaybeAddDepth(DepthPtr pDepth)
PanoramiXNumDepths, sizeof(DepthRec));
PanoramiXDepths[j].depth = pDepth->depth;
PanoramiXDepths[j].numVids = 0;
- /* XXX suboptimal, should grow these dynamically */
- if (pDepth->numVids)
- PanoramiXDepths[j].vids = xallocarray(pDepth->numVids, sizeof(VisualID));
- else
- PanoramiXDepths[j].vids = NULL;
+ PanoramiXDepths[j].vids = NULL;
}
static void
@@ -796,6 +792,9 @@ PanoramiXMaybeAddVisual(VisualPtr pVisual)
for (k = 0; k < PanoramiXNumDepths; k++) {
if (PanoramiXDepths[k].depth == pVisual->nplanes) {
+ PanoramiXDepths[k].vids = reallocarray(PanoramiXDepths[k].vids,
+ PanoramiXDepths[k].numVids + 1,
+ sizeof(VisualID));
PanoramiXDepths[k].vids[PanoramiXDepths[k].numVids] = pVisual->vid;
PanoramiXDepths[k].numVids++;
break;