/*
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice (including the next
* paragraph) shall be included in all copies or substantial portions of the
* Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
#include <stdlib.h>
#include <string.h>
#if defined(DEBUG)
#include <stdio.h>
#endif
/*
* Get's next pair of integers from a string
*/
static VisualID
{
char *newP;
return 0;
}
return entry;
}
/*
* Build a list of VisualIds that are equivalant to vidIn
*
* The format of the property string is a sequence of lists of
* integers separated by a newline.
* The first entry in each is the number of elements in the list.
* The list of ids follows.
*/
static VisualID *
{
char *p = string;
int num;
#ifdef DEBUG
#endif
int foundIt = 0;
int i;
return NULL;
} else {
}
for (i=0; i < num; i++) {
/* Build the list of VisualIDs equivalent to v */
if (vid = getNextEntry(&p)) {
foundIt = 1;
} else {
/* string is formatted wrong */
#ifdef DEBUG
string);
#endif
break;
}
}
#ifdef DEBUG
if (*p != '\n')
string);
#endif
if (foundIt) {
/* terminate the list */
break;
}
if (pList != pOriginalList)
}
return pList;
}
static int
{
int i;
for (i=0; pList[i] != 0; i++) {
if (pList[i] == v)
return 1;
}
return 0;
}
static Bool
{
/*
* Build a list of VisualIDS which are equivalent to v1
* using the array list if it fits.
*/
return False;
/* now see if v2 is in the list */
foundMatch = True;
}
return foundMatch;
}
{
int actualFormat;
unsigned long nitems;
unsigned long bytesAfter;
char *prop;
return False;
(unsigned char **)&prop)) {
return ret;
}
}
return False;
}