2012-12-26 28 views
91

tôi nhận được rất nhiều giao diện điều khiển đầu ra như thế này mà không bị rơi ứng dụng của tôi:Làm thế nào để "thiết lập một breakpoint trong malloc_error_break để gỡ lỗi"

malloc: * lỗi cho đối tượng 0xc6a3970: con trỏ được trả tự do là không phân bổ * thiết lập một breakpoint trong malloc_error_break để gỡ lỗi

Làm thế nào tôi có thể tìm ra các đối tượng hoặc biến bị ảnh hưởng?

tôi đã cố gắng thiết lập một breakpoint mang tính biểu tượng như thế này nhưng nó không bao giờ ngừng:

enter image description here

+1

Tôi giải quyết vấn đề này bằng cách tắt kiểm tra safari. http://stackoverflow.com/a/43885754/6521116 –

Trả lời

105

Đặt một breakpoint trên malloc_error_break() bằng cách mở Breakpoint Navigator (View-> Navigators-> Hiển thị Breakpoint Navigator hoặc ⌘ 7), nhấp vào nút dấu cộng ở góc dưới bên trái và chọn "Thêm điểm ngắt biểu tượng". Trong cửa sổ bật lên xuất hiện, nhập malloc_error_break vào trường Biểu tượng, sau đó nhấp vào Xong.

EDIT: openfrog đã thêm ảnh chụp màn hình và cho biết rằng anh ấy đã thử các bước này mà không thành công sau Tôi đã đăng câu trả lời của mình. Với bản chỉnh sửa đó, tôi không chắc phải nói gì. Tôi đã không thấy rằng không làm việc bản thân mình, và thực sự tôi luôn luôn giữ một breakpoint trên malloc_error_break thiết lập.

+0

Điều này làm việc cho tôi, lldb, Xcode 4.6.3 –

+1

Điều này làm việc cho tôi (không có mô-đun). Nguyên nhân của vấn đề đối với tôi là tôi đã có một 'UIImage' được hỗ trợ bởi một tập tin, và tôi đã ghi đè lên tập tin với một hình ảnh khác. Điều này gây ra lỗi khi tôi gọi 'UIImagePNGRepresentation' trên hình ảnh gốc (không phải khi tệp thực sự bị ghi đè). – Robert

5

Tôi gặp vấn đề tương tự với Xcode. Tôi đã làm theo các bước bạn đã cung cấp và nó không hoạt động. Tôi trở nên điên rồ bởi vì trong mọi diễn đàn tôi thấy, tất cả các manh mối cho vấn đề này là vấn đề bạn đưa ra. Cuối cùng tôi đã nhìn thấy tôi đặt một không gian sau khi malloc_error_break, tôi đè nén nó và bây giờ nó hoạt động. Một vấn đề ngớ ngẩn nhưng nếu giải pháp không hoạt động, hãy chắc chắn bạn đã không đặt bất kỳ không gian trước và sau khi malloc_error_break.

Hope thông điệp này sẽ giúp ..

+1

Nó được gọi là "Xcode";) – yas375

37

Trong ảnh chụp màn hình của bạn, bạn không chỉ định bất kỳ mô-đun: cố gắng thiết lập "libsystem_c.dylib"

enter image description here

tôi đã làm điều đó, và nó hoạt động : breakpoint dừng ở đây (mặc dù stacktrace thường tăng từ một số hệ thống tối nghĩa lib ...)

+6

Có vẻ như tên mô-đun khác trong iOS, đó là: 'libsystem_malloc.dylib'. Breakpoint làm việc cho tôi mà không cần chỉ định một module. – Nestor

4

Tôi đã cấp quyền tôi không cần phải viết trong một số thư mục (đặc biệt là/usr/bin /) và cái p roblem. Tôi đã sửa nó bằng cách mở Disk Utility và chạy 'Repair Disk Permissions' trên đĩa Macintosh HD.

+0

Cảm ơn, điều này cố định máy borked của tôi. –

2

Tôi giải quyết nó bằng thanh tra an toàn gần. Hãy tham khảo post của tôi. Tôi cũng tìm thấy âm thanh đôi khi khi tôi chạy ứng dụng của mình để thử nghiệm, sau đó tôi mở safari với thanh tra tự động, sau này, tôi thực hiện một số hành động trong ứng dụng của mình thì sự cố này được kích hoạt.

enter image description here

Các vấn đề liên quan