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

[mgp-users-jp 1419] Re: 1.13a



川本です。

> 興味のある方は最新のコードを試してみて、大きな問題がないかチェックして

だいぶ前に調べたけど報告するのを忘れていたところが
あります。

depth関係で、元のコードだと32bit depthの時に
おかしくなります。Xvfbでdepthを32bitにしてて
見つけました。

--- draw.c-dist	2008-01-19 02:43:20.000000000 +0900
+++ draw.c	2008-01-24 10:31:33.000000000 +0900
@@ -2206,7 +2206,7 @@
 	if (obj != NULL) {	/* VFONT exist */
 		xim = XCreateImage(display, visual, depth, ZPixmap,
 				0, NULL, width, height,
-				8 << (depth - 1) / 8, 0);
+				(depth <= 8) ? 8 : (depth <= 16) ? 16 : 32, 0);
 		xim->data = malloc(xim->bytes_per_line * height);
 		if (COMPLEX_BGIMAGE) {
 			u_int bw, bh, bx, by, ox, oy;

--- x11.c-dist	2007-02-16 22:50:04.000000000 +0900
+++ x11.c	2007-02-17 15:18:06.000000000 +0900
@@ -89,7 +89,7 @@
 	for (i = 0; i < ninfo; i++) {
 		switch (vinfo[i].class) {
 		case TrueColor:
-			if (vinfo[i].depth < 15)
+			if (vinfo[i].depth < 15 || 24 < vinfo[i].depth)
 				break;
 			if (best == NULL ||
 			    best->class != TrueColor ||

-- 
iかわもと よしひさ!
                   kawamoto@tenjin.org