-
-
Notifications
You must be signed in to change notification settings - Fork 707
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Crash on multiple monitors wake up #1019
Comments
Could be a duplicate of #970 |
@baloo can you try reproducing this with waybar compiled with address sanitizer ( I'm guessing that the monitor refptr is gone by the moment we started constructing the bar instance. Something like flaky DP connection or |
I dont use kanshi, I only use a static output configuration in my sway config. |
If you are already redirecting sway output to a log file, waybar logs should be included there. |
Got it to work handled by systemd user daemon. This way it's integrated with journalctl etc ... I get an immediate crash:
It starts okay with Now it's started, I'll update here should I get it to crash again. |
Got it to crash this morning:
But I dont have any coredump anymore. Looks like asan prevents it. This is waybar from master (commit 71f9ed3). |
Thanks, that's just about what I expected to see. Lines 126 to 129 in 71f9ed3
I already have some unfinished changes to the output code so I'll just add a fix for this before publishing pull-request. |
So diff --git a/src/client.cpp b/src/client.cpp
index 0ad4e6b..9983bb5 100644
--- a/src/client.cpp
+++ b/src/client.cpp
@@ -124,7 +124,6 @@ void waybar::Client::handleOutputDone(void *data, struct zxdg_output_v1 * /*xdg_
auto configs = client->getOutputConfigs(output);
if (!configs.empty()) {
- wl_display_roundtrip(client->wl_display);
for (const auto &config : configs) {
client->bars.emplace_back(std::make_unique<Bar>(&output, config));
} Correct? |
Nope:
|
Ooh. Now I'm genuinely confused. There's a code in the beginning of You can get a core file with asan using
|
disas:
```
(gdb) info line *0x4a1c34
No line number information available for address 0x4a1c34 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2628>
(gdb) disassemble 0x4a1c34
Dump of assembler code for function _ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1:
0x00000000004a11f0 <+0>: push %rbp
0x00000000004a11f1 <+1>: mov %rsp,%rbp
0x00000000004a11f4 <+4>: push %r15
0x00000000004a11f6 <+6>: push %r14
0x00000000004a11f8 <+8>: lea -0x330(%rbp),%rax
0x00000000004a11ff <+15>: push %r13
0x00000000004a1201 <+17>: push %r12
0x00000000004a1203 <+19>: mov %rdi,%r12
0x00000000004a1206 <+22>: push %rbx
0x00000000004a1207 <+23>: sub $0x378,%rsp
0x00000000004a120e <+30>: mov %rax,-0x370(%rbp)
0x00000000004a1215 <+37>: mov %rax,-0x380(%rbp)
0x00000000004a121c <+44>: mov 0x211d75(%rip),%rax # 0x6b2f98
0x00000000004a1223 <+51>: mov (%rax),%esi
0x00000000004a1225 <+53>: test %esi,%esi
0x00000000004a1227 <+55>: jne 0x4a1c45 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2645>
0x00000000004a122d <+61>: mov -0x370(%rbp),%r13
0x00000000004a1234 <+68>: lea 0x1be25d(%rip),%rax # 0x65f498
0x00000000004a123b <+75>: mov %r13,%r15
0x00000000004a123e <+78>: mov %rax,0x8(%r13)
0x00000000004a1242 <+82>: lea -0x59(%rip),%rax # 0x4a11f0 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1>
0x00000000004a1249 <+89>: lea 0x300(%r13),%rbx
0x00000000004a1250 <+96>: shr $0x3,%r15
0x00000000004a1254 <+100>: movq $0x41b58ab3,0x0(%r13)
0x00000000004a125c <+108>: mov %rax,0x10(%r13)
0x00000000004a1260 <+112>: movl $0xf1f1f1f1,0x7fff8000(%r15)
0x00000000004a126b <+123>: movl $0xf2f2f200,0x7fff8004(%r15)
0x00000000004a1276 <+134>: movl $0xf2f2f200,0x7fff8008(%r15)
0x00000000004a1281 <+145>: movl $0xf2f2f200,0x7fff800c(%r15)
0x00000000004a128c <+156>: movl $0xf2f2f200,0x7fff8010(%r15)
0x00000000004a1297 <+167>: movl $0xf2f2f200,0x7fff8014(%r15)
0x00000000004a12a2 <+178>: movl $0xf2f2f200,0x7fff8018(%r15)
0x00000000004a12ad <+189>: movl $0xf2f2f200,0x7fff801c(%r15)
0x00000000004a12b8 <+200>: movl $0xf2f2f200,0x7fff8020(%r15)
0x00000000004a12c3 <+211>: movl $0xf2f2f200,0x7fff8024(%r15)
0x00000000004a12ce <+222>: movl $0xf2f2f200,0x7fff8028(%r15)
0x00000000004a12d9 <+233>: movl $0xf2f2f200,0x7fff802c(%r15)
0x00000000004a12e4 <+244>: movl $0xf2f2f200,0x7fff8030(%r15)
0x00000000004a12ef <+255>: movl $0xf2f2f200,0x7fff8034(%r15)
0x00000000004a12fa <+266>: movl $0xf2f2f200,0x7fff8038(%r15)
0x00000000004a1305 <+277>: movl $0xf2f20000,0x7fff803c(%r15)
0x00000000004a1310 <+288>: movl $0xf2f20000,0x7fff8040(%r15)
0x00000000004a131b <+299>: movl $0xf2000000,0x7fff8044(%r15)
0x00000000004a1326 <+310>: movl $0xf2f2f2f2,0x7fff8048(%r15)
0x00000000004a1331 <+321>: movl $0xf2000000,0x7fff804c(%r15)
0x00000000004a133c <+332>: movl $0xf2f2f2f2,0x7fff8050(%r15)
0x00000000004a1347 <+343>: movl $0xf3000000,0x7fff8054(%r15)
0x00000000004a1352 <+354>: movl $0xf3f3f3f3,0x7fff8058(%r15)
0x00000000004a135d <+365>: mov %fs:0x28,%rax
0x00000000004a1366 <+374>: mov %rax,-0x38(%rbp)
0x00000000004a136a <+378>: xor %eax,%eax
0x00000000004a136c <+380>: call 0x4a0a20 <_ZN6waybar6Client4instEv>
0x00000000004a1371 <+385>: mov %r12,%rsi
0x00000000004a1374 <+388>: mov %rax,%r14
0x00000000004a1377 <+391>: lea 0x220(%r13),%rax
0x00000000004a137e <+398>: mov %r14,%rdi
0x00000000004a1381 <+401>: mov %rax,-0x358(%rbp)
0x00000000004a1388 <+408>: call 0x49b550 <_ZN6waybar6Client9getOutputEPv>
0x00000000004a138d <+413>: lea 0x28(%rax),%rsi
0x00000000004a1391 <+417>: mov %rax,-0x340(%rbp)
0x00000000004a1398 <+424>: add $0x8,%rax
0x00000000004a139c <+428>: mov %rax,-0x348(%rbp)
0x00000000004a13a3 <+435>: lea -0xe0(%rbx),%rax
0x00000000004a13aa <+442>: mov %rsi,-0x338(%rbp)
0x00000000004a13b1 <+449>: mov %rax,-0x358(%rbp)
0x00000000004a13b8 <+456>: call 0x419c90 <_ZN6spdlog18default_logger_rawEv@plt>
0x00000000004a13bd <+461>: lea -0x100(%rbx),%r13
0x00000000004a13c4 <+468>: mov %rax,%rdi
0x00000000004a13c7 <+471>: mov %r13,%rax
0x00000000004a13ca <+474>: shr $0x3,%rax
0x00000000004a13ce <+478>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a13d5 <+485>: jne 0x4a1c3d <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2637>
0x00000000004a13db <+491>: lea 0x1bc7fe(%rip),%rax # 0x65dbe0
0x00000000004a13e2 <+498>: lea -0xf8(%rbx),%r8
0x00000000004a13e9 <+505>: mov %rax,-0x100(%rbx)
0x00000000004a13f0 <+512>: mov %r8,%rax
0x00000000004a13f3 <+515>: shr $0x3,%rax
0x00000000004a13f7 <+519>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a13fe <+526>: jne 0x4a1c35 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2629>
0x00000000004a1404 <+532>: movq $0x1e,-0xf8(%rbx)
0x00000000004a140f <+543>: lea -0x60(%rbx),%r12
0x00000000004a1413 <+547>: mov %r12,%rax
0x00000000004a1416 <+550>: shr $0x3,%rax
0x00000000004a141a <+554>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1421 <+561>: jne 0x4a1c10 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2592>
0x00000000004a1427 <+567>: lea -0x58(%rbx),%r8
0x00000000004a142b <+571>: movq $0x0,-0x60(%rbx)
0x00000000004a1433 <+579>: mov %r8,%rax
0x00000000004a1436 <+582>: shr $0x3,%rax
0x00000000004a143a <+586>: movzbl 0x7fff8000(%rax),%eax
0x00000000004a1441 <+593>: test %al,%al
0x00000000004a1443 <+595>: je 0x4a144d <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+605>
0x00000000004a1445 <+597>: cmp $0x3,%al
0x00000000004a1447 <+599>: jle 0x4a1bae <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2494>
0x00000000004a144d <+605>: lea -0x50(%rbx),%r8
0x00000000004a1451 <+609>: movl $0x0,-0x58(%rbx)
0x00000000004a1458 <+616>: mov %r8,%rax
0x00000000004a145b <+619>: shr $0x3,%rax
0x00000000004a145f <+623>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1466 <+630>: jne 0x4a1d22 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2866>
0x00000000004a146c <+636>: mov %r12,%rax
0x00000000004a146f <+639>: movq $0x0,-0x50(%rbx)
0x00000000004a1477 <+647>: shr $0x3,%rax
0x00000000004a147b <+651>: movzbl 0x7fff8000(%rax),%edx
0x00000000004a1482 <+658>: lea -0x49(%rbx),%rax
0x00000000004a1486 <+662>: mov %rax,%rcx
0x00000000004a1489 <+665>: and $0x7,%eax
0x00000000004a148c <+668>: shr $0x3,%rcx
0x00000000004a1490 <+672>: movzbl 0x7fff8000(%rcx),%ecx
0x00000000004a1497 <+679>: cmp %al,%cl
0x00000000004a1499 <+681>: setle %sil
0x00000000004a149d <+685>: test %cl,%cl
0x00000000004a149f <+687>: setne %al
0x00000000004a14a2 <+690>: test %al,%sil
0x00000000004a14a5 <+693>: jne 0x4a1d15 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2853>
0x00000000004a14ab <+699>: test %dl,%dl
0x00000000004a14ad <+701>: setne %cl
0x00000000004a14b0 <+704>: setle %al
0x00000000004a14b3 <+707>: test %al,%cl
0x00000000004a14b5 <+709>: jne 0x4a1d15 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2853>
0x00000000004a14bb <+715>: lea -0x120(%rbx),%rdx
0x00000000004a14c2 <+722>: movdqu -0x60(%rbx),%xmm1
0x00000000004a14c7 <+727>: movq $0x0,-0x90(%rbx)
0x00000000004a14d2 <+738>: mov %rdx,%rax
0x00000000004a14d5 <+741>: shr $0x3,%rax
0x00000000004a14d9 <+745>: movups %xmm1,-0xa0(%rbx)
0x00000000004a14e0 <+752>: cmpw $0x0,0x7fff8000(%rax)
0x00000000004a14e8 <+760>: jne 0x4a1d0d <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2845>
0x00000000004a14ee <+766>: mov %r13,%rax
0x00000000004a14f1 <+769>: shr $0x3,%rax
0x00000000004a14f5 <+773>: cmpw $0x0,0x7fff8000(%rax)
0x00000000004a14fd <+781>: jne 0x4a1d05 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2837>
0x00000000004a1503 <+787>: sub $0x8,%rsp
0x00000000004a1507 <+791>: movdqu -0x100(%rbx),%xmm2
0x00000000004a150f <+799>: mov -0x338(%rbp),%r8
0x00000000004a1516 <+806>: mov $0x1,%esi
0x00000000004a151b <+811>: mov -0x348(%rbp),%rcx
0x00000000004a1522 <+818>: movups %xmm2,-0x120(%rbx)
0x00000000004a1529 <+825>: push -0x90(%rbx)
0x00000000004a152f <+831>: push -0x98(%rbx)
0x00000000004a1535 <+837>: push -0xa0(%rbx)
0x00000000004a153b <+843>: call 0x4cf100 <_ZN6spdlog6logger4log_IN3fmt2v717basic_string_viewIcEEJNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESB_EEEvNS_10source_locENS_5level10level_enumERKT_DpRKT0_>
0x00000000004a1540 <+848>: shr $0x3,%r12
0x00000000004a1544 <+852>: mov $0xfffff8f8,%eax
0x00000000004a1549 <+857>: xor %ecx,%ecx
0x00000000004a154b <+859>: shr $0x3,%r13
0x00000000004a154f <+863>: mov %ax,0x7fff8000(%r12)
0x00000000004a1558 <+872>: lea -0xe0(%rbx),%rax
0x00000000004a155f <+879>: mov $0xfffff8f8,%edx
0x00000000004a1564 <+884>: add $0x20,%rsp
0x00000000004a1568 <+888>: mov %rax,-0x358(%rbp)
0x00000000004a156f <+895>: shr $0x3,%rax
0x00000000004a1573 <+899>: movb $0xf8,0x7fff8002(%r12)
0x00000000004a157c <+908>: mov %dx,0x7fff8000(%r13)
0x00000000004a1584 <+916>: mov %cx,0x7fff8000(%rax)
0x00000000004a158b <+923>: movb $0x0,0x7fff8002(%rax)
0x00000000004a1592 <+930>: lea -0xc9(%rbx),%rax
0x00000000004a1599 <+937>: mov %rax,%rdx
0x00000000004a159c <+940>: and $0x7,%eax
0x00000000004a159f <+943>: shr $0x3,%rdx
0x00000000004a15a3 <+947>: movzbl 0x7fff8000(%rdx),%edx
0x00000000004a15aa <+954>: cmp %al,%dl
0x00000000004a15ac <+956>: setle %cl
0x00000000004a15af <+959>: test %dl,%dl
0x00000000004a15b1 <+961>: setne %al
0x00000000004a15b4 <+964>: test %al,%cl
0x00000000004a15b6 <+966>: jne 0x4a1cf4 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2820>
0x00000000004a15bc <+972>: xor %eax,%eax
0x00000000004a15be <+974>: test %al,%al
0x00000000004a15c0 <+976>: jne 0x4a1cf4 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2820>
0x00000000004a15c6 <+982>: mov -0x340(%rbp),%rdx
0x00000000004a15cd <+989>: mov -0x358(%rbp),%rdi
0x00000000004a15d4 <+996>: mov %r14,%rsi
0x00000000004a15d7 <+999>: call 0x49ce40 <_ZN6waybar6Client16getOutputConfigsERNS_13waybar_outputE>
0x00000000004a15dc <+1004>: lea -0xd8(%rbx),%rsi
0x00000000004a15e3 <+1011>: lea -0x220(%rbx),%r8
0x00000000004a15ea <+1018>: mov %r8,%rax
0x00000000004a15ed <+1021>: lea -0x280(%rbx),%rdx
0x00000000004a15f4 <+1028>: mov %rsi,%rdi
0x00000000004a15f7 <+1031>: mov %rsi,-0x378(%rbp)
0x00000000004a15fe <+1038>: shr $0x3,%rax
0x00000000004a1602 <+1042>: shr $0x3,%rdx
0x00000000004a1606 <+1046>: shr $0x3,%rdi
0x00000000004a160a <+1050>: movb $0x0,0x7fff8000(%rax)
0x00000000004a1611 <+1057>: movb $0x0,0x7fff8000(%rdx)
0x00000000004a1618 <+1064>: cmpb $0x0,0x7fff8000(%rdi)
0x00000000004a161f <+1071>: jne 0x4a1cec <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2812>
0x00000000004a1625 <+1077>: mov -0xd8(%rbx),%rcx
0x00000000004a162c <+1084>: mov %rcx,-0x280(%rbx)
0x00000000004a1633 <+1091>: movb $0xf8,0x7fff8000(%rdx)
0x00000000004a163a <+1098>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1641 <+1105>: jne 0x4a1ce4 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2804>
0x00000000004a1647 <+1111>: mov -0x358(%rbp),%r9
0x00000000004a164e <+1118>: lea -0x240(%rbx),%r10
0x00000000004a1655 <+1125>: lea -0x260(%rbx),%rdx
0x00000000004a165c <+1132>: mov %rcx,-0x220(%rbx)
0x00000000004a1663 <+1139>: mov %r10,%rsi
0x00000000004a1666 <+1142>: shr $0x3,%rdx
0x00000000004a166a <+1146>: shr $0x3,%rsi
0x00000000004a166e <+1150>: shr $0x3,%r9
0x00000000004a1672 <+1154>: movb $0x0,0x7fff8000(%rsi)
0x00000000004a1679 <+1161>: movb $0x0,0x7fff8000(%rdx)
0x00000000004a1680 <+1168>: cmpb $0x0,0x7fff8000(%r9)
0x00000000004a1688 <+1176>: jne 0x4a1cd8 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2792>
0x00000000004a168e <+1182>: mov -0xe0(%rbx),%rcx
0x00000000004a1695 <+1189>: mov %rcx,-0x260(%rbx)
0x00000000004a169c <+1196>: movb $0xf8,0x7fff8000(%rdx)
0x00000000004a16a3 <+1203>: cmpb $0x0,0x7fff8000(%rsi)
0x00000000004a16aa <+1210>: jne 0x4a1cd0 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2784>
0x00000000004a16b0 <+1216>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a16b7 <+1223>: mov %rcx,-0x240(%rbx)
0x00000000004a16be <+1230>: jne 0x4a1cc8 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2776>
0x00000000004a16c4 <+1236>: mov -0x220(%rbx),%rdx
0x00000000004a16cb <+1243>: movb $0xf8,0x7fff8000(%rsi)
0x00000000004a16d2 <+1250>: movb $0xf8,0x7fff8000(%rax)
0x00000000004a16d9 <+1257>: cmp %rdx,%rcx
0x00000000004a16dc <+1260>: je 0x4a1a44 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2132>
0x00000000004a16e2 <+1266>: lea -0x2e0(%rbx),%rax
0x00000000004a16e9 <+1273>: mov %rax,%rcx
0x00000000004a16ec <+1276>: mov %rax,-0x348(%rbp)
0x00000000004a16f3 <+1283>: lea -0x1e0(%rbx),%rax
0x00000000004a16fa <+1290>: shr $0x3,%rcx
0x00000000004a16fe <+1294>: shr $0x3,%rax
0x00000000004a1702 <+1298>: movb $0x0,0x7fff8000(%rcx)
0x00000000004a1709 <+1305>: movb $0x0,0x7fff8000(%rax)
0x00000000004a1710 <+1312>: cmpb $0x0,0x7fff8000(%r9)
0x00000000004a1718 <+1320>: jne 0x4a1d2a <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2874>
0x00000000004a171e <+1326>: mov -0xe0(%rbx),%rdx
0x00000000004a1725 <+1333>: mov %rdx,-0x1e0(%rbx)
0x00000000004a172c <+1340>: movb $0xf8,0x7fff8000(%rax)
0x00000000004a1733 <+1347>: cmpb $0x0,0x7fff8000(%rcx)
0x00000000004a173a <+1354>: jne 0x4a1d5a <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2922>
0x00000000004a1740 <+1360>: lea -0x2c0(%rbx),%rax
0x00000000004a1747 <+1367>: mov %rdx,-0x2e0(%rbx)
0x00000000004a174e <+1374>: mov %rax,%rsi
0x00000000004a1751 <+1377>: mov %rax,-0x350(%rbp)
0x00000000004a1758 <+1384>: lea -0x200(%rbx),%rax
0x00000000004a175f <+1391>: shr $0x3,%rsi
0x00000000004a1763 <+1395>: shr $0x3,%rax
0x00000000004a1767 <+1399>: movb $0x0,0x7fff8000(%rsi)
0x00000000004a176e <+1406>: movb $0x0,0x7fff8000(%rax)
0x00000000004a1775 <+1413>: cmpb $0x0,0x7fff8000(%rdi)
0x00000000004a177c <+1420>: jne 0x4a1d4e <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2910>
0x00000000004a1782 <+1426>: mov -0xd8(%rbx),%rdx
0x00000000004a1789 <+1433>: mov %rdx,-0x200(%rbx)
0x00000000004a1790 <+1440>: movb $0xf8,0x7fff8000(%rax)
0x00000000004a1797 <+1447>: cmpb $0x0,0x7fff8000(%rsi)
0x00000000004a179e <+1454>: jne 0x4a1d42 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2898>
0x00000000004a17a4 <+1460>: cmpb $0x0,0x7fff8000(%rcx)
0x00000000004a17ab <+1467>: mov %rdx,-0x2c0(%rbx)
0x00000000004a17b2 <+1474>: jne 0x4a1d36 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2886>
0x00000000004a17b8 <+1480>: lea 0x38(%r14),%rax
0x00000000004a17bc <+1484>: mov -0x2e0(%rbx),%r12
0x00000000004a17c3 <+1491>: mov %rax,-0x390(%rbp)
0x00000000004a17ca <+1498>: lea -0x2a0(%rbx),%rax
0x00000000004a17d1 <+1505>: mov %rax,-0x388(%rbp)
0x00000000004a17d8 <+1512>: cmp %r12,%rdx
0x00000000004a17db <+1515>: je 0x4a1a20 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2096>
0x00000000004a17e1 <+1521>: shr $0x3,%rax
0x00000000004a17e5 <+1525>: mov %rax,-0x338(%rbp)
0x00000000004a17ec <+1532>: lea 0x40(%r14),%rax
0x00000000004a17f0 <+1536>: mov %rax,-0x398(%rbp)
0x00000000004a17f7 <+1543>: shr $0x3,%rax
0x00000000004a17fb <+1547>: mov %rax,-0x368(%rbp)
0x00000000004a1802 <+1554>: lea 0x48(%r14),%rax
0x00000000004a1806 <+1558>: mov %rax,-0x360(%rbp)
0x00000000004a180d <+1565>: jmp 0x4a1965 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+1909>
0x00000000004a1812 <+1570>: nopw 0x0(%rax,%rax,1)
0x00000000004a1818 <+1576>: mov %rdi,%rax
0x00000000004a181b <+1579>: shr $0x3,%rax
0x00000000004a181f <+1583>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1826 <+1590>: jne 0x4a1be7 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2551>
0x00000000004a182c <+1596>: mov %r13,(%rdi)
0x00000000004a182f <+1599>: add $0x8,%rdi
0x00000000004a1833 <+1603>: movq $0x0,-0x2a0(%rbx)
0x00000000004a183e <+1614>: mov %rdi,0x40(%r14)
0x00000000004a1842 <+1618>: lea -0x140(%rbx),%rdi
0x00000000004a1849 <+1625>: lea -0x160(%rbx),%r8
0x00000000004a1850 <+1632>: mov 0x40(%r14),%rsi
0x00000000004a1854 <+1636>: mov %rdi,%rcx
0x00000000004a1857 <+1639>: mov %r8,%rdx
0x00000000004a185a <+1642>: lea -0x1a0(%rbx),%rax
0x00000000004a1861 <+1649>: shr $0x3,%rcx
0x00000000004a1865 <+1653>: shr $0x3,%rdx
0x00000000004a1869 <+1657>: shr $0x3,%rax
0x00000000004a186d <+1661>: movb $0x0,0x7fff8000(%rcx)
0x00000000004a1874 <+1668>: movb $0x0,0x7fff8000(%rdx)
0x00000000004a187b <+1675>: mov %rsi,-0x1a0(%rbx)
0x00000000004a1882 <+1682>: movb $0xf8,0x7fff8000(%rax)
0x00000000004a1889 <+1689>: cmpb $0x0,0x7fff8000(%rdx)
0x00000000004a1890 <+1696>: jne 0x4a1bdf <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2543>
0x00000000004a1896 <+1702>: mov %rsi,-0x160(%rbx)
0x00000000004a189d <+1709>: mov -0x160(%rbx),%rax
0x00000000004a18a4 <+1716>: lea -0x180(%rbx),%rsi
0x00000000004a18ab <+1723>: shr $0x3,%rsi
0x00000000004a18af <+1727>: sub $0x8,%rax
0x00000000004a18b3 <+1731>: mov %rax,-0x180(%rbx)
0x00000000004a18ba <+1738>: movb $0xf8,0x7fff8000(%rsi)
0x00000000004a18c1 <+1745>: cmpb $0x0,0x7fff8000(%rcx)
0x00000000004a18c8 <+1752>: jne 0x4a1bda <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2538>
0x00000000004a18ce <+1758>: mov %rax,-0x140(%rbx)
0x00000000004a18d5 <+1765>: mov -0x338(%rbp),%rax
0x00000000004a18dc <+1772>: movb $0xf8,0x7fff8000(%rcx)
0x00000000004a18e3 <+1779>: movb $0xf8,0x7fff8000(%rdx)
0x00000000004a18ea <+1786>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a18f1 <+1793>: jne 0x4a1bce <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2526>
0x00000000004a18f7 <+1799>: mov -0x2a0(%rbx),%rdi
0x00000000004a18fe <+1806>: test %rdi,%rdi
0x00000000004a1901 <+1809>: je 0x4a1908 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+1816>
0x00000000004a1903 <+1811>: call 0x49eed0 <_ZNKSt14default_deleteIN6waybar3BarEEclEPS1_.part.0>
0x00000000004a1908 <+1816>: mov -0x338(%rbp),%rax
0x00000000004a190f <+1823>: movb $0xf8,0x7fff8000(%rax)
0x00000000004a1916 <+1830>: mov -0x348(%rbp),%rax
0x00000000004a191d <+1837>: shr $0x3,%rax
0x00000000004a1921 <+1841>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1928 <+1848>: jne 0x4a1bc2 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2514>
0x00000000004a192e <+1854>: mov -0x2e0(%rbx),%rax
0x00000000004a1935 <+1861>: lea 0x28(%rax),%r12
0x00000000004a1939 <+1865>: mov -0x350(%rbp),%rax
0x00000000004a1940 <+1872>: mov %r12,-0x2e0(%rbx)
0x00000000004a1947 <+1879>: shr $0x3,%rax
0x00000000004a194b <+1883>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1952 <+1890>: jne 0x4a1bb6 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2502>
0x00000000004a1958 <+1896>: cmp %r12,-0x2c0(%rbx)
0x00000000004a195f <+1903>: je 0x4a1a20 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2096>
0x00000000004a1965 <+1909>: mov -0x338(%rbp),%rax
0x00000000004a196c <+1916>: mov $0x228,%edi
0x00000000004a1971 <+1921>: movb $0x0,0x7fff8000(%rax)
0x00000000004a1978 <+1928>: call 0x419ae0 <_Znwm@plt>
0x00000000004a197d <+1933>: mov -0x340(%rbp),%rsi
0x00000000004a1984 <+1940>: mov %r12,%rdx
0x00000000004a1987 <+1943>: mov %rax,%rdi
0x00000000004a198a <+1946>: mov %rax,%r13
0x00000000004a198d <+1949>: call 0x481b40 <_ZN6waybar3BarC2EPNS_13waybar_outputERKN4Json5ValueE>
0x00000000004a1992 <+1954>: mov -0x338(%rbp),%rax
0x00000000004a1999 <+1961>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a19a0 <+1968>: jne 0x4a1c04 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2580>
0x00000000004a19a6 <+1974>: mov -0x368(%rbp),%rax
0x00000000004a19ad <+1981>: mov %r13,-0x2a0(%rbx)
0x00000000004a19b4 <+1988>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a19bb <+1995>: jne 0x4a1bf8 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2568>
0x00000000004a19c1 <+2001>: mov -0x360(%rbp),%rax
0x00000000004a19c8 <+2008>: mov 0x40(%r14),%rdi
0x00000000004a19cc <+2012>: shr $0x3,%rax
0x00000000004a19d0 <+2016>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a19d7 <+2023>: jne 0x4a1bec <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2556>
0x00000000004a19dd <+2029>: cmp 0x48(%r14),%rdi
0x00000000004a19e1 <+2033>: jne 0x4a1818 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+1576>
0x00000000004a19e7 <+2039>: mov 0x40(%r14),%rsi
0x00000000004a19eb <+2043>: lea -0x1c0(%rbx),%rax
0x00000000004a19f2 <+2050>: mov -0x388(%rbp),%rdx
0x00000000004a19f9 <+2057>: shr $0x3,%rax
0x00000000004a19fd <+2061>: mov -0x390(%rbp),%rdi
0x00000000004a1a04 <+2068>: mov %rsi,-0x1c0(%rbx)
0x00000000004a1a0b <+2075>: movb $0xf8,0x7fff8000(%rax)
0x00000000004a1a12 <+2082>: call 0x4b6c10 <_ZNSt6vectorISt10unique_ptrIN6waybar3BarESt14default_deleteIS2_EESaIS5_EE17_M_realloc_insertIJS5_EEEvN9__gnu_cxx17__normal_iteratorIPS5_S7_EEDpOT_>
0x00000000004a1a17 <+2087>: jmp 0x4a1842 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+1618>
0x00000000004a1a1c <+2092>: nopl 0x0(%rax)
0x00000000004a1a20 <+2096>: mov -0x348(%rbp),%rax
0x00000000004a1a27 <+2103>: shr $0x3,%rax
0x00000000004a1a2b <+2107>: movb $0xf8,0x7fff8000(%rax)
0x00000000004a1a32 <+2114>: mov -0x350(%rbp),%rax
0x00000000004a1a39 <+2121>: shr $0x3,%rax
0x00000000004a1a3d <+2125>: movb $0xf8,0x7fff8000(%rax)
0x00000000004a1a44 <+2132>: mov -0x340(%rbp),%rax
0x00000000004a1a4b <+2139>: lea 0x50(%rax),%rdi
0x00000000004a1a4f <+2143>: mov %rdi,%rax
0x00000000004a1a52 <+2146>: shr $0x3,%rax
0x00000000004a1a56 <+2150>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1a5d <+2157>: jne 0x4a1c30 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2624>
0x00000000004a1a63 <+2163>: mov -0x340(%rbp),%rax
0x00000000004a1a6a <+2170>: mov 0x50(%rax),%rdi
0x00000000004a1a6e <+2174>: movq $0x0,0x50(%rax)
0x00000000004a1a76 <+2182>: test %rdi,%rdi
0x00000000004a1a79 <+2185>: je 0x4a1a9d <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2221>
0x00000000004a1a7b <+2187>: lea 0x48(%rax),%r8
0x00000000004a1a7f <+2191>: mov %r8,%rax
0x00000000004a1a82 <+2194>: shr $0x3,%rax
0x00000000004a1a86 <+2198>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1a8d <+2205>: jne 0x4a1d7c <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2956>
0x00000000004a1a93 <+2211>: mov -0x340(%rbp),%rax
0x00000000004a1a9a <+2218>: call *0x48(%rax)
0x00000000004a1a9d <+2221>: mov -0x378(%rbp),%rax
0x00000000004a1aa4 <+2228>: shr $0x3,%rax
0x00000000004a1aa8 <+2232>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1aaf <+2239>: jne 0x4a1c24 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2612>
0x00000000004a1ab5 <+2245>: mov -0x358(%rbp),%rax
0x00000000004a1abc <+2252>: mov -0xd8(%rbx),%r12
0x00000000004a1ac3 <+2259>: shr $0x3,%rax
0x00000000004a1ac7 <+2263>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1ace <+2270>: jne 0x4a1c18 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2600>
0x00000000004a1ad4 <+2276>: mov -0xe0(%rbx),%r13
0x00000000004a1adb <+2283>: cmp %r13,%r12
0x00000000004a1ade <+2286>: je 0x4a1b10 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2336>
0x00000000004a1ae0 <+2288>: mov %r13,%rdi
0x00000000004a1ae3 <+2291>: add $0x28,%r13
0x00000000004a1ae7 <+2295>: call 0x418830 <_ZN4Json5ValueD1Ev@plt>
0x00000000004a1aec <+2300>: cmp %r13,%r12
0x00000000004a1aef <+2303>: jne 0x4a1ae0 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2288>
0x00000000004a1af1 <+2305>: mov -0x358(%rbp),%rax
0x00000000004a1af8 <+2312>: shr $0x3,%rax
0x00000000004a1afc <+2316>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1b03 <+2323>: jne 0x4a1d70 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2944>
0x00000000004a1b09 <+2329>: mov -0xe0(%rbx),%r13
0x00000000004a1b10 <+2336>: test %r13,%r13
0x00000000004a1b13 <+2339>: je 0x4a1b42 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2386>
0x00000000004a1b15 <+2341>: lea -0xd0(%rbx),%rdi
0x00000000004a1b1c <+2348>: mov %rdi,%rax
0x00000000004a1b1f <+2351>: shr $0x3,%rax
0x00000000004a1b23 <+2355>: cmpb $0x0,0x7fff8000(%rax)
0x00000000004a1b2a <+2362>: jne 0x4a1d6b <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2939>
0x00000000004a1b30 <+2368>: mov -0xd0(%rbx),%rsi
0x00000000004a1b37 <+2375>: mov %r13,%rdi
0x00000000004a1b3a <+2378>: sub %r13,%rsi
0x00000000004a1b3d <+2381>: call 0x419390 <_ZdlPvm@plt>
0x00000000004a1b42 <+2386>: mov -0x370(%rbp),%rcx
0x00000000004a1b49 <+2393>: cmp %rcx,-0x380(%rbp)
0x00000000004a1b50 <+2400>: jne 0x4a1c66 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2678>
0x00000000004a1b56 <+2406>: lea 0x7fff8008(%r15),%rdi
0x00000000004a1b5d <+2413>: xor %eax,%eax
0x00000000004a1b5f <+2415>: lea 0x7fff8000(%r15),%rcx
0x00000000004a1b66 <+2422>: movq $0x0,0x7fff8000(%r15)
0x00000000004a1b71 <+2433>: movq $0x0,0x7fff8054(%r15)
0x00000000004a1b7c <+2444>: and $0xfffffffffffffff8,%rdi
0x00000000004a1b80 <+2448>: sub %rdi,%rcx
0x00000000004a1b83 <+2451>: add $0x5c,%ecx
0x00000000004a1b86 <+2454>: shr $0x3,%ecx
0x00000000004a1b89 <+2457>: rep stos %rax,%es:(%rdi)
0x00000000004a1b8c <+2460>: mov -0x38(%rbp),%rax
0x00000000004a1b90 <+2464>: sub %fs:0x28,%rax
0x00000000004a1b99 <+2473>: jne 0x4a1d66 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2934>
0x00000000004a1b9f <+2479>: lea -0x28(%rbp),%rsp
0x00000000004a1ba3 <+2483>: pop %rbx
0x00000000004a1ba4 <+2484>: pop %r12
0x00000000004a1ba6 <+2486>: pop %r13
0x00000000004a1ba8 <+2488>: pop %r14
0x00000000004a1baa <+2490>: pop %r15
0x00000000004a1bac <+2492>: pop %rbp
0x00000000004a1bad <+2493>: ret
0x00000000004a1bae <+2494>: mov %r8,%rdi
0x00000000004a1bb1 <+2497>: call 0x418510 <__asan_report_store4@plt>
0x00000000004a1bb6 <+2502>: mov -0x350(%rbp),%rdi
0x00000000004a1bbd <+2509>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1bc2 <+2514>: mov -0x348(%rbp),%rdi
0x00000000004a1bc9 <+2521>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1bce <+2526>: mov -0x388(%rbp),%rdi
0x00000000004a1bd5 <+2533>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1bda <+2538>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1bdf <+2543>: mov %r8,%rdi
0x00000000004a1be2 <+2546>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1be7 <+2551>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1bec <+2556>: mov -0x360(%rbp),%rdi
0x00000000004a1bf3 <+2563>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1bf8 <+2568>: mov -0x398(%rbp),%rdi
0x00000000004a1bff <+2575>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1c04 <+2580>: mov -0x388(%rbp),%rdi
0x00000000004a1c0b <+2587>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1c10 <+2592>: mov %r12,%rdi
0x00000000004a1c13 <+2595>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1c18 <+2600>: mov -0x358(%rbp),%rdi
0x00000000004a1c1f <+2607>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1c24 <+2612>: mov -0x378(%rbp),%rdi
0x00000000004a1c2b <+2619>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1c30 <+2624>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1c35 <+2629>: mov %r8,%rdi
0x00000000004a1c38 <+2632>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1c3d <+2637>: mov %r13,%rdi
0x00000000004a1c40 <+2640>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1c45 <+2645>: mov $0x2e0,%edi
0x00000000004a1c4a <+2650>: call 0x4184a0 <__asan_stack_malloc_4@plt>
0x00000000004a1c4f <+2655>: test %rax,%rax
0x00000000004a1c52 <+2658>: cmove -0x370(%rbp),%rax
0x00000000004a1c5a <+2666>: mov %rax,-0x370(%rbp)
0x00000000004a1c61 <+2673>: jmp 0x4a122d <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+61>
0x00000000004a1c66 <+2678>: movdqa 0x1aff82(%rip),%xmm0 # 0x651bf0
0x00000000004a1c6e <+2686>: movq $0x45e0360e,(%rcx)
0x00000000004a1c75 <+2693>: movabs $0xf5f5f5f5f5f5f5f5,%rsi
0x00000000004a1c7f <+2703>: mov %rsi,0x7fff8050(%r15)
0x00000000004a1c86 <+2710>: movl $0xf5f5f5f5,0x7fff8058(%r15)
0x00000000004a1c91 <+2721>: movups %xmm0,0x7fff8000(%r15)
0x00000000004a1c99 <+2729>: movups %xmm0,0x7fff8010(%r15)
0x00000000004a1ca1 <+2737>: movups %xmm0,0x7fff8020(%r15)
0x00000000004a1ca9 <+2745>: movups %xmm0,0x7fff8030(%r15)
0x00000000004a1cb1 <+2753>: movups %xmm0,0x7fff8040(%r15)
0x00000000004a1cb9 <+2761>: mov 0x3f8(%rcx),%rax
0x00000000004a1cc0 <+2768>: movb $0x0,(%rax)
0x00000000004a1cc3 <+2771>: jmp 0x4a1b8c <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1+2460>
0x00000000004a1cc8 <+2776>: mov %r8,%rdi
0x00000000004a1ccb <+2779>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1cd0 <+2784>: mov %r10,%rdi
0x00000000004a1cd3 <+2787>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1cd8 <+2792>: mov -0x358(%rbp),%rdi
0x00000000004a1cdf <+2799>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1ce4 <+2804>: mov %r8,%rdi
0x00000000004a1ce7 <+2807>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1cec <+2812>: mov %rsi,%rdi
0x00000000004a1cef <+2815>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1cf4 <+2820>: mov -0x358(%rbp),%rdi
0x00000000004a1cfb <+2827>: mov $0x18,%esi
0x00000000004a1d00 <+2832>: call 0x418520 <__asan_report_store_n@plt>
0x00000000004a1d05 <+2837>: mov %r13,%rdi
0x00000000004a1d08 <+2840>: call 0x419050 <__asan_report_load16@plt>
0x00000000004a1d0d <+2845>: mov %rdx,%rdi
0x00000000004a1d10 <+2848>: call 0x418c10 <__asan_report_store16@plt>
0x00000000004a1d15 <+2853>: mov $0x18,%esi
0x00000000004a1d1a <+2858>: mov %r12,%rdi
0x00000000004a1d1d <+2861>: call 0x419e10 <__asan_report_load_n@plt>
0x00000000004a1d22 <+2866>: mov %r8,%rdi
0x00000000004a1d25 <+2869>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1d2a <+2874>: mov -0x358(%rbp),%rdi
0x00000000004a1d31 <+2881>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1d36 <+2886>: mov -0x348(%rbp),%rdi
0x00000000004a1d3d <+2893>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1d42 <+2898>: mov -0x350(%rbp),%rdi
0x00000000004a1d49 <+2905>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1d4e <+2910>: mov -0x378(%rbp),%rdi
0x00000000004a1d55 <+2917>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1d5a <+2922>: mov -0x348(%rbp),%rdi
0x00000000004a1d61 <+2929>: call 0x4190e0 <__asan_report_store8@plt>
0x00000000004a1d66 <+2934>: call 0x418b50 <__stack_chk_fail@plt>
0x00000000004a1d6b <+2939>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1d70 <+2944>: mov -0x358(%rbp),%rdi
0x00000000004a1d77 <+2951>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1d7c <+2956>: mov %r8,%rdi
0x00000000004a1d7f <+2959>: call 0x41a990 <__asan_report_load8@plt>
0x00000000004a1d84 <+2964>: mov %rax,%r12
0x00000000004a1d87 <+2967>: mov %rdx,%r13
0x00000000004a1d8a <+2970>: jmp 0x42151e <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1.cold>
0x00000000004a1d8f <+2975>: mov %rax,%r14
0x00000000004a1d92 <+2978>: jmp 0x421564 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1.cold+70>
0x00000000004a1d97 <+2983>: mov %rax,%rbx
0x00000000004a1d9a <+2986>: mov %rdx,%r12
0x00000000004a1d9d <+2989>: jmp 0x42161b <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1.cold+253>
0x00000000004a1da2 <+2994>: mov %rax,%r14
0x00000000004a1da5 <+2997>: mov %rdx,%r12
0x00000000004a1da8 <+3000>: jmp 0x42159b <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1.cold+125>
0x00000000004a1dad <+3005>: mov %rax,%rbx
0x00000000004a1db0 <+3008>: mov %rdx,%r12
0x00000000004a1db3 <+3011>: jmp 0x421628 <_ZN6waybar6Client16handleOutputDoneEPvP14zxdg_output_v1.cold+266>
End of assembler dump.
```
Got the new asan options in. Thank you! |
I'll try to compile with debug symbols as well, hopefully that would help |
New crash:
coredump bt:
waybar commit 71f9ed3 + patch:
|
At this point we're not awaiting any protocol events and flushing wayland queue makes little sense. As Alexays#1019 shows, it may be even harmful as an extra roundtrip could process wl_output disappearance and delete output object right from under our code.
Thanks a lot for collecting the data, it was very helpful! I reordered some code to make the crash less likely and have a few more changes in mind but that won't be a bulletproof solution. |
I dont believe there is anything wrong with my connections to be fair. I just have run 6 screens (2 in DP, 2 in MST behind the previous 2 and 2 in HDMI) and that makes race conditions more likely. I got a new crash with current master (c5f875d):
bt full:
|
Well, the situation with adding output HDMI-A-1, removing HDMI-A-1, adding HDMI-A-1, etc..., within a few milliseconds is not quite normal. That doesn't look like a simple race condition and DP daisy-chaining doesn't explain it as well. Something like alebastr@deferred-output-removal should fix the current problem and likely introduce another class of races which is why I'm hesitant to send this patch as is. Edit: |
@alebastr thanks! |
Yes, see updated gist contents. |
When waking up monitors from DPMS, waybar sometimes crash around this line:
Waybar/src/bar.cpp
Line 33 in f233d27
I only have a partial coredump:
I'll try to capture a better coredump
Waybar 0.9.5
I have multiple monitors and some are connected with MST (displayport daisychain) and they dont all come back at once.
The text was updated successfully, but these errors were encountered: