Кварцевая PDF-контекстная функция не срабатывает (иногда) с BAD_ACCESS - PullRequest
0 голосов
/ 10 ноября 2010

Я получаю достаточно часто BAD_ACCESS, когда я вызываю эту функцию Quartz:

CGContextDrawPDFPage ((CGContextRef)context, (CGPDFPageRef)pageRef);

Вот как я ее называю:

CGContextRef context = UIGraphicsGetCurrentContext();
//translate, scale
CGPDFPageRef myPageRef = CGPDFDocumentGetPage ([PDFDocument sharedPDFDocument].documentData, pageNumber);
CGContextDrawPDFPage (context, myPageRef);//BAD_ACCESS HERE
return UIGraphicsGetImageFromCurrentImageContext();//autoreleased- saved on return
//close context

Ни одна из переменных не равна Nil или не была освобождена/ auto release.

Вот трассировка стека от отладчика:

Ответы [ 2 ]

0 голосов
/ 06 декабря 2010

Во время написания вопроса, UIGraphicsGetImageFromCurrentImageContext и таких функций, где не безопасно для потоков, это была моя проблема.Начиная с версии 4.1 и более многие функции пользовательского интерфейса теперь безопасны для потоков.

0 голосов
/ 10 ноября 2010

Проверьте документацию, которая возвращает ваш myPageRef и посмотрите, если вы должны сохранить его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...