/*
- * "$Id: ppd.c,v 1.97 2003/02/20 14:49:50 mike Exp $"
+ * "$Id: ppd.c,v 1.98 2003/02/20 16:52:16 mike Exp $"
*
* PPD file routines for the Common UNIX Printing System (CUPS).
*
col, /* Column in line */
colon, /* Colon seen? */
endquote, /* Waiting for an end quote */
- mask; /* Mask to be returned */
+ mask, /* Mask to be returned */
+ startline; /* Start line */
char *keyptr, /* Keyword pointer */
*optptr, /* Option pointer */
*textptr, /* Text pointer */
* Now loop until we have a valid line...
*/
- *string = NULL;
- col = 0;
+ *string = NULL;
+ col = 0;
+ startline = ppd_line + 1;
do
{
* Other control characters...
*/
+ ppd_line = startline;
ppd_status = PPD_ILLEGAL_CHARACTER;
return (0);
* Line is too long...
*/
+ ppd_line = startline;
ppd_status = PPD_LINE_TOO_LONG;
return (0);
* Other control characters...
*/
+ ppd_line = startline;
ppd_status = PPD_ILLEGAL_CHARACTER;
return (0);
* Line is too long...
*/
+ ppd_line = startline;
ppd_status = PPD_LINE_TOO_LONG;
return (0);
* Other control characters...
*/
+ ppd_line = startline;
ppd_status = PPD_ILLEGAL_CHARACTER;
return (0);
* Line is too long...
*/
+ ppd_line = startline;
ppd_status = PPD_LINE_TOO_LONG;
return (0);
* Other control characters...
*/
+ ppd_line = startline;
ppd_status = PPD_ILLEGAL_CHARACTER;
return (0);
* Line is too long...
*/
+ ppd_line = startline;
ppd_status = PPD_LINE_TOO_LONG;
return (0);
strncmp(line, "*%", 2) == 0 || /* Comment line */
strncmp(line, "*?", 2) == 0 || /* Query line */
strcmp(line, "*End") == 0) /* End of multi-line string */
+ {
+ startline = ppd_line + 1;
continue;
+ }
if (line[0] != '*') /* All lines start with an asterisk */
{
/*
- * End of "$Id: ppd.c,v 1.97 2003/02/20 14:49:50 mike Exp $".
+ * End of "$Id: ppd.c,v 1.98 2003/02/20 16:52:16 mike Exp $".
*/