nanogui: About pcf_readbitmaps function
Subject:
Re: [nanogui] About pcf_readbitmaps function
From:
Roberto ####@####.####
Date:
3 Feb 2007 10:47:55 +0000
Message-Id: <45C4681C.8020701@tnw2000.org>
Hi Caleb,
I'm not sure, because its some time ago, but I thik I had some
problems with pcf fonts which have more than 256 glyphs included.
The pcf function only allocated space for 256 glyphs which resulted
in a segmentation fault with bigger pcf files.
But like mentioned above, it was some years ago I had this effect.
May be your problem is different.
roberto
Caleb Harper wrote:
> Hi,
>
> I'm new to nano-X, and I've also noticed that the .pcf files from my FC
> install cause nano-X to crash. I've only had success with the .pcf files
> packaged with nano-X. Do I need a special tool to generate valid .pcf
> files
> (I've tried bdftopcf) or is there somewhere I can download them?
>
> Thanks,
> Caleb Harper
>
> On 2/1/07, max xiayi ####@####.#### wrote:
>
>>
>> Hi Greg,
>>
>> Thanks for your important message.
>>
>> I do check the byte order. It seems that my config file is set
>> correctly.
>> After analyse the pcf file, i found the point.
>> The pcf font files I use on arm board is from my PC ,Fedora 5. The files
>> seems that the byte order differs between the front header part and the
>> latter parts. And engine/font_pcf.c fails to deal with that situation.
>> For example,
>> helvB18-ISO8859-1.pcf,
>> format = readLSB32(file); //the format is got is 00 00 00 0E
>> endian = (format & PCF_BIT_MASK)? PCF_LSB_FIRST: PCF_MSB_FIRST;
>> num_glyphs = readLSB32(file);
>> // The value should be 00 00 00 C0, however after readLSB32, i got C0 00
>> 00
>> 00. it is wrong.
>> This is the reason of why my ARM system crashes.
>>
>> Thanks
>> Max
>> 2007/2/1, Greg Haerr ####@####.####
>> >
>> > : num_glyphs = readLSB32(file);
>> > : it seems that the num_glyphs is not read correctly.
>> >
>> > Check your endian format and make sure that the config
>> > file has it specified correctly. (BIGENDIAN=Y or N)
>> >
>> > Regards,
>> >
>> > Greg
>> >
>>
>>
>