On 7/28/11 10:07 PM, Daniel Johnson wrote:
> 
> On Jul 28, 2011, at 5:01 PM, Alexander Hansen wrote:
> 
>> I get a runtime error from drawtiming if using the libraries from
>> graphicsmagick-shlibs-1.3.12-1 (any Mac platform):
>>
>> $ drawtiming -o test.png /sw/share/drawtiming/samples/guenter.txt
>> Assertion failed: (semaphore_info != (SemaphoreInfo *) NULL), function
>> LockSemaphoreInfo, file magick/semaphore.c, line 525.
>>
>> By contrast, with graphicsmagick-shlibs-1.3.7-2 installed, I get the
>> following:
>>
>> $ drawtiming -o test.png /sw/share/drawtiming/samples/guenter.txt
>> $
>>
>> and test.png is generated
>>
>> Looking at the graphicsmagick sources, magick/semaphore.c has the
>> following on 1.3.12-1:
>>
>> MagickExport void LockSemaphoreInfo(SemaphoreInfo *semaphore_info)
>> {
>>  assert(semaphore_info != (SemaphoreInfo *) NULL);
>>  assert(semaphore_info->signature == MagickSignature);
>> #if defined(USE_POSIX_THREADS)
>>  PTHREAD_MUTEX_LOCK(&semaphore_info->mutex);
>> #endif
>> #if defined(USE_WIN32_THREADS)
>>  EnterCriticalSection(&semaphore_info->mutex);
>> #endif
>> }
>>
>> and on 1.3.7-2:
>>
>> MagickExport MagickPassFail LockSemaphoreInfo(SemaphoreInfo *semaphore_info)
>> {
>>  MagickPassFail
>>    status=MagickPass;
>>
>>  assert(semaphore_info != (SemaphoreInfo *) NULL);
>> /*   assert(semaphore_info->signature == MagickSignature); */
>> #if defined(USE_POSIX_THREADS)
>>  {
>>    int
>>      err_status;
>>
>>    if ((err_status = pthread_mutex_lock(&semaphore_info->mutex)) != 0)
>>      {
>>        errno=err_status;
>>        status=MagickFail;
>>      }
>>  }
>> #endif
>> #if defined(USE_WIN32_THREADS)
>>  EnterCriticalSection(&semaphore_info->mutex);
>> #endif
>>  return(status);
>> }
>>
>>
>> -- 
>> Alexander Hansen, Ph.D.
>> Fink User Liaison
>> http://finkakh.wordpress.com/
> 
> This is known: 
> http://sourceforge.net/tracker/?func=detail&aid=3104518&group_id=73485&atid=537937
> 
> The problem is actually in drawtiming. It's supposed to call 
> InitializeMagick() before doing anything but isn't. Apparently while this was 
> always supposed to be required, it used to work by accident. Now it's a hard 
> requirement.
> 
> Daniel
> 

Thanks for finding this.  Drawtiming is now fixed for all.

-- 
Alexander Hansen, Ph.D.
Fink User Liaison
http://finkakh.wordpress.com/

------------------------------------------------------------------------------
Got Input?   Slashdot Needs You.
Take our quick survey online.  Come on, we don't ask for help often.
Plus, you'll get a chance to win $100 to spend on ThinkGeek.
http://p.sf.net/sfu/slashdot-survey
_______________________________________________
Fink-devel mailing list
Fink-devel@lists.sourceforge.net
List archive:
http://news.gmane.org/gmane.os.apple.fink.devel
Subscription management:
https://lists.sourceforge.net/lists/listinfo/fink-devel

Reply via email to