Установите malloc_error_break в Xcode 4 - программирование
Подтвердить что ты не робот

Установите malloc_error_break в Xcode 4

Как установить malloc_error_break в Xcode4? Кроме того, я, кажется, получаю эту ошибку malloc: *** error for object 0x4d80814: incorrect checksum for freed object - object was probably modified after being freed.

В любом случае, я могу проверить, что такое объект 0x4d80814? Он не отображается в списке переменных в отладчике.

4b9b3361

Ответ 1

Я думаю, что так оно и было.

  • Нажмите навигатор точек останова (выглядит как столбец знака) в верхней части левой панели на XCode 4.
  • В нижнем левом углу есть знак плюса. Нажмите на нее.
  • Добавить Символическую точку останова и установить в качестве символа malloc_error_break.
  • Нажмите следующую кнопку контрольной точки (она выглядит как | > ) и находится на нижней панели. Он приведет вас к строке, которая вызывает ошибку.

Обычно это вызвано тем, что объекты создаются как подобъекты других объектов, которые еще не существуют (например, SKPhysicsBody создается до его создания)

Ответ 2

Вот как выглядит кнопка точек останова:

enter image description here

И это знак плюса в нижнем левом углу:

enter image description here

Человек, мне потребовалось некоторое время, чтобы найти их обоих!

Ответ 3

Вы также можете сделать это непосредственно через окно командной строки gdb.

break malloc_error_break

или в lldb:

breakpoint set -n malloc_error_break

Чтобы открыть окно командной строки отладчика в XCode 4, нажмите среднюю кнопку над "Вид" в верхнем правом углу, затем нажмите среднюю кнопку в правом верхнем углу нижней панели отладки, которая только что открылась. См. Также Вход в консоль в Xcode 4