Guilherme Janczak
Guilherme Janczak
We don't need to duplicate the work XOpenDisplay() already does for us. Mark --display for removal at a later date. 
Here's a worst case scenario: you have a smartphone with a 4k screen running PostMarketOS. You take a screenshot with `scrot -s` and... the selection border is 1 pixel wide....
The code checks if __/tmp/__ already exists, and because it does, it appends ___000__ and creates that instead. We can't create the file because a directory by that name already...
Instead of polling for the event (with drift from calling `nanosleep()` in a loop...), this code: https://github.com/resurrecting-open-source-projects/scrot/blob/dc65e9697c0a272029d694efddb1c7cce9e66cf6/src/scrot.c#L373-L379 Should use `select()` or `poll()` to wait for the fd used to communicate...
Add additional CI targets: - [ ] PCC: Need to wait until a version with [this bug fixed](https://github.com/resurrecting-open-source-projects/scrot/pull/329#issuecomment-1572984075) is available. - [ ] Termux: Has problems installing packages due to...
This piece of style has been bugging me for a long time. I usually fix a small portion of it if I touch a small function. We should order functions...
These lines of code leak: https://github.com/resurrecting-open-source-projects/scrot/blob/a1fbb65372a2a7ce49ddd7b1041ca5f2e824a183/src/note.c#L122-L123 `parseText()` allocates a string and returns it: https://github.com/resurrecting-open-source-projects/scrot/blob/a1fbb65372a2a7ce49ddd7b1041ca5f2e824a183/src/note.c#L288 If you pass a font file multiple times to the note feature, it will assign the...
scrot has some undocumented behavior and sometimes deliberately continues with some kludge when it fails to comply with the user's request. We can see here that if the user requests...
Commit 2e33c4cc81f0f6eeec696d81f393f6a7f061c796 changed scrot's behavior. In 7ee199c (the preceding commit), `scrot 'test$'` would create a file named _test_. 2e33c4cc81f0f6eeec696d81f393f6a7f061c796 creates a file named _test$_.
We don't need to know the path of stdout. It doesn't even necessarily have one. The code suffers from the TOCTTOU mentioned in #244, and it also uses __/proc__ (a...