Calls to imagettftext cause fatal error in php

Bill Hernandez ms at mac-specialist.com
Tue Jul 8 16:17:48 PDT 2008


Yesterday 'imagettftext' was working at the end of the day. It even  
worked with ZEND DEBUGGER, which shocked me.

Today I tried running it, and I get :

Safari can’t open the page.

Safari can’t open the page “http://localhost/vh_shared/databases/PgSQL/not_done/php_31/captcha_one/random_image_sample.php 
”. The error was: “Operation could not be completed.  
(kCFErrorDomainCFNetwork error 302.)” (kCFErrorDomainCFNetwork:302)  
Please choose Report Bugs to Apple from the Safari menu, note the  
error number, and describe what you did before you saw this message.

When I look at the Apache error.log, it is once again filled with :

The process has forked and you cannot use this CoreFoundation  
functionality safely. You MUST exec().

Break on  
__THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__ 
() to debug.



I began searching the web and found similar problems with others  
running Cold Fusion, and other applications, and also noticed that  
there was a new bug report at :

----------------------------------------------

http://trac.macports.org/ticket/15909

Ticket #15909 (new defect)
freetype 2.3.7 / php5 5.2.6 - PHP imagettftext broken
----------------------------------------------

In the messages below I noticed :

>> I modified my version of the Portfile (running from trunk)
>>
>> 	--with-fsspec=no
>> 	--with-fsref=no
>> 	--with-quickdraw-toolbox=no
>> 	--with-quickdraw-carbon=no
>> 	--with-old-mac-fonts=no //this one is for me, since I don't use  
>> old mac fonts ;-)
>>
>> and left --with-ats alone.
>>
>> Followed with
>>
>> 	sudo port configure freetype
>> 	sudo port build freetype
>> 	sudo port install -f freetype
>>
>> hand tested PHP, works as advertised.
>

Are there any detailed instructions on how to do this. I tried reading  
the manual, but came away scratching my head ?

Appreciate any help solving this.

Bill Hernandez
Plano, Texas


On Jul 7, 2008, at 3:56 PM, Ryan Schmidt wrote:

>
> On Jul 7, 2008, at 15:08, Chris Janton wrote:
>
>> On 2008-07-07 , at 11:53 , Ryan Schmidt wrote:
>>
>>>> The way I read things is that if one turns off quickdraw in  
>>>> freetype
>>>> then the "problem" will not occur.
>>>
>>> What are the implications of turning off QuickDraw in FreeType? What
>>> features will then not work?
>>
>> From what I can see? No more deprecated QuickDraw functions. The  
>> following configuration settings seem relevant...
>>
>> --with-old-mac-fonts    allow Mac resource-based fonts to be used
>
> That configure switch was added to the portfile at the request of a  
> user:
>
> http://trac.macports.org/ticket/13045
>
>
>> --with-fsspec           use obsolete FSSpec API of MacOS, if  
>> available
>>                         (default=yes)
>> --with-fsref            use Carbon FSRef API of MacOS, if available
>>                         (default=yes)
>> --with-quickdraw-toolbox
>>                         use MacOS QuickDraw in ToolBox, if available
>>                         (default=yes)
>> --with-quickdraw-carbon use MacOS QuickDraw in Carbon, if available
>>                         (default=yes)
>> --with-ats              use AppleTypeService, if available  
>> (default=yes)
>>
>> I modified my version of the Portfile (running from trunk)
>>
>> 	--with-fsspec=no
>> 	--with-fsref=no
>> 	--with-quickdraw-toolbox=no
>> 	--with-quickdraw-carbon=no
>> 	--with-old-mac-fonts=no //this one is for me, since I don't use  
>> old mac fonts ;-)
>>
>> and left --with-ats alone.
>>
>> Followed with
>>
>> 	sudo port configure freetype
>> 	sudo port build freetype
>> 	sudo port install -f freetype
>>
>> hand tested PHP, works as advertised.
>>
>> 	sudo /opt/local/apache2/bin/apachectl graceful
>>
>> tested the same PHP code with web browser. I got an image with text  
>> on it as expected (the same image that gets produced by a running  
>> the PHP straight-up).
>>
>> From what I read the only "feature" that doesn't work anymore is  
>> the ability to use freetype with old-style Mac file specs and  
>> references.
>
> So I guess this would be a matter of some software that would want  
> to access fonts with old-style Mac file specs and references? But  
> disabling the QuickDraw and FSSpec and FSRef functions wouldn't  
> affect FreeType's ability to load old Mac fonts?
>
>> Anyway - I was just taking the opportunity to look into MacPorts in  
>> more depth. I don't have any attachment to a change or not change  
>> in the freetype port.
>
>

Bill Hernandez
ms at mac-specialist.com





More information about the macports-users mailing list