Otrzymuję wiele takich wyników konsoli bez awarii mojej aplikacji:
malloc: * błąd obiektu 0xc6a3970: zwalniany wskaźnik nie został przydzielony * ustaw punkt przerwania w malloc_error_break do debugowania
Jak mogę się dowiedzieć, którego obiektu lub zmiennej dotyczy problem?
Próbowałem ustawić symboliczny punkt przerwania w ten sposób, ale nigdy się nie zatrzymuje:
Odpowiedzi:
Ustaw punkt przerwania na malloc_error_break (), otwierając nawigator punktów przerwania (Widok-> Nawigatory-> Pokaż nawigator punktów przerwania lub ⌘7), klikając przycisk plus w lewym dolnym rogu i wybierając „Dodaj symboliczny punkt przerwania”. W wyskakującym okienku wpisz
malloc_error_break
w polu Symbol, a następnie kliknij Gotowe.EDYCJA: openfrog dodał zrzut ekranu i wskazał, że wypróbował już te kroki bez powodzenia po tym, jak opublikowałem moją odpowiedź. Po tej edycji nie jestem pewien, co powiedzieć. Nie widziałem, żeby to nie zadziałało, i rzeczywiście, zawsze trzymam punkt przerwania na ustawieniu malloc_error_break.
źródło
UIImage
kopię zapasową pliku i nadpisałem plik innym obrazem. Spowodowało to błąd, gdy wywołałemUIImagePNGRepresentation
oryginalny obraz (nie wtedy, gdy plik został faktycznie nadpisany).⌘7
paska ... Może miałeś na myśli⌘8
?Na zrzucie ekranu nie wskazałeś żadnego modułu: spróbuj ustawić „libsystem_c.dylib”
Zrobiłem to i działa: punkt przerwania zatrzymuje się tutaj (chociaż ślad stosu często powstaje z jakiejś niejasnej biblioteki systemowej ...)
źródło
libsystem_malloc.dylib
. Punkt przerwania działa dla mnie bez określania modułu.Miałem ten sam problem z Xcode. Poszedłem za krokami, które podałeś i to nie zadziałało. Oszalałem, ponieważ na każdym forum, które widziałem, wszystkie wskazówki dotyczące tego problemu są tymi, które podawałeś. W końcu zobaczyłem, że wstawiłem spację po malloc_error_break, stłumiłem to i teraz działa. Głupi problem, ale jeśli rozwiązanie nie działa, upewnij się, że nie masz miejsca przed i po malloc_error_break.
Mam nadzieję, że ta wiadomość pomoże ...
źródło
Miałem uprawnienia, że nie powinienem pisać w niektórych folderach (zwłaszcza / usr / bin /) i to spowodowało problem. Naprawiłem to, otwierając Narzędzie dyskowe i uruchamiając „Napraw uprawnienia do dysku” na dysku Macintosh HD.
źródło
Rozwiązuję to przez bliskiego inspektora safari. Zapoznaj się z moim postem . Czasami znajdowałem dźwięk, kiedy uruchamiam moją aplikację do testowania, potem otwieram safari z włączonym automatycznym inspektorem, po czym wykonuję jakąś akcję w mojej aplikacji, a następnie pojawia się ten problem.
źródło