polybar/include/modules
Patrick Ziegler 444120e664
script: Fix concurrency issues (#2518)
Fixes #1978

* Move tail and non-tail handler to method

Defining them in the constructor is ugly.

* script: Iterate over defined actions instead of fixed list

* Separate running logic and lock m_output

* Include POLYBAR_FLAGS in linker flags

* Stop using m_prev in script_runner

* Join module threads in stop function

Joining in the destructor may lead to UB because the subclass is already
deconstructed but the threads may still require it to be around (e.g.
for calling any functions on the instance)

* Cleanup script module

* Update changelog

* Remove AfterReturn class

* Remove m_stopping from script module

* Fix polybar not reading the entire line from child process.

For every `readline` call we created a new fd_streambuf. This means once
`readline` returns, the streambuf is destructed and and pending data in
its temporary buffer discarded and we never actually read it.

* Remove unused includes
2021-10-03 01:27:11 +02:00
..
meta script: Fix concurrency issues (#2518) 2021-10-03 01:27:11 +02:00
alsa.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
backlight.hpp feat(backlight): add use-actual-brightness option (#2380) 2021-02-16 10:02:33 +01:00
battery.hpp Add compiler warning for missing override specifier (#2341) 2021-01-04 10:38:43 +01:00
bspwm.hpp feat(bspwm): Option to scroll through occupied desktops only (#2428) 2021-05-13 12:59:13 +02:00
counter.hpp refactor: Move module type string into modules 2020-11-26 20:53:53 +01:00
cpu.hpp feat: Warn state for cpu, memory, fs, battery modules (#2199) 2020-12-02 15:55:13 +01:00
date.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
fs.hpp Remove undefined behaviors and clean code (#1769) 2021-02-15 23:32:56 +01:00
github.hpp refactor: Move module type string into modules 2020-11-26 20:53:53 +01:00
i3.hpp feat(conf): Option to always show urgent workspaces in i3 (#2378) 2021-02-15 21:31:34 +01:00
ipc.hpp Stop ipc_module subclassing static_module 2021-09-30 15:38:18 +02:00
memory.hpp feat: Warn state for cpu, memory, fs, battery modules (#2199) 2020-12-02 15:55:13 +01:00
menu.hpp Remove atomic members from static modules 2021-09-30 15:38:18 +02:00
mpd.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
network.hpp feat(network): Ability to change speed unit text (B/s) (#2068) 2020-11-29 14:15:27 +01:00
pulseaudio.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
script.hpp script: Fix concurrency issues (#2518) 2021-10-03 01:27:11 +02:00
systray.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
temperature.hpp feat: Warn state for cpu, memory, fs, battery modules (#2199) 2020-12-02 15:55:13 +01:00
text.hpp refactor: Move module type string into modules 2020-11-26 20:53:53 +01:00
unsupported.hpp Universal Visibility Action (#2320 cont'd) (#2426) 2021-07-07 21:43:49 +02:00
xbacklight.hpp Remove atomic members from static modules 2021-09-30 15:38:18 +02:00
xkeyboard.hpp Add compiler warning for missing override specifier (#2341) 2021-01-04 10:38:43 +01:00
xwindow.hpp Add compiler warning for missing override specifier (#2341) 2021-01-04 10:38:43 +01:00
xworkspaces.hpp Remove main thread from static_module 2021-09-30 15:38:18 +02:00