summaryrefslogtreecommitdiff
path: root/xserver/pseudoramiX/pseudoramiX.c
diff options
context:
space:
mode:
Diffstat (limited to 'xserver/pseudoramiX/pseudoramiX.c')
-rw-r--r--xserver/pseudoramiX/pseudoramiX.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/xserver/pseudoramiX/pseudoramiX.c b/xserver/pseudoramiX/pseudoramiX.c
index f47c7836d..d8b259341 100644
--- a/xserver/pseudoramiX/pseudoramiX.c
+++ b/xserver/pseudoramiX/pseudoramiX.c
@@ -39,7 +39,7 @@
#include "pseudoramiX.h"
#include "extnsionst.h"
-#include "extinit.h"
+#include "nonsdk_extinit.h"
#include "dixstruct.h"
#include "window.h"
#include <X11/extensions/panoramiXproto.h>
@@ -49,6 +49,7 @@
#define DEBUG_LOG PseudoramiXDebug
Bool noPseudoramiXExtension = FALSE;
+extern Bool noRRXineramaExtension;
extern int
ProcPanoramiXQueryVersion(ClientPtr client);
@@ -139,9 +140,9 @@ PseudoramiXAddScreen(int x, int y, int w, int h)
if (pseudoramiXNumScreens == pseudoramiXScreensAllocated) {
pseudoramiXScreensAllocated += pseudoramiXScreensAllocated + 1;
- pseudoramiXScreens = realloc(pseudoramiXScreens,
- pseudoramiXScreensAllocated *
- sizeof(PseudoramiXScreenRec));
+ pseudoramiXScreens = reallocarray(pseudoramiXScreens,
+ pseudoramiXScreensAllocated,
+ sizeof(PseudoramiXScreenRec));
}
DEBUG_LOG("x: %d, y: %d, w: %d, h: %d\n", x, y, w, h);
@@ -190,6 +191,9 @@ PseudoramiXExtensionInit(void)
}
}
+ /* Do not allow RRXinerama to initialize if we did */
+ noRRXineramaExtension = success;
+
if (!success) {
ErrorF("%s Extension (PseudoramiX) failed to initialize\n",
PANORAMIX_PROTOCOL_NAME);