Module Name: src
Committed By: christos
Date: Tue Nov 26 01:17:00 UTC 2013
Modified Files:
src/lib/libform: driver.c form.h internals.c
Log Message:
goodbye CIRCLEQ, welcome TAILQ
To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 src/lib/libform/driver.c
cvs rdiff -u -r1.21 -r1.22 src/lib/libform/form.h
cvs rdiff -u -r1.36 -r1.37 src/lib/libform/internals.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/lib/libform/driver.c
diff -u src/lib/libform/driver.c:1.17 src/lib/libform/driver.c:1.18
--- src/lib/libform/driver.c:1.17 Wed Feb 3 10:34:43 2010
+++ src/lib/libform/driver.c Mon Nov 25 20:17:00 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: driver.c,v 1.17 2010/02/03 15:34:43 roy Exp $ */
+/* $NetBSD: driver.c,v 1.18 2013/11/26 01:17:00 christos Exp $ */
/*-
* Copyright (c) 1998-1999 Brett Lymn
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: driver.c,v 1.17 2010/02/03 15:34:43 roy Exp $");
+__RCSID("$NetBSD: driver.c,v 1.18 2013/11/26 01:17:00 christos Exp $");
#include <ctype.h>
#include "form.h"
@@ -284,13 +284,14 @@ form_driver(FORM *form, int c)
break;
case REQ_SFIRST_FIELD:
- fieldp = CIRCLEQ_FIRST(&form->sorted_fields);
+ fieldp = TAILQ_FIRST(&form->sorted_fields);
form->cur_field = fieldp->index;
update_field = 1;
break;
case REQ_SLAST_FIELD:
- fieldp = CIRCLEQ_LAST(&form->sorted_fields);
+ fieldp = TAILQ_LAST(&form->sorted_fields,
+ _formi_sort_head);
form->cur_field = fieldp->index;
update_field = 1;
break;
Index: src/lib/libform/form.h
diff -u src/lib/libform/form.h:1.21 src/lib/libform/form.h:1.22
--- src/lib/libform/form.h:1.21 Mon Nov 28 07:44:18 2011
+++ src/lib/libform/form.h Mon Nov 25 20:17:00 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: form.h,v 1.21 2011/11/28 12:44:18 joerg Exp $ */
+/* $NetBSD: form.h,v 1.22 2013/11/26 01:17:00 christos Exp $ */
/*-
* Copyright (c) 1998-1999 Brett Lymn
@@ -231,7 +231,7 @@ struct _form_field {
void *userptr; /* user defined pointer. */
FIELD *link; /* used if fields are linked */
FIELDTYPE *type; /* type struct for the field */
- CIRCLEQ_ENTRY(_form_field) glue; /* circle queue glue for sorting fields */
+ TAILQ_ENTRY(_form_field) glue; /* tail queue glue for sorting fields */
char *args; /* args for field type. */
_FORMI_FIELD_LINES *alines; /* array of the starts and ends of lines */
_FORMI_FIELD_LINES *free; /* list of lines available for reuse */
@@ -291,7 +291,7 @@ struct _form_struct {
int max_page; /* number of pages in the form */
_FORMI_PAGE_START *page_starts; /* dynamic array of fields that start
the pages */
- CIRCLEQ_HEAD(_formi_sort_head, _form_field) sorted_fields; /* sorted field
+ TAILQ_HEAD(_formi_sort_head, _form_field) sorted_fields; /* sorted field
list */
FIELD **fields; /* array of fields attached to this form. */
};
Index: src/lib/libform/internals.c
diff -u src/lib/libform/internals.c:1.36 src/lib/libform/internals.c:1.37
--- src/lib/libform/internals.c:1.36 Sat Jan 19 11:11:03 2013
+++ src/lib/libform/internals.c Mon Nov 25 20:17:00 2013
@@ -1,4 +1,4 @@
-/* $NetBSD: internals.c,v 1.36 2013/01/19 16:11:03 mbalmer Exp $ */
+/* $NetBSD: internals.c,v 1.37 2013/11/26 01:17:00 christos Exp $ */
/*-
* Copyright (c) 1998-1999 Brett Lymn
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__RCSID("$NetBSD: internals.c,v 1.36 2013/01/19 16:11:03 mbalmer Exp $");
+__RCSID("$NetBSD: internals.c,v 1.37 2013/11/26 01:17:00 christos Exp $");
#include <limits.h>
#include <ctype.h>
@@ -390,8 +390,8 @@ _formi_pos_first_field(FORM *form)
cur = form->fields[form->page_starts[form->page].first];
while ((cur->opts & (O_VISIBLE | O_ACTIVE))
!= (O_VISIBLE | O_ACTIVE)) {
- cur = CIRCLEQ_NEXT(cur, glue);
- if (cur == (void *) &form->sorted_fields) {
+ cur = TAILQ_NEXT(cur, glue);
+ if (cur == NULL) {
form->page = old_page;
return E_REQUEST_DENIED;
}
@@ -420,9 +420,10 @@ _formi_pos_new_field(FORM *form, unsigne
if (direction == _FORMI_FORWARD) {
if (use_sorted == TRUE) {
if ((form->wrap == FALSE) &&
- (cur == CIRCLEQ_LAST(&form->sorted_fields)))
+ (cur == TAILQ_LAST(&form->sorted_fields,
+ _formi_sort_head)))
return E_REQUEST_DENIED;
- cur = CIRCLEQ_NEXT(cur, glue);
+ cur = TAILQ_NEXT(cur, glue);
i = cur->index;
} else {
if ((form->wrap == FALSE) &&
@@ -435,9 +436,9 @@ _formi_pos_new_field(FORM *form, unsigne
} else {
if (use_sorted == TRUE) {
if ((form->wrap == FALSE) &&
- (cur == CIRCLEQ_FIRST(&form->sorted_fields)))
+ (cur == TAILQ_FIRST(&form->sorted_fields)))
return E_REQUEST_DENIED;
- cur = CIRCLEQ_PREV(cur, glue);
+ cur = TAILQ_PREV(cur, _formi_sort_head, glue);
i = cur->index;
} else {
if ((form->wrap == FALSE) && (i <= 0))
@@ -3242,9 +3243,9 @@ _formi_sort_fields(FORM *form)
FIELD **sort_area;
int i;
- CIRCLEQ_INIT(&form->sorted_fields);
+ TAILQ_INIT(&form->sorted_fields);
- if ((sort_area = (FIELD **) malloc(sizeof(FIELD *) * form->field_count))
+ if ((sort_area = malloc(sizeof(*sort_area) * form->field_count))
== NULL)
return;
@@ -3254,7 +3255,7 @@ _formi_sort_fields(FORM *form)
field_sort_compare);
for (i = 0; i < form->field_count; i++)
- CIRCLEQ_INSERT_TAIL(&form->sorted_fields, sort_area[i], glue);
+ TAILQ_INSERT_TAIL(&form->sorted_fields, sort_area[i], glue);
free(sort_area);
}
@@ -3272,7 +3273,7 @@ _formi_stitch_fields(FORM *form)
* check if the sorted fields circle queue is empty, just
* return if it is.
*/
- if (CIRCLEQ_EMPTY(&form->sorted_fields))
+ if (TAILQ_EMPTY(&form->sorted_fields))
return;
/* initially nothing is above..... */
@@ -3281,41 +3282,41 @@ _formi_stitch_fields(FORM *form)
above = NULL;
/* set up the first field as the current... */
- cur = CIRCLEQ_FIRST(&form->sorted_fields);
+ cur = TAILQ_FIRST(&form->sorted_fields);
cur_row = cur->form_row;
/* find the first field on the next row if any */
- below = CIRCLEQ_NEXT(cur, glue);
+ below = TAILQ_NEXT(cur, glue);
below_row = -1;
end_below = TRUE;
real_end = TRUE;
- while (below != (void *)&form->sorted_fields) {
+ while (below != NULL) {
if (below->form_row != cur_row) {
below_row = below->form_row;
end_below = FALSE;
real_end = FALSE;
break;
}
- below = CIRCLEQ_NEXT(below, glue);
+ below = TAILQ_NEXT(below, glue);
}
/* walk the sorted fields, setting the neighbour pointers */
- while (cur != (void *) &form->sorted_fields) {
- if (cur == CIRCLEQ_FIRST(&form->sorted_fields))
+ while (cur != NULL) {
+ if (cur == TAILQ_FIRST(&form->sorted_fields))
cur->left = NULL;
else
- cur->left = CIRCLEQ_PREV(cur, glue);
+ cur->left = TAILQ_PREV(cur, _formi_sort_head, glue);
- if (cur == CIRCLEQ_LAST(&form->sorted_fields))
+ if (cur == TAILQ_LAST(&form->sorted_fields, _formi_sort_head))
cur->right = NULL;
else
- cur->right = CIRCLEQ_NEXT(cur, glue);
+ cur->right = TAILQ_NEXT(cur, glue);
if (end_above == TRUE)
cur->up = NULL;
else {
cur->up = above;
- above = CIRCLEQ_NEXT(above, glue);
+ above = TAILQ_NEXT(above, glue);
if (above_row != above->form_row) {
end_above = TRUE;
above_row = above->form_row;
@@ -3326,8 +3327,8 @@ _formi_stitch_fields(FORM *form)
cur->down = NULL;
else {
cur->down = below;
- below = CIRCLEQ_NEXT(below, glue);
- if (below == (void *) &form->sorted_fields) {
+ below = TAILQ_NEXT(below, glue);
+ if (below == NULL) {
end_below = TRUE;
real_end = TRUE;
} else if (below_row != below->form_row) {
@@ -3336,20 +3337,21 @@ _formi_stitch_fields(FORM *form)
}
}
- cur = CIRCLEQ_NEXT(cur, glue);
- if ((cur != (void *) &form->sorted_fields)
+ cur = TAILQ_NEXT(cur, glue);
+ if ((cur != NULL)
&& (cur_row != cur->form_row)) {
cur_row = cur->form_row;
if (end_above == FALSE) {
- for (; above != CIRCLEQ_FIRST(&form->sorted_fields);
- above = CIRCLEQ_NEXT(above, glue)) {
+ for (; above !=
+ TAILQ_FIRST(&form->sorted_fields);
+ above = TAILQ_NEXT(above, glue)) {
if (above->form_row != above_row) {
above_row = above->form_row;
break;
}
}
} else if (above == NULL) {
- above = CIRCLEQ_FIRST(&form->sorted_fields);
+ above = TAILQ_FIRST(&form->sorted_fields);
end_above = FALSE;
above_row = above->form_row;
} else
@@ -3357,17 +3359,15 @@ _formi_stitch_fields(FORM *form)
if (end_below == FALSE) {
while (below_row == below->form_row) {
- below = CIRCLEQ_NEXT(below,
- glue);
- if (below ==
- (void *)&form->sorted_fields) {
+ below = TAILQ_NEXT(below, glue);
+ if (below == NULL) {
real_end = TRUE;
end_below = TRUE;
break;
}
}
- if (below != (void *)&form->sorted_fields)
+ if (below != NULL)
below_row = below->form_row;
} else if (real_end == FALSE)
end_below = FALSE;