Better ipd crash report printing

This commit is contained in:
Kovid Goyal
2024-01-20 11:37:08 +05:30
parent 9935b5ddb2
commit d0621cb82a

View File

@@ -22,19 +22,17 @@ SW = None
def do_print_crash_reports():
print('Printing available crash reports...')
if is_macos:
time.sleep(60)
for cdir in (os.path.expanduser('~/Library/Logs/DiagnosticReports'), '/Library/Logs/DiagnosticReports', '/cores'):
if not os.path.exists(cdir):
continue
print(cdir)
found = False
for f in glob.glob(os.path.join(cdir, 'kitty_*')):
found = True
print(os.path.basename())
with open(f) as src:
print(src.read())
if not found:
print('\n'.join(os.listdir(cdir)))
end_time = time.monotonic() + 90
while time.monotonic() < end_time:
time.sleep(1)
items = glob.glob(os.path.join(os.path.expanduser('~/Library/Logs/DiagnosticReports'), 'kitty-*.ips'))
if items:
break
if items:
time.sleep(1)
print(os.path.basename(items[0]))
with open(items[0]) as src:
print(src.read())
else:
run('sh -c "echo bt | coredumpctl debug"')
print(flush=True)