polybar/include/utils
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
..
action_router.hpp module: Implement action router (#2336) 2021-01-04 10:25:52 +01:00
actions.hpp controller: Cleanup process_inputdata 2020-11-26 20:53:53 +01:00
bspwm.hpp refactor: Cleanup 2017-01-11 03:07:28 +01:00
color.hpp fix(color): Rename type() function to get_type 2021-03-01 00:05:44 +01:00
command.hpp script: Fix concurrency issues (#2518) 2021-10-03 01:27:11 +02:00
concurrency.hpp Remove unused spin_lock 2021-09-21 21:43:27 +02:00
env.hpp refactor(file_util): Expand tilde manually 2017-01-25 17:07:55 +01:00
factory.hpp Remove factory_util unique and shared 2021-09-21 21:43:27 +02:00
file.hpp script: Fix concurrency issues (#2518) 2021-10-03 01:27:11 +02:00
functional.hpp refactor: Optimize build 2016-11-20 23:04:31 +01:00
http.hpp Remove unused factory.hpp imports 2021-09-21 21:43:27 +02:00
i3.hpp feat(conf): Option to always show urgent workspaces in i3 (#2378) 2021-02-15 21:31:34 +01:00
inotify.hpp Remove unused factory.hpp imports 2021-09-21 21:43:27 +02:00
io.hpp script: Fix concurrency issues (#2518) 2021-10-03 01:27:11 +02:00
math.hpp fix: unbounded_percentage always rounded down 2021-03-03 22:48:17 +01:00
memory.hpp fix(build): Ignore noexcept-type for malloc_ptr_t 2019-10-26 22:28:47 +02:00
mixins.hpp fix: project rename 2016-11-19 06:26:07 +01:00
process.hpp Add env parameter to exec_sh() 2021-09-28 22:16:07 +02:00
scope.hpp Remove unused factory.hpp imports 2021-09-21 21:43:27 +02:00
socket.hpp Remove unused factory.hpp imports 2021-09-21 21:43:27 +02:00
string.hpp feat(memory): Tokens that switch between MiB and GiB (#2488) 2021-09-04 13:14:13 +02:00
time.hpp refactor: Move all event handling to the controller 2016-12-20 05:16:04 +01:00