| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| | |
Make it a bit more readable.
|
| |
| |
| |
| | |
Make the control flow a bit clearer.
|
| |
| |
| |
| |
| | |
Make sure the code deals more gracefully with timers that take a
long time to execute, and therefore might miss their deadlines.
|
| |
| |
| |
| |
| |
| | |
Adds an optional graph to the viewer to display current frame rate,
pixel rate and network bandwidth. Makes it easier to debug and test
performance related issues.
|
| |
| |
| |
| | |
Incoming width specifies wrapping width, and we do not want any wrapping.
|
| |
| |
| |
| |
| | |
Even if there are no pixels it will still trigger sanity checks
when we start throwing bogus coordinates around.
|
| |
| |
| |
| | |
It adds a lot of noise to the debug output with little gain.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
This will allow us to use better formats that preserve the entire
alpha channel.
|
| | |
|
| | |
|
| |
| |
| |
| | |
Mentioned in issue #38
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
The functions might change so we need to also make sure we grab
the updated value after each call. Clean up the code to use the
same style as the rest of the Xorg code.
|
| |
| |
| |
| | |
Fixes issue #408
|
| |
| |
| |
| |
| |
| | |
Also, delay showing DesktopWindow until first valid rect has been
recieved. This allows for a ClientRedirect to take place before
any data rects have been received.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Some platforms draw directly to the screen, which means that updates
will flicker if we draw multiple layers. Prevent this by first
composing the update on a hidden surface.
|
| |
| |
| |
| | |
This will allow us to render more things than just the framebuffer.
|
| |
| |
| |
| |
| | |
Stop fighting with the FLTK scroll widget and handle layout ourselves.
This opens up the possibility of doing more complex drawing as well.
|
| |
| |
| |
| |
| | |
Some platforms impose a significant delay per frame, so we need
to separate that from the time spent shuffling pixels.
|
| |
| |
| |
| | |
Raising the requirement to 10.5 allows us to clean up the code a bit.
|
| | |
|
| |
| |
| |
| | |
We can no longer assume maskRect() will tolerate uncropped data.
|
| |
| |
| |
| |
| |
| | |
We need to restore the previous, more complex API in order to
easily handle masks now that we no longer accept out-of-bounds
operations.
|
|\ \ |
|
| | | |
|
| | | |
|
|/ /
| |
| |
| |
| |
| | |
One was missing a call to register the fd with the X server, and
one forgot to set it to non-blocking. One result of this was a crash
when hitting the blacklist.
|
| |
| |
| |
| |
| |
| | |
There has been multiple attempts at tricking decoders to exceed
the boundaries of the active pixel buffer. Add extra checks to
prevent such invalid access.
|
| | |
|
| |
| |
| |
| |
| |
| | |
It can be triggered by RRE message with subrectangle out of framebuffer
boundaries. It may prevent the same kind of issue caused by evil message
from another encoding too.
|
| |
| |
| |
| |
| | |
The complex logic waiting for events didn't result in any added
performance, so use the simpler approach.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
xserver 1.19's OsInit will create a pollfd, followed by checking if fd 2 /
stderr is writable and if it is not, replacing fd 2 with /dev/null.
Since we close stderr in inetd mode to avoid xserver messages being send
to the client as vnc data, the pollfd becomes fd 2, only to be replaced
by /dev/null since a pollfd is not writable.
This commit fixes this by opening /dev/null directly after the close(2),
avoiding that the pollfd becomes fd 2.
Alan Coopersmith: Change to use dup2() for atomic switch of fd
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
|
| | |
|
| |
| |
| |
| |
| | |
Use the APIs the way Apple wants us to, in order to avoid slow
fallback code paths in Quartz.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
These are very rare and very low level. Might as well just print
the offending call to keep things easily maintained.
|
| |
| |
| |
| |
| |
| | |
There were still some circumstances where we could get stuck reading
data and not respect close events properly. Move that logic to a more
central place in order to make it more reliable.
|
| | |
|
| | |
|
| | |
|