LibVNC / libvncserver

LibVNCServer/LibVNCClient are cross-platform C libraries that allow you to easily implement VNC server or client functionality in your program.
GNU General Public License v2.0
1.1k stars 482 forks source link

libvncserver: handle EINTR #483

Open piec opened 2 years ago

piec commented 2 years ago

Hi,

I'm using libvncserver in a program that uses many signals, I have no control over that. I noticed that this select sometimes gets an EINTR.

The proposed fix is not pretty because it uses a goto but it's also simple & readable. Please tell me if you'd prefer a do {} while loop. The disadvantage is that the break after would have to changed.

Thanks for this awesome lib Pierre

PS: I suspect other syscalls could have issues too

piec commented 2 years ago

I don't remember if I've tried it, I'll have to check again

bk138 commented 2 years ago

I don't remember if I've tried it, I'll have to check again

That'd be nice - thank's in advance!

bk138 commented 2 years ago

Needs a check if continue does the job as well.

piec commented 2 years ago

I'll get some time to look at it at the beginning of next week