--- /dev/null
+Index: ps.c
+===================================================================
+RCS file: /cvs/gnome/ggv/src/ps.c,v
+retrieving revision 1.12
+retrieving revision 1.13
+diff -u -r1.12 -r1.13
+--- src/ps.c 19 Jun 2002 16:56:05 -0000 1.12
++++ src/ps.c 26 Sep 2002 22:27:53 -0000 1.13
+@@ -267,7 +267,7 @@
+
+ /* Jake Hamby patch 18/3/98 */
+
+- sscanf(line, "%*s %s", text);
++ sscanf(line, "%*s %256s", text);
+ /*doc->epsf = iscomment(text, "EPSF-");*/
+ doc->epsf = iscomment(text, "EPSF"); /* Hamby - This line changed */
+ doc->beginheader = position;
+@@ -308,7 +308,7 @@
+ } else if (doc->date == NULL && iscomment(line+2, "CreationDate:")) {
+ doc->date = gettextline(line+length("%%CreationDate:"));
+ } else if (bb_set == NONE && iscomment(line+2, "BoundingBox:")) {
+- sscanf(line+length("%%BoundingBox:"), "%s", text);
++ sscanf(line+length("%%BoundingBox:"), "%256s", text);
+ if (strcmp(text, "(atend)") == 0) {
+ bb_set = ATEND;
+ } else {
+@@ -340,7 +340,7 @@
+ }
+ } else if (orientation_set == NONE &&
+ iscomment(line+2, "Orientation:")) {
+- sscanf(line+length("%%Orientation:"), "%s", text);
++ sscanf(line+length("%%Orientation:"), "%256s", text);
+ if (strcmp(text, "(atend)") == 0) {
+ orientation_set = ATEND;
+ } else if (strcmp(text, "Portrait") == 0) {
+@@ -355,7 +355,7 @@
+ orientation_set = 1;
+ }
+ } else if (page_order_set == NONE && iscomment(line+2, "PageOrder:")) {
+- sscanf(line+length("%%PageOrder:"), "%s", text);
++ sscanf(line+length("%%PageOrder:"), "%256s", text);
+ if (strcmp(text, "(atend)") == 0) {
+ page_order_set = ATEND;
+ } else if (strcmp(text, "Ascend") == 0) {
+@@ -369,7 +369,7 @@
+ page_order_set = 1;
+ }
+ } else if (pages_set == NONE && iscomment(line+2, "Pages:")) {
+- sscanf(line+length("%%Pages:"), "%s", text);
++ sscanf(line+length("%%Pages:"), "%256s", text);
+ if (strcmp(text, "(atend)") == 0) {
+ pages_set = ATEND;
+ } else {
+@@ -568,7 +568,7 @@
+ /* Do nothing */
+ } else if (doc->default_page_orientation == NONE &&
+ iscomment(line+2, "PageOrientation:")) {
+- sscanf(line+length("%%PageOrientation:"), "%s", text);
++ sscanf(line+length("%%PageOrientation:"), "%256s", text);
+ if (strcmp(text, "Portrait") == 0) {
+ doc->default_page_orientation = GTK_GS_ORIENTATION_PORTRAIT;
+ } else if (strcmp(text, "Landscape") == 0) {
+@@ -695,7 +695,7 @@
+ /* Do nothing */
+ } else if (doc->default_page_orientation == NONE &&
+ iscomment(line+2, "PageOrientation:")) {
+- sscanf(line+length("%%PageOrientation:"), "%s", text);
++ sscanf(line+length("%%PageOrientation:"), "%256s", text);
+ if (strcmp(text, "Portrait") == 0) {
+ doc->default_page_orientation = GTK_GS_ORIENTATION_PORTRAIT;
+ } else if (strcmp(text, "Landscape") == 0) {
+@@ -837,7 +837,7 @@
+ /* Do nothing */
+ } else if (doc->pages[doc->numpages].orientation == NONE &&
+ iscomment(line+2, "PageOrientation:")) {
+- sscanf(line+length("%%PageOrientation:"), "%s", text);
++ sscanf(line+length("%%PageOrientation:"), "%256s", text);
+ if (strcmp(text, "Portrait") == 0) {
+ doc->pages[doc->numpages].orientation = GTK_GS_ORIENTATION_PORTRAIT;
+ } else if (strcmp(text, "Landscape") == 0) {
+@@ -872,7 +872,7 @@
+ g_free(cp);
+ } else if ((page_bb_set == NONE || page_bb_set == ATEND) &&
+ iscomment(line+2, "PageBoundingBox:")) {
+- sscanf(line+length("%%PageBoundingBox:"), "%s", text);
++ sscanf(line+length("%%PageBoundingBox:"), "%256s", text);
+ if (strcmp(text, "(atend)") == 0) {
+ page_bb_set = ATEND;
+ } else {
+@@ -986,7 +986,7 @@
+ }
+ } else if (orientation_set == ATEND &&
+ iscomment(line+2, "Orientation:")) {
+- sscanf(line+length("%%Orientation:"), "%s", text);
++ sscanf(line+length("%%Orientation:"), "%256s", text);
+ if (strcmp(text, "Portrait") == 0) {
+ doc->orientation = GTK_GS_ORIENTATION_PORTRAIT;
+ } else if (strcmp(text, "Landscape") == 0) {
+@@ -996,7 +996,7 @@
+ doc->orientation = GTK_GS_ORIENTATION_SEASCAPE;
+ }
+ } else if (page_order_set == ATEND && iscomment(line+2, "PageOrder:")) {
+- sscanf(line+length("%%PageOrder:"), "%s", text);
++ sscanf(line+length("%%PageOrder:"), "%256s", text);
+ if (strcmp(text, "Ascend") == 0) {
+ doc->pageorder = ASCEND;
+ } else if (strcmp(text, "Descend") == 0) {
+@@ -1278,7 +1278,7 @@
+ else if IS_BEGIN("Data:") {
+ text[0] = '\0';
+ strcpy(save, line+7);
+- if (sscanf(line+length("%%BeginData:"), "%d %*s %s", &num, text) >= 1) {
++ if (sscanf(line+length("%%BeginData:"), "%d %*s %256s", &num, text) >= 1) {
+ if (strcmp(text, "Lines") == 0) {
+ for (i=0; i < num; i++) {
+ cp = fgets(line, size, fp);
+@@ -1402,7 +1402,7 @@
+ } else if (iscomment(line+7, "Data:")) {
+ text[0] = '\0';
+ strcpy(save, line+7);
+- if (sscanf(line+length("%%BeginData:"), "%d %*s %s", &num, text) >= 1) {
++ if (sscanf(line+length("%%BeginData:"), "%d %*s %256s", &num, text) >= 1) {
+ if (strcmp(text, "Lines") == 0) {
+ for (i=0; i < num; i++) {
+ cp = fgets(line, size, fp);
+@@ -1477,7 +1477,7 @@
+ } else if (iscomment(line+7, "Data:")) {
+ text[0] = '\0';
+ if (sscanf(line+length("%%BeginData:"),
+- "%d %*s %s", &num, text) >= 1) {
++ "%d %*s %256s", &num, text) >= 1) {
+ if (strcmp(text, "Lines") == 0) {
+ for (i=0; i < num; i++) {
+ fgets(line, sizeof(line), from);
+@@ -1546,7 +1546,7 @@
+ } else if (iscomment(line+7, "Data:")) {
+ text[0] = '\0';
+ if (sscanf(line+length("%%BeginData:"),
+- "%d %*s %s", &num, text) >= 1) {
++ "%d %*s %256s", &num, text) >= 1) {
+ if (strcmp(text, "Lines") == 0) {
+ for (i=0; i < num; i++) {
+ fgets(line, sizeof line, from);
+@@ -1624,7 +1624,7 @@
+ g_free(comment);
+ continue;
+ }
+- sscanf(comment+length("%%Pages:"), "%s", text);
++ sscanf(comment+length("%%Pages:"), "%256s", text);
+ if (strcmp(text, "(atend)") == 0) {
+ gtk_gs_doc_sink_write(dest, comment, strlen(comment));
+ pages_atend = TRUE;