示例#1
0
文件: Vendor.c 项目: 4eremuxa/xserver
void
xf86freeVendorList (XF86ConfVendorPtr p)
{
	if (p == NULL)
		return;
	xf86freeVendorSubList (p->vnd_sub_lst);
	TestFree (p->vnd_identifier);
	TestFree (p->vnd_comment);
	xf86optionListFree (p->vnd_option_lst);
	free (p);
}
示例#2
0
void
xf86freeModeLineList (XF86ConfModeLinePtr ptr)
{
	XF86ConfModeLinePtr prev;
	while (ptr)
	{
		TestFree (ptr->ml_identifier);
		TestFree (ptr->ml_comment);
		prev = ptr;
		ptr = ptr->list.next;
		xf86conffree (prev);
	}
}
示例#3
0
文件: DRI.c 项目: Agnarr/xserver
static void
xf86freeBuffersList (XF86ConfBuffersPtr ptr)
{
    XF86ConfBuffersPtr prev;

    while (ptr) {
	TestFree (ptr->buf_flags);
	TestFree (ptr->buf_comment);
	prev = ptr;
	ptr  = ptr->list.next;
	free (prev);
    }
}
示例#4
0
文件: Files.c 项目: timon37/xwayland
void
xf86freeFiles (XF86ConfFilesPtr p)
{
    if (p == NULL)
        return;

    TestFree (p->file_logfile);
    TestFree (p->file_modulepath);
    TestFree (p->file_fontpath);
    TestFree (p->file_comment);
    TestFree (p->file_xkbdir);

    free (p);
}
示例#5
0
static void
xf86freeVendorSubList(XF86ConfVendSubPtr ptr)
{
    XF86ConfVendSubPtr prev;

    while (ptr) {
        TestFree(ptr->vs_identifier);
        TestFree(ptr->vs_name);
        TestFree(ptr->vs_comment);
        xf86optionListFree(ptr->vs_option_lst);
        prev = ptr;
        ptr = ptr->list.next;
        free(prev);
    }
}
示例#6
0
void
xf86freeModesList (XF86ConfModesPtr ptr)
{
	XF86ConfModesPtr prev;

	while (ptr)
	{
		TestFree (ptr->modes_identifier);
		TestFree (ptr->modes_comment);
		xf86freeModeLineList (ptr->mon_modeline_lst);
		prev = ptr;
		ptr = ptr->list.next;
		xf86conffree (prev);
	}
}
示例#7
0
void
xf86freeVideoPortList (XF86ConfVideoPortPtr ptr)
{
	XF86ConfVideoPortPtr prev;

	while (ptr)
	{
		TestFree (ptr->vp_identifier);
		TestFree (ptr->vp_comment);
		xf86optionListFree (ptr->vp_option_lst);
		prev = ptr;
		ptr = ptr->list.next;
		xf86conffree (prev);
	}
}
示例#8
0
文件: Layout.c 项目: Agnesa/xserver
void
xf86freeLayoutList(XF86ConfLayoutPtr ptr)
{
    XF86ConfLayoutPtr prev;

    while (ptr) {
        TestFree(ptr->lay_identifier);
        TestFree(ptr->lay_comment);
        xf86freeAdjacencyList(ptr->lay_adjacency_lst);
        xf86freeInputrefList(ptr->lay_input_lst);
        prev = ptr;
        ptr = ptr->list.next;
        free(prev);
    }
}
示例#9
0
文件: Input.c 项目: MrKepzie/xserver
void
xf86freeInputList(XF86ConfInputPtr ptr)
{
    XF86ConfInputPtr prev;

    while (ptr) {
        TestFree(ptr->inp_identifier);
        TestFree(ptr->inp_driver);
        TestFree(ptr->inp_comment);
        xf86optionListFree(ptr->inp_option_lst);

        prev = ptr;
        ptr = ptr->list.next;
        free(prev);
    }
}
示例#10
0
void
xf86freeMonitorList (XF86ConfMonitorPtr ptr)
{
	XF86ConfMonitorPtr prev;

	while (ptr)
	{
		TestFree (ptr->mon_identifier);
		TestFree (ptr->mon_vendor);
		TestFree (ptr->mon_modelname);
		TestFree (ptr->mon_comment);
		xf86optionListFree (ptr->mon_option_lst);
		xf86freeModeLineList (ptr->mon_modeline_lst);
		prev = ptr;
		ptr = ptr->list.next;
		xf86conffree (prev);
	}
}
示例#11
0
文件: Layout.c 项目: Agnesa/xserver
static void
xf86freeAdjacencyList(XF86ConfAdjacencyPtr ptr)
{
    XF86ConfAdjacencyPtr prev;

    while (ptr) {
        TestFree(ptr->adj_screen_str);
        TestFree(ptr->adj_top_str);
        TestFree(ptr->adj_bottom_str);
        TestFree(ptr->adj_left_str);
        TestFree(ptr->adj_right_str);

        prev = ptr;
        ptr = ptr->list.next;
        free(prev);
    }

}
示例#12
0
void
xf86freeScreenList(XF86ConfScreenPtr ptr)
{
    XF86ConfScreenPtr prev;

    while (ptr) {
        TestFree(ptr->scrn_identifier);
        TestFree(ptr->scrn_monitor_str);
        TestFree(ptr->scrn_device_str);
        TestFree(ptr->scrn_comment);
        xf86optionListFree(ptr->scrn_option_lst);
        xf86freeAdaptorLinkList(ptr->scrn_adaptor_lst);
        xf86freeDisplayList(ptr->scrn_display_lst);
        prev = ptr;
        ptr = ptr->list.next;
        free(prev);
    }
}
示例#13
0
文件: DRI.c 项目: Beautifu/xserver
void
xf86freeDRI(XF86ConfDRIPtr ptr)
{
    if (ptr == NULL)
        return;

    TestFree(ptr->dri_comment);
    free(ptr);
}
示例#14
0
void
xf86freeExtensions(XF86ConfExtensionsPtr ptr)
{
    if (ptr == NULL)
        return;

    xf86optionListFree(ptr->ext_option_lst);
    TestFree(ptr->extensions_comment);
    free(ptr);
}
示例#15
0
文件: DRI.c 项目: Agnarr/xserver
void
xf86freeDRI (XF86ConfDRIPtr ptr)
{
    if (ptr == NULL)
	return;
    
    xf86freeBuffersList (ptr->dri_buffers_lst);
    TestFree (ptr->dri_comment);
    free (ptr);
}
示例#16
0
void
xf86freeAdaptorLinkList(XF86ConfAdaptorLinkPtr ptr)
{
    XF86ConfAdaptorLinkPtr prev;

    while (ptr) {
        TestFree(ptr->al_adaptor_str);
        prev = ptr;
        ptr = ptr->list.next;
        free(prev);
    }
}
示例#17
0
void
xf86freeModeList(XF86ModePtr ptr)
{
    XF86ModePtr prev;

    while (ptr) {
        TestFree(ptr->mode_name);
        prev = ptr;
        ptr = ptr->list.next;
        free(prev);
    }
}
示例#18
0
文件: Layout.c 项目: Agnesa/xserver
static void
xf86freeInputrefList(XF86ConfInputrefPtr ptr)
{
    XF86ConfInputrefPtr prev;

    while (ptr) {
        TestFree(ptr->iref_inputdev_str);
        xf86optionListFree(ptr->iref_option_lst);
        prev = ptr;
        ptr = ptr->list.next;
        free(prev);
    }

}
示例#19
0
文件: Device.c 项目: mirror/xserver
void
xf86freeDeviceList(XF86ConfDevicePtr ptr)
{
    XF86ConfDevicePtr prev;

    while (ptr) {
        TestFree(ptr->dev_identifier);
        TestFree(ptr->dev_vendor);
        TestFree(ptr->dev_board);
        TestFree(ptr->dev_chipset);
        TestFree(ptr->dev_card);
        TestFree(ptr->dev_driver);
        TestFree(ptr->dev_ramdac);
        TestFree(ptr->dev_clockchip);
        TestFree(ptr->dev_comment);
        xf86optionListFree(ptr->dev_option_lst);

        prev = ptr;
        ptr = ptr->list.next;
        free(prev);
    }
}
示例#20
0
XF86ConfVideoPortPtr
xf86parseVideoPortSubSection (const char *name)
{
	int has_ident = FALSE;
	int token;
	parsePrologue (XF86ConfVideoPortPtr, XF86ConfVideoPortRec)

	ptr->vp_identifier = xf86configStrdup(name);

	while ((token = xf86getToken (VideoPortTab)) != ENDSUBSECTION)
	{
		switch (token)
		{
		case COMMENT:
			ptr->vp_comment = xf86addComment(ptr->vp_comment, val.str);
			break;
		case IDENTIFIER:
			if (xf86getSubToken (&(ptr->vp_comment)) != STRING)
				Error (QUOTE_MSG, "Identifier");
			if (has_ident == TRUE)
				Error (MULTIPLE_MSG, "Identifier");
			TestFree(ptr->vp_identifier);
			ptr->vp_identifier = xf86configStrdup(val.str);
			has_ident = TRUE;
			break;
		case OPTION:
			ptr->vp_option_lst = xf86parseOption(ptr->vp_option_lst);
			break;

		case EOF_TOKEN:
			Error (UNEXPECTED_EOF_MSG, NULL);
			break;
		default:
			Error (INVALID_KEYWORD_MSG, xf86tokenString ());
			break;
		}
	}

#ifdef DEBUG
	printf ("VideoPort subsection parsed\n");
#endif

	return ptr;
}
示例#21
0
void
xf86freeFiles (XF86ConfFilesPtr p)
{
	if (p == NULL)
		return;

	TestFree (p->file_logfile);
	TestFree (p->file_rgbpath);
	TestFree (p->file_modulepath);
	TestFree (p->file_inputdevs);
	TestFree (p->file_fontpath);
	TestFree (p->file_comment);

	xf86conffree (p);
}
示例#22
0
void
xf86freeFilesList (XF86ConfFilesPtr ptr)
{
	XF86ConfFilesPtr prev;

	while (ptr)
	{
		TestFree (ptr->file_logfile);
		TestFree (ptr->file_rgbpath);
		TestFree (ptr->file_modulepath);
		TestFree (ptr->file_inputdevs);
		TestFree (ptr->file_fontpath);
		TestFree (ptr->file_comment);
		TestFree (ptr->file_identifier);
		xf86optionListFree (ptr->file_option_lst);
		prev = ptr;
		ptr = ptr->list.next;
		xf86conffree(prev);
	}
}
示例#23
0
void
xf86freeVideoAdaptorList (XF86ConfVideoAdaptorPtr ptr)
{
	XF86ConfVideoAdaptorPtr prev;

	while (ptr)
	{
		TestFree (ptr->va_identifier);
		TestFree (ptr->va_vendor);
		TestFree (ptr->va_board);
		TestFree (ptr->va_busid);
		TestFree (ptr->va_driver);
		TestFree (ptr->va_fwdref);
		TestFree (ptr->va_comment);
		xf86freeVideoPortList (ptr->va_port_lst);
		xf86optionListFree (ptr->va_option_lst);
		prev = ptr;
		ptr = ptr->list.next;
		xf86conffree (prev);
	}
}
示例#24
0
XF86ConfInputPtr
xf86parsePointerSection (void)
{
	char *s;
	int n1, n2, token;
	parsePrologue (XF86ConfInputPtr, XF86ConfInputRec)

	while ((token = xf86getToken (PointerTab)) != ENDSECTION)
	{
		s = NULL;
		switch (token)
		{
		case COMMENT:
			ptr->inp_comment = xf86addComment(ptr->inp_comment, val.str);
			break;
		case PROTOCOL:
			if (xf86getSubToken (&(ptr->inp_comment)) != STRING)
				Error (QUOTE_MSG, "Protocol");
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"Protocol", val.str);
			break;
		case PDEVICE:
			if (xf86getSubToken (&(ptr->inp_comment)) != STRING)
				Error (QUOTE_MSG, "Device");
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"Device", val.str);
			break;
		case EMULATE3:
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"Emulate3Buttons", NULL);
			break;
		case EM3TIMEOUT:
			if (xf86getSubToken (&(ptr->inp_comment)) != NUMBER || val.num < 0)
				Error (POSITIVE_INT_MSG, "Emulate3Timeout");
			s = xf86uLongToString(val.num);
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"Emulate3Timeout", s);
			break;
		case CHORDMIDDLE:
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"ChordMiddle", NULL);
			break;
		case PBUTTONS:
			if (xf86getSubToken (&(ptr->inp_comment)) != NUMBER || val.num < 0)
				Error (POSITIVE_INT_MSG, "Buttons");
			s = xf86uLongToString(val.num);
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"Buttons", s);
			break;
		case BAUDRATE:
			if (xf86getSubToken (&(ptr->inp_comment)) != NUMBER || val.num < 0)
				Error (POSITIVE_INT_MSG, "BaudRate");
			s = xf86uLongToString(val.num);
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"BaudRate", s);
			break;
		case SAMPLERATE:
			if (xf86getSubToken (&(ptr->inp_comment)) != NUMBER || val.num < 0)
				Error (POSITIVE_INT_MSG, "SampleRate");
			s = xf86uLongToString(val.num);
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"SampleRate", s);
			break;
		case PRESOLUTION:
			if (xf86getSubToken (&(ptr->inp_comment)) != NUMBER || val.num < 0)
				Error (POSITIVE_INT_MSG, "Resolution");
			s = xf86uLongToString(val.num);
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"Resolution", s);
			break;
		case CLEARDTR:
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"ClearDTR", NULL);
			break;
		case CLEARRTS:
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"ClearRTS", NULL);
			break;
		case ZAXISMAPPING:
			switch (xf86getToken(ZMapTab)) {
			case NUMBER:
				if (val.num < 0)
					Error (ZAXISMAPPING_MSG, NULL);
				n1 = val.num;
				if (xf86getSubToken (&(ptr->inp_comment)) != NUMBER || val.num < 0)
					Error (ZAXISMAPPING_MSG, NULL);
				n2 = val.num;
				xf86configAsprintf(&s, "%d %d", n1, n2);
				break;
			case XAXIS:
				s = xf86configStrdup("x");
				break;
			case YAXIS:
				s = xf86configStrdup("y");
				break;
			default:
				Error (ZAXISMAPPING_MSG, NULL);
				break;
			}
			ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
												"ZAxisMapping", s);
			break;
		case ALWAYSCORE:
			break;
		case EOF_TOKEN:
			Error (UNEXPECTED_EOF_MSG, NULL);
			break;
		default:
			Error (INVALID_KEYWORD_MSG, xf86tokenString ());
			break;
		}
		TestFree(s);
	}

	ptr->inp_identifier = xf86configStrdup(CONF_IMPLICIT_POINTER);
	ptr->inp_driver = xf86configStrdup("mouse");
	ptr->inp_option_lst = xf86addNewOption(ptr->inp_option_lst,
										"CorePointer", NULL);

#ifdef DEBUG
	printf ("Pointer section parsed\n");
#endif

	return ptr;
}