Made the code actually do something useful instead of segfaulting.

Changed functions so you get the version of the extensions.
This commit is contained in:
Marcus Sundberg 2000-01-11 01:19:51 +00:00
parent 60400e0537
commit 923c6fa8d3
2 changed files with 77 additions and 89 deletions

View file

@ -1,14 +1,10 @@
/*
dga_check.h
Routines to check for XFree86 DGA and VidMode extensions
Definitions for DGA support for XFree86
Copyright (C) 2000 contributors of the QuakeForge project
Copyright (C) 2000 Jeff Teunissen [d2deek@pmail.net]
Copyright (C) 2000 Marcus Sundberg [mackan@stacken.kth.se]
Please see the file "AUTHORS" for a list of contributors
Author: Jeff Teunissen
Date: 09 Jan 2000
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
@ -28,11 +24,13 @@
Boston, MA 02111-1307, USA.
*/
#include <config.h>
#include <quakedef.h>
#ifdef HAS_DGA
#include "dga_check.h"
#include <X11/Xlib.h>
#ifdef HAS_DGA
#include <X11/extensions/xf86dga.h>
#include <X11/extensions/xf86vmode.h>
@ -42,32 +40,33 @@
Check for the presence of the XFree86-DGA X server extension
*/
int
VID_CheckDGA ( Display *dpy )
VID_CheckDGA(Display *dpy, int *maj_ver, int *min_ver)
{
int *event_base, *error_base;
int event_base, error_base;
event_base = error_base = NULL;
XF86DGAQueryExtension ( dpy, event_base, error_base );
if ( event_base )
return true;
return false;
if (! XF86DGAQueryExtension(dpy, &event_base, &error_base)) {
return 0;
}
return XF86DGAQueryVersion(dpy, maj_ver, min_ver);
}
/*
VID_CheckVMode
Check for the presence of the XFree86-VMode X server extension
Check for the presence of the XFree86-VidMode X server extension
*/
int
VID_CheckVMode ( Display *dpy )
VID_CheckVMode(Display *dpy, int *maj_ver, int *min_ver)
{
int *event_base, *error_base;
int event_base, error_base;
event_base = error_base = NULL;
XF86VidModeQueryExtension ( dpy, event_base, error_base );
if ( event_base )
return true;
return false;
if (! XF86VidModeQueryExtension(dpy, &event_base, &error_base)) {
return 0;
}
#endif // HAS_DGA
return XF86VidModeQueryVersion(dpy, maj_ver, min_ver);
}
#endif /* HAS_DGA */

View file

@ -1,14 +1,12 @@
/*
dga_check.h
Definitions for DGA support for XFree86
Definitions for XFree86 DGA and VidMode support
Copyright (C) 2000 contributors of the QuakeForge project
Copyright (C) 2000 Jeff Teunissen [d2deek@pmail.net]
Copyright (C) 2000 Marcus Sundberg [mackan@stacken.kth.se]
Please see the file "AUTHORS" for a list of contributors
Author: Jeff Teunissen
Date: 09 Jan 2000
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
@ -31,29 +29,20 @@
#ifndef DGA_CHECK_H
#define DGA_CHECK_H
#include <config.h>
#include <quakedef.h>
#include <X11/Xlib.h>
#ifdef HAS_DGA
#include <X11/extensions/xf86dga.h>
#include <X11/extensions/xf86vmode.h>
/*
VID_CheckDGA
Check for the presence of the XFree86-DGA support in the X server
*/
int VID_CheckDGA ( Display *dpy );
int VID_CheckDGA(Display *dpy, int *maj_ver, int *min_ver);
/*
VID_CheckVMode
Check for the presence of the XFree86-VMode X server extension
*/
int VID_CheckVMode ( Display *dpy );
int VID_CheckVMode(Display *dpy, int *maj_ver, int *min_ver);
#endif // HAS_DGA
#endif // DGA_CHECK_H
#endif /* DGA_CHECK_H */