[iphone] “디버그를 위해 malloc_error_break에서 중단 점을 설정”하는 방법

내 응용 프로그램이 충돌하지 않고 다음과 같은 많은 콘솔 출력이 표시됩니다.

malloc : * 개체 0xc6a3970에 대한 오류 : 해제되는 포인터가 할당되지 않았습니다. * malloc_error_break에서 중단 점을 디버그로 설정

영향을받는 개체 또는 변수를 어떻게 알 수 있습니까?

나는 이와 같은 상징적 중단 점을 설정하려고 시도했지만 결코 중단되지 않습니다.

여기에 이미지 설명 입력



답변

Breakpoint Navigator (View-> Navigators-> Show Breakpoint Navigator 또는 ⌘7)를 열고 왼쪽 하단 모서리에있는 더하기 버튼을 클릭 한 다음 “Add Symbolic Breakpoint”를 선택하여 malloc_error_break ()에 중단 점을 설정합니다. 표시되는 팝업 malloc_error_break에서 기호 필드에 입력 한 다음 완료를 클릭합니다.

편집 : openfrog는 스크린 샷을 추가했으며 내 답변을 게시 한 후 이미 성공하지 않고 이러한 단계를 시도했다고 표시했습니다 . 그 편집으로 무엇을 말해야할지 모르겠습니다. 나는 그것이 스스로 작동하지 않는 것을 보지 못했으며 실제로 항상 malloc_error_break 세트에 중단 점을 유지합니다.


답변

스크린 샷에서 모듈을 지정하지 않았습니다. “libsystem_c.dylib”를 설정해보십시오.

여기에 이미지 설명 입력

나는 그것을했고 그것은 작동합니다 : 중단 점이 여기에서 멈 춥니 다 (스택 트레이스는 종종 모호한 시스템 라이브러리에서 상승하지만 …)


답변

Xcode에서 같은 문제가 발생했습니다. 나는 당신이 준 단계를 따랐지만 작동하지 않았습니다. 내가 본 모든 포럼에서이 문제에 대한 모든 단서가 당신이 준 단서이기 때문에 나는 미쳤습니다. 나는 마침내 malloc_error_break 뒤에 공백을 넣는 것을 보았고 그것을 억제하고 이제 작동합니다. 바보 같은 문제이지만 솔루션이 작동하지 않으면 malloc_error_break 전후에 공백을 두지 않았는지 확인하십시오.

이 메시지가 도움이되기를 바랍니다 ..


답변

일부 폴더 (특히 / usr / bin /)에 쓸 필요가 없어야하는 권한을 부여했고 이로 인해 문제가 발생했습니다. 디스크 유틸리티를 열고 Macintosh HD 디스크에서 ‘디스크 권한 복구’를 실행하여 문제를 해결했습니다.


답변

가까운 사파리 인스펙터로 해결합니다. 내 게시물을 참조하십시오 . 또한 테스트를 위해 앱을 실행할 때 소리가 나는 것을 발견 한 다음 자동 검사기를 켠 상태에서 사파리를 연 후 앱에서 몇 가지 작업을 수행하면이 문제가 트리거됩니다.

여기에 이미지 설명 입력


답변