kean / Pulse

Network logger for Apple platforms
https://pulselogger.com
MIT License
6.3k stars 302 forks source link

Crash when hitting "Remove Logs" #242

Open Tibimac opened 7 months ago

Tibimac commented 7 months ago

In some cases but fairly regularly a crash occurs in Pulse+Extensions.swift because the function func state(in store: LoggerStore) -> NetworkTaskEntity.State? is accessing to the property session but because the object (NetworkTaskEntity) has been deleted the property is nil and Pulse crashs the app.

Capture d’écran 2024-03-01 à 16 55 54 Capture d’écran 2024-03-01 à 16 57 49
sgc109 commented 7 months ago

I'm running into the same issue.

kean commented 4 months ago

Hi, I would appreciate if you could include some more details:

kakao-kevin-p commented 4 months ago

i got a same issue too

Tibimac commented 3 months ago

@kean Hello, today I had the crash when running on simulator. Here's the information : macOS 14.3.1 Xcode 15.4 Simulator : iPhone 15 Pro (iOS 17.5)

The steps to reproduce are always the same but the crash doesn't occurs each time : opening the Pulse console and selecting "Remove Logs".

Thread 1 Queue : com.apple.main-thread (serial)
#0  0x0000000180ad8d68 in static UUID._unconditionallyBridgeFromObjectiveC(_:) ()
#1  0x000000010612e57c in NetworkTaskEntity.state(in:) at /Users/lecornec/Library/Developer/Xcode/DerivedData/Babylone-befnxfuqzavhicgfztkoiawdypwb/SourcePackages/checkouts/Pulse/Sources/PulseUI/Extensions/Pulse+Extensions.swift:69
#2  0x0000000106320e34 in StatusLabelViewModel.init(task:store:) at /Users/lecornec/Library/Developer/Xcode/DerivedData/Babylone-befnxfuqzavhicgfztkoiawdypwb/SourcePackages/checkouts/Pulse/Sources/PulseUI/Helpers/StatusLabelViewModel.swift:15
#3  0x000000010618fd9c in closure #1 in ConsoleTaskCell.title.getter at /Users/lecornec/Library/Developer/Xcode/DerivedData/Babylone-befnxfuqzavhicgfztkoiawdypwb/SourcePackages/checkouts/Pulse/Sources/PulseUI/Features/Console/Views/ConsoleTaskCell.swift:56
#4  0x00000001ccffad34 in HStack.init(alignment:spacing:content:) ()
#5  0x000000010618eda4 in ConsoleTaskCell.title.getter at /Users/lecornec/Library/Developer/Xcode/DerivedData/Babylone-befnxfuqzavhicgfztkoiawdypwb/SourcePackages/checkouts/Pulse/Sources/PulseUI/Features/Console/Views/ConsoleTaskCell.swift:51
#6  0x000000010618e360 in closure #1 in ConsoleTaskCell.body.getter at /Users/lecornec/Library/Developer/Xcode/DerivedData/Babylone-befnxfuqzavhicgfztkoiawdypwb/SourcePackages/checkouts/Pulse/Sources/PulseUI/Features/Console/Views/ConsoleTaskCell.swift:27
#7  0x00000001cc750988 in VStack.init(alignment:spacing:content:) ()
#8  0x000000010618dbb4 in ConsoleTaskCell.body.getter at /Users/lecornec/Library/Developer/Xcode/DerivedData/Babylone-befnxfuqzavhicgfztkoiawdypwb/SourcePackages/checkouts/Pulse/Sources/PulseUI/Features/Console/Views/ConsoleTaskCell.swift:26
#9  0x0000000106193228 in protocol witness for View.body.getter in conformance ConsoleTaskCell ()
#10 0x00000001cc838ce0 in ___lldb_unnamed_symbol143926 ()
#11 0x00000001cd561d30 in ___lldb_unnamed_symbol250826 ()
#12 0x00000001cd561a28 in ___lldb_unnamed_symbol250825 ()
#13 0x00000001cc2697f4 in ___lldb_unnamed_symbol104313 ()
#14 0x00000001b9d4f5c4 in AG::Graph::UpdateStack::update() ()
#15 0x00000001b9d4fd54 in AG::Graph::update_attribute(AG::data::ptr<AG::Node>, unsigned int) ()
#16 0x00000001b9d57d2c in AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, unsigned int, AGSwiftMetadata const*, unsigned char&, long) ()
#17 0x00000001b9d6ee24 in AGGraphGetValue ()
#18 0x00000001ccfb1dc8 in ___lldb_unnamed_symbol205193 ()
#19 0x00000001ccfb1f40 in ___lldb_unnamed_symbol205201 ()
#20 0x00000001cc2697f4 in ___lldb_unnamed_symbol104313 ()
#21 0x00000001b9d4f5c4 in AG::Graph::UpdateStack::update() ()
#22 0x00000001b9d4fd54 in AG::Graph::update_attribute(AG::data::ptr<AG::Node>, unsigned int) ()
#23 0x00000001b9d57d2c in AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, unsigned int, AGSwiftMetadata const*, unsigned char&, long) ()
#24 0x00000001b9d6ee24 in AGGraphGetValue ()
#25 0x00000001cce72508 in ___lldb_unnamed_symbol194883 ()
#26 0x00000001b9d4f5c4 in AG::Graph::UpdateStack::update() ()
#27 0x00000001b9d4fd54 in AG::Graph::update_attribute(AG::data::ptr<AG::Node>, unsigned int) ()
#28 0x00000001b9d57d2c in AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, unsigned int, AGSwiftMetadata const*, unsigned char&, long) ()
#29 0x00000001b9d6ee24 in AGGraphGetValue ()
#30 0x00000001ccfb2b30 in ___lldb_unnamed_symbol205205 ()
#31 0x00000001ccfb23cc in ___lldb_unnamed_symbol205201 ()
#32 0x00000001cc2697f4 in ___lldb_unnamed_symbol104313 ()
#33 0x00000001b9d4f5c4 in AG::Graph::UpdateStack::update() ()
#34 0x00000001b9d4fd54 in AG::Graph::update_attribute(AG::data::ptr<AG::Node>, unsigned int) ()
#35 0x00000001b9d57d2c in AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, unsigned int, AGSwiftMetadata const*, unsigned char&, long) ()
#36 0x00000001b9d6ee24 in AGGraphGetValue ()
#37 0x00000001ccfb2b30 in ___lldb_unnamed_symbol205205 ()
#38 0x00000001ccfb23cc in ___lldb_unnamed_symbol205201 ()
#39 0x00000001cc2697f4 in ___lldb_unnamed_symbol104313 ()
#40 0x00000001b9d4f5c4 in AG::Graph::UpdateStack::update() ()
#41 0x00000001b9d4fd54 in AG::Graph::update_attribute(AG::data::ptr<AG::Node>, unsigned int) ()
#42 0x00000001b9d57b4c in AG::Graph::input_value_ref_slow(AG::data::ptr<AG::Node>, AG::AttributeID, unsigned int, unsigned int, AGSwiftMetadata const*, unsigned char&, long) ()
#43 0x00000001b9d6ebd0 in AGGraphGetInputValue ()
#44 0x00000001cd04ac04 in ___lldb_unnamed_symbol208585 ()
#45 0x00000001cd04b194 in ___lldb_unnamed_symbol208586 ()
#46 0x00000001cd04ab6c in ___lldb_unnamed_symbol208584 ()
#47 0x00000001cd04fce8 in ___lldb_unnamed_symbol208731 ()
#48 0x00000001ccfb3d14 in ___lldb_unnamed_symbol205227 ()
#49 0x00000001cd7651ec in ___lldb_unnamed_symbol268329 ()
#50 0x00000001ccfb3d14 in ___lldb_unnamed_symbol205227 ()
#51 0x00000001cd7651ec in ___lldb_unnamed_symbol268329 ()
#52 0x00000001cd7651ec in ___lldb_unnamed_symbol268329 ()
#53 0x00000001ccfb3d14 in ___lldb_unnamed_symbol205227 ()
#54 0x00000001cd011024 in ___lldb_unnamed_symbol207206 ()
#55 0x00000001cc6eb138 in ___lldb_unnamed_symbol134376 ()
#56 0x00000001cc2697f4 in ___lldb_unnamed_symbol104313 ()
#57 0x00000001b9d4f5c4 in AG::Graph::UpdateStack::update() ()
#58 0x00000001b9d4fd54 in AG::Graph::update_attribute(AG::data::ptr<AG::Node>, unsigned int) ()
#59 0x00000001b9d5d8d0 in AG::Subgraph::update(unsigned int) ()
#60 0x00000001cd42b714 in ___lldb_unnamed_symbol240810 ()
#61 0x00000001cd42c960 in ___lldb_unnamed_symbol240867 ()
#62 0x00000001ccbfcb4c in ___lldb_unnamed_symbol174714 ()
#63 0x00000001cd4d8d74 in ___lldb_unnamed_symbol246129 ()
#64 0x00000001cd4d7a10 in ___lldb_unnamed_symbol246027 ()
#65 0x00000001ccbf45b8 in ___lldb_unnamed_symbol174490 ()
#66 0x00000001cd42c92c in ___lldb_unnamed_symbol240866 ()
#67 0x00000001cd42c864 in ___lldb_unnamed_symbol240865 ()
#68 0x00000001ccf0b1a8 in ___lldb_unnamed_symbol199374 ()
#69 0x00000001cc6f50d8 in ___lldb_unnamed_symbol134632 ()
#70 0x00000001cc6f5040 in ___lldb_unnamed_symbol134631 ()
#71 0x00000001cc6f5160 in ___lldb_unnamed_symbol134633 ()
#72 0x000000018040ddf4 in __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ ()
#73 0x00000001804087f8 in __CFRunLoopDoObservers ()
#74 0x0000000180408cb0 in __CFRunLoopRun ()
#75 0x00000001804084d4 in CFRunLoopRunSpecific ()
#76 0x000000018ef2aae4 in GSEventRunModal ()
#77 0x00000001853d0a28 in -[UIApplication _run] ()
#78 0x00000001853d46b0 in UIApplicationMain ()
#79 0x00000001057fab18 in main at /Users/lecornec/Documents/mobile/app/Babylone/main.swift:12
#80 0x000000010ad65544 in start_sim ()
#81 0x000000010af860e0 in start ()

I hope this could help 🤞