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