swarm-support
[Top][All Lists]
Advanced

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

[Swarm-Support] Running Swarm in Fedora 11 (as well as other Linux that


From: Paul Johnson
Subject: [Swarm-Support] Running Swarm in Fedora 11 (as well as other Linux that have installed tk8.5)
Date: Fri, 07 Aug 2009 14:45:25 -0500
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1b3pre) Gecko/20090513 Fedora/3.0-2.3.beta2.fc11 Thunderbird/3.0b2

Hey, everybody.

Here's the README.txt I just posted in 
http://pj.freefaculty.org/Swarm/Swarm-2.2X_F11.

People who run Swarm programs in Fedora 11 see this:

 $ ./heatbugs
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 147 (RENDER)
Minor opcode of failed request: 4 (RenderCreatePicture)
Serial number of failed request: 6681
Current serial number in output stream: 6690


There is a bug in tk8.5. It apparently affects all platforms and
distributions of Linux, including Ubuntu and Fedora 11. The problem deals
with anti-aliased fonts.  The big improvement from tk8.4 to tk8.5 is
supposed to be the more beautiful, more modern looking widgets and
better fonts.  That "improvement" is at the source of our trouble. Not
all programs cause the crash because there are various ways of writing
text and only rotated text drawn in a particular way triggers the problem.

BLT is one of the few programs that triggers that bug, and there is no
perfectly good answer yet. There seem to be not too many people who
are actually trying to fix this, either in tk or blt.  The tk folks
say it would slow the program down too much to fix it, and blt should
take a new approach. The packagers for Fedora 11 have already
made a number of enhancements to bring BLT into line with tk8.5, but
apparently not all issues were solved. Unfortunately, the BLT author has once 
again
gone missing, as he has often done in the past. He will turn up
later, I expect. (Long time Swarm users may recall the volunteer-created
update "BLT-8.0-unofficial," which
arose during one of the author's absences.).

I'm tracking this problem in a number of contexts.  At the current
time, you have two options to make Swarm programs run in F11.

1. Install the tk packages here that are built without xft enhanced
fonts. I have those packages in this directory.
Then install Swarm.  That will run.


2. Leave the original tk packages on your F11 system, and install the
patched blt packages I have here.  These are rebuilt from the F11
source, with the exception that a patch is applied to force the
render system to use X fonts rather than the tcl tk routine. This
workaround was suggested by Carlos Vidal. His post was in the discussion
of this bug:

====================================================

[Bug 504388] blt tabset produces an X11 error BadMatch (invalid parameter 
attributes)

You can find that in the bugzilla tracker for redhat.  
https://bugzilla.redhat.com.

--- Comment #5 from Carlos Vidal<address@hidden>   2009-08-05 08:03:24 EDT ---
In effect, the problem is due to the call to Tk_DrawChars. The following patch
bypasses the problem. It is simple but it doesn't use Xft for Blt texts.

--- blt2.4z/src/bltText.c       2009-08-05 11:31:28.936922322 +0200
+++ blt2.4z.new/src/bltText.c   2009-08-05 13:47:07.446070675 +0200
@@ -48,12 +48,15 @@

     fragPtr = textPtr->fragArr;
     for (i = 0; i<  textPtr->nFrags; i++, fragPtr++) {
+/*
 #if HAVE_UTF
        Tk_DrawChars(display, drawable, gc, font, fragPtr->text,
            fragPtr->count, x + fragPtr->x, y + fragPtr->y);
 #else
+*/
        XDrawString(display, drawable, gc, x + fragPtr->x, y + fragPtr->y,
            fragPtr->text, fragPtr->count);
+#if HAVE_UTF
 #endif /*HAVE_UTF*/
     }
 }


Basically, I just commented out the Tk_DrawChars section of the #if / #endif.

=================================

I notice I built swarm-2.2.5 rpms for F11, but I neglected to  build 
swarm-2.3.0.
I don't think that was an intentional act.  I'm running 2.3.0 on my other 
systems,
so I expect I will build that for F11 later.

PJ

http://pj.freefaculty.org/Swarm



reply via email to

[Prev in Thread] Current Thread [Next in Thread]