-
Notifications
You must be signed in to change notification settings - Fork 14
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
Make giph stop all previous recordings properly #26
base: master
Are you sure you want to change the base?
Conversation
Hey @rqdmap! Stopping all recordings reliable has been an issue in many different setups, every time someone thinks they have the solution, someone else comes up reporting it doesn't work on their system. That out of the way, I'm currently not using an x11 environment, which makes this impossible for me to test, so I have to gain confidence in this change another way, but I don't quite understand the whole change. So let me ask some questions in a review to fully understand it. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please use your implementation to replace the current --stop
feature instead of introducing a new flag. If you want to somewhat keep the old behavior, put it behind a --kill
flag that would just hard kill all running recordings.
That's great. Looking forward to the new release! :) |
I'm new to giph and I love the tiny and elegant program very much! But sometimes I find
giph --stop
not working properly. After investigating, I find two main problems:"$(pgrep -f "bash.+giph")"
will return all pids as a single string. So after starting multiple giph records,giph --stop
can only stop at most one previous record.giph --stop
, It will send SIGINT to all running giph processes as well as their child processes. This has caused me some trouble because I'm using keyboard shortcut and when I accidently executed this command twice, theencode()
bash function will be interrupted. So I will lose all the screen records and only get an empty gif file. I modifiedstop_all_recordings
in order to kill giph's record child process accurately.