[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[mgp-users-jp 01171] Patch for %area bug of mgp2ps



番と申します。

  MagicPoint 1.09a で %area を使うと mgp2ps がうまく動いてくれない症状が
あったのでパッチを作りました。これで [mgp-users-jp 00950] の症状も直ると
思います。
  その際に、parse debug option(?) -PP 使用時に SEGV で落ちる症状に遭遇
したので、これも直しました。

diff -ru magicpoint-1.09a-orig/globals.c magicpoint-1.09a/globals.c
--- magicpoint-1.09a-orig/globals.c	Mon Sep 17 23:48:30 2001
+++ magicpoint-1.09a/globals.c	Tue Mar 11 11:21:29 2003
@@ -148,7 +148,7 @@
 /*CTL*/	{ CTL_TMFONT0,		T_STR,	"tmfont0", 7 },
 /*CTL*/	{ CTL_PCACHE,		T_SP,	"pcache", 6 },
 /*CTL*/	{ CTL_ANIM,		T_STR,	"anim", 4 },
-/*CTL*/	{ CTL_VALIGN,		T_STR,	"valign", 6 },
-/*CTL*/	{ CTL_AREA,		T_STR,	"area", 4 },
+/*CTL*/	{ CTL_VALIGN,		T_SP,	"valign", 6 },
+/*CTL*/	{ CTL_AREA,		T_SP,	"area", 4 },
 	{ 0, 0, NULL, 0 },
 };
diff -ru magicpoint-1.09a-orig/parse.c magicpoint-1.09a/parse.c
--- magicpoint-1.09a-orig/parse.c	Mon Sep 17 23:48:30 2001
+++ magicpoint-1.09a/parse.c	Tue Mar 11 13:02:28 2003
@@ -963,7 +963,7 @@
 				case CTL_CENTER: tmpvoid[0] = cp; break;
 				case CTL_LEFTFILL: tmpvoid[0] = cp; break;
 
-				case CTL_AREA: tmpvoid[0] = cp; break;
+				case CTL_AREA: tmparea[0] = cp; break;
 				}
 			}
 		}
@@ -1397,6 +1397,17 @@
 	case CTL_ICON:
 		fprintf(stderr, "type=%s color=%x siz=%d",
 			p->ctic_value, (int)p->ctic_color, (int) p->ctic_size);
+		break;
+	case CTL_VALIGN:
+		fprintf(stderr, ((p->cti_value == VL_CENTER) ? "center"
+				 : ((p->cti_value == VL_TOP) ? "top"
+				    : ((p->cti_value == VL_BOTTOM) ? "bottom"
+				       : "???"))));
+		break;
+	case CTL_AREA:
+		fprintf(stderr, "xoff=%d w=%d yoff=%d h=%d",
+			p->ctar_xoff, p->ctar_width,
+			p->ctar_yoff, p->ctar_height);
 		break;
 	default:
 		fprintf(stderr, "???");

-- 
番 伸宏  (東京大学情報理工学系研究科修士課程)