freetype-devel
[Top][All Lists]
Advanced

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

Re: [Devel] Black rendering failing on LLP64 bit model hosts


From: David Turner
Subject: Re: [Devel] Black rendering failing on LLP64 bit model hosts
Date: Fri, 04 Jun 2004 23:06:57 +0200
User-agent: Mozilla Thunderbird 0.5 (Windows/20040207)

Hello Robert,

Could you tell us if the following changes don't solve the problem too.
I find them simpler:

i.e. replace the line that says:

  #define AlignProfileSize \
          ( ( sizeof ( TProfile ) + sizeof ( long ) - 1 ) / sizeof ( long ) )

with

  typedef union
  {
    long    l;
    void*   p;

  } Alignment;

  #define AlignProfileSize \
          ( ( sizeof ( TProfile ) + sizeof ( Alignment ) - 1 ) / sizeof ( long 
) )

it should do the trick while minimizing changes in the code.

Thanks in advance,

- David Turner
- The FreeType Project  (www.freetype.org)


Robert Dolan wrote:


Hello, There is a problem that you may not be aware of on 64-bit Intel ( LLP64 ) systems with the 2.1.5 ftraster.c code. The PLONG data type was declared to be "typedef long *" but should probably have been declared to be a pointer to a type that is guaranteed to be the sizeof a pointer on all hosts. In my case, I was crashing in End_Profile 657 with a data misalignment error . Changing PLONG to an internal type that is always the sizeof a pointer and likewise modifying ft_black_reset so that the sizeof the raster buffer would be computed correctly solved the problem. Rob Dolan




reply via email to

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