]> source.dussan.org Git - tigervnc.git/log
tigervnc.git
8 years agoUpdate Danish translation
Joe Hansen [Mon, 7 Dec 2015 10:03:17 +0000 (11:03 +0100)]
Update Danish translation

8 years agoUpdate Dutch translation
Benno Schulenberg [Mon, 7 Dec 2015 10:02:59 +0000 (11:02 +0100)]
Update Dutch translation

8 years agoUpdate Bulgarian translation
Alexander Shopov [Fri, 4 Dec 2015 11:26:50 +0000 (12:26 +0100)]
Update Bulgarian translation

8 years agoUpdate Finnish translation
Jorma Karvonen [Fri, 4 Dec 2015 11:26:22 +0000 (12:26 +0100)]
Update Finnish translation

8 years agoUpdate Swedish translation
Göran Uddeborg [Thu, 3 Dec 2015 09:06:34 +0000 (10:06 +0100)]
Update Swedish translation

8 years agoUpdate Ukrainian translation
Yuri Chornoivan [Wed, 2 Dec 2015 15:36:08 +0000 (16:36 +0100)]
Update Ukrainian translation

8 years agoMerge branch 'multicore' of https://github.com/CendioOssman/tigervnc
Pierre Ossman [Wed, 2 Dec 2015 15:22:37 +0000 (16:22 +0100)]
Merge branch 'multicore' of https://github.com/CendioOssman/tigervnc

8 years agoPerformance analysis of multi-core decoder 242/head
Pierre Ossman [Wed, 2 Dec 2015 15:16:01 +0000 (16:16 +0100)]
Performance analysis of multi-core decoder

8 years agoGracefully handle empty CopyArea operations
Pierre Ossman [Mon, 30 Nov 2015 12:08:19 +0000 (13:08 +0100)]
Gracefully handle empty CopyArea operations

8 years agoMerge branch 'master' of https://github.com/hackonteur/tigervnc
Pierre Ossman [Mon, 30 Nov 2015 09:49:22 +0000 (10:49 +0100)]
Merge branch 'master' of https://github.com/hackonteur/tigervnc

8 years agoModularized el5 & el6 RPM specs
Brian P. Hinz [Sun, 29 Nov 2015 16:56:53 +0000 (11:56 -0500)]
Modularized el5 & el6 RPM specs

Split the static library pre-reqs into a static-devel package
so that they don't need to be rebuilt everytime tigervnc's
sources change.

8 years agoFix relative PATH to SRCDIR 241/head
Scott Roland [Sun, 29 Nov 2015 23:41:22 +0000 (23:41 +0000)]
Fix relative PATH to SRCDIR

8 years agoOptimised shortcut for decoding on single CPU systems
Pierre Ossman [Tue, 24 Nov 2015 16:15:16 +0000 (17:15 +0100)]
Optimised shortcut for decoding on single CPU systems

8 years agoLimit the number of decoder threads to 4
Pierre Ossman [Fri, 20 Nov 2015 15:14:48 +0000 (16:14 +0100)]
Limit the number of decoder threads to 4

They just end up burning CPU fighting each other without much
improvement to the decoding time beyond four threads.

8 years agoThrottle overlapping screen updates
Pierre Ossman [Wed, 18 Nov 2015 15:24:16 +0000 (16:24 +0100)]
Throttle overlapping screen updates

We need to make sure the display server has finished reading our
previous update before we overwrite the buffer with the next update.

8 years agoConsolidate how to run the FLTK loop in one place
Pierre Ossman [Wed, 18 Nov 2015 15:23:21 +0000 (16:23 +0100)]
Consolidate how to run the FLTK loop in one place

8 years agoPropagate exceptions from worker threads back to main thread
Pierre Ossman [Tue, 17 Nov 2015 08:37:57 +0000 (09:37 +0100)]
Propagate exceptions from worker threads back to main thread

8 years agoEstimate CPU core usage in performance tests
Pierre Ossman [Mon, 16 Nov 2015 08:37:46 +0000 (09:37 +0100)]
Estimate CPU core usage in performance tests

This is based on comparing CPU time with elapsed time, which means
that the tests can be heavily influenced by other load on the test
machine.

8 years agoProtect PlatformPixelBuffer from simultaneous access
Pierre Ossman [Fri, 13 Nov 2015 13:09:27 +0000 (14:09 +0100)]
Protect PlatformPixelBuffer from simultaneous access

The damage tracking region needs to be protected from multiple
threads accessing it at once. The rest should be fine though.

8 years agoCreate one decode thread for each CPU
Pierre Ossman [Fri, 13 Nov 2015 13:07:52 +0000 (14:07 +0100)]
Create one decode thread for each CPU

We can start creating more decoding threads now that we handle
rect ordering properly. No point in creating more threads than
there are CPUs though.

8 years agoAdd option to enable thread sanitizer
Pierre Ossman [Fri, 13 Nov 2015 13:06:35 +0000 (14:06 +0100)]
Add option to enable thread sanitizer

8 years agoAllow parallel decoding of Tight JPEG rects
Pierre Ossman [Fri, 13 Nov 2015 10:16:33 +0000 (11:16 +0100)]
Allow parallel decoding of Tight JPEG rects

The cost is some more load on malloc(), but it should be small
compared to the gains of spreading the CPU heavy JPEG decoding
over multiple CPUs.

8 years agoAllow conditional dependencies between rects when decoding
Pierre Ossman [Fri, 13 Nov 2015 09:47:28 +0000 (10:47 +0100)]
Allow conditional dependencies between rects when decoding

Some encodings only cause dependencies between rects some of the
time. Make sure we can allow parallel decoding of those rect that
aren't dependent on each other.

8 years agoDecode rectangles in order if needed
Pierre Ossman [Thu, 12 Nov 2015 12:18:22 +0000 (13:18 +0100)]
Decode rectangles in order if needed

Some encodings must be handled in the order they are received.
Make sure we respect this in the decode manager.

8 years agoDecode overlapping rectangles in order
Pierre Ossman [Thu, 12 Nov 2015 12:17:42 +0000 (13:17 +0100)]
Decode overlapping rectangles in order

8 years agoAdd flags member to decoders
Pierre Ossman [Thu, 12 Nov 2015 12:07:42 +0000 (13:07 +0100)]
Add flags member to decoders

Allows us to add attributes later that affect of the decoder
manager deals with the decoders.

8 years agoMake the decoder multi-threaded
Pierre Ossman [Thu, 12 Nov 2015 11:21:58 +0000 (12:21 +0100)]
Make the decoder multi-threaded

This implements the basic infrastructure for multi-threaded
decoding of rects. However there is just one thread reading data
and one thread decoding it. More logic is needed to safely decode
multiple rects at the same time.

8 years agoLet CConnection intercept more callbacks
Pierre Ossman [Thu, 12 Nov 2015 11:20:05 +0000 (12:20 +0100)]
Let CConnection intercept more callbacks

We need more callbacks for correct operation of multi-threaded
rect decoding.

8 years agoAdd abstraction classes for system thread primitives
Pierre Ossman [Thu, 12 Nov 2015 11:16:08 +0000 (12:16 +0100)]
Add abstraction classes for system thread primitives

8 years agoRaise system requirement on Windows to Vista/2008
Pierre Ossman [Thu, 12 Nov 2015 11:17:34 +0000 (12:17 +0100)]
Raise system requirement on Windows to Vista/2008

We need the newer versions of Windows to get access to better
thread primitives.

8 years agoFix copy-paste error for the secTypeX509Vnc security type
Pierre Ossman [Wed, 11 Nov 2015 12:12:45 +0000 (13:12 +0100)]
Fix copy-paste error for the secTypeX509Vnc security type

8 years agoClear up ZlibInStream::reset() behaviour
Pierre Ossman [Wed, 11 Nov 2015 12:11:09 +0000 (13:11 +0100)]
Clear up ZlibInStream::reset() behaviour

It previously only did a reset of the ZlibInStream object, not the
underlying zlib stream. It also had the side effect of flushing
the underlying stream and disassociating from it.

Clear things up by changing the naming, and introducing a proper
reset function (which is needed by the Tight decoder).

8 years agoSplit decoders into a read and decode step
Pierre Ossman [Tue, 10 Nov 2015 16:17:34 +0000 (17:17 +0100)]
Split decoders into a read and decode step

We need to split these steps up in preparation for multi-core
support. Reading needs to be done in a serial manner, whilst
decoding can be done in parallel.

This also involved a rather large cleanup of the Tight decoder.

8 years agoAdd efficient method to copy data between two streams
Pierre Ossman [Tue, 10 Nov 2015 16:13:27 +0000 (17:13 +0100)]
Add efficient method to copy data between two streams

8 years agoRemove unneeded virtual qualifiers on stream methods
Pierre Ossman [Tue, 10 Nov 2015 16:12:56 +0000 (17:12 +0100)]
Remove unneeded virtual qualifiers on stream methods

8 years agoRemove CMsgReader::getImageBuf() as nothing uses it
Pierre Ossman [Tue, 10 Nov 2015 12:03:26 +0000 (13:03 +0100)]
Remove CMsgReader::getImageBuf() as nothing uses it

8 years agoDecouple decoders from CConnection
Pierre Ossman [Tue, 10 Nov 2015 12:02:12 +0000 (13:02 +0100)]
Decouple decoders from CConnection

8 years agoMake ConnParams useful when const
Pierre Ossman [Tue, 10 Nov 2015 11:58:49 +0000 (12:58 +0100)]
Make ConnParams useful when const

8 years agoDelegate decoder object management to a separate class
Pierre Ossman [Mon, 9 Nov 2015 15:34:54 +0000 (16:34 +0100)]
Delegate decoder object management to a separate class

Done in preparation for multi-core decoding. Keeps the complexity
out of the other classes. This also moves ownership of the
framebuffer in to CConnection. It's the CConnection object that is
aware of the threads and how to synchronise with them. Therefore
the ownership of the framebuffer must also be there to make sure
it isn't deleted whilst threads are working.

8 years agoUpdate RPM dependency sources to latest versions
Brian P. Hinz [Thu, 26 Nov 2015 15:41:47 +0000 (10:41 -0500)]
Update RPM dependency sources to latest versions

Several of the pre-requisites have outstanding CVEs.

8 years agoChange development version to 1.6.80
Pierre Ossman [Thu, 26 Nov 2015 11:39:02 +0000 (12:39 +0100)]
Change development version to 1.6.80

8 years agoUpdate translation template file
Pierre Ossman [Thu, 26 Nov 2015 11:35:39 +0000 (12:35 +0100)]
Update translation template file

8 years agoFix inverted logic in ProcVncExtSetParam. 236/head
Michal Srb [Thu, 12 Nov 2015 13:03:28 +0000 (15:03 +0200)]
Fix inverted logic in ProcVncExtSetParam.

8 years agoClean out unused dependencies from CConnection.h
Pierre Ossman [Mon, 9 Nov 2015 14:48:19 +0000 (15:48 +0100)]
Clean out unused dependencies from CConnection.h

8 years agoInclude kernel time in CPU usage measurement
Pierre Ossman [Mon, 9 Nov 2015 14:29:30 +0000 (15:29 +0100)]
Include kernel time in CPU usage measurement

Time spent executing in the kernel is as much of a performance problem
as time spent in userspace. Make sure both numbers are included.

8 years agoRemove old Windows CE code
Pierre Ossman [Mon, 9 Nov 2015 14:28:50 +0000 (15:28 +0100)]
Remove old Windows CE code

8 years agoUse mingw's gettimeofday()
Pierre Ossman [Mon, 9 Nov 2015 14:27:54 +0000 (15:27 +0100)]
Use mingw's gettimeofday()

mingw has a perfectly functional gettimeofday() so use that instead
of having multiple copies of our own version.

8 years agoRemove unused deleteReaderAndWriter() method
Pierre Ossman [Mon, 9 Nov 2015 14:26:56 +0000 (15:26 +0100)]
Remove unused deleteReaderAndWriter() method

8 years agooption -xstartup added 231/head
Llorenç Garcia Martinez [Fri, 30 Oct 2015 10:11:56 +0000 (11:11 +0100)]
option -xstartup added

8 years agooption -xstartup added
Llorenç Garcia Martinez [Fri, 30 Oct 2015 10:07:40 +0000 (11:07 +0100)]
option -xstartup added

8 years agoMerge branch 'patch-1' of https://github.com/Siot/tigervnc
Pierre Ossman [Fri, 30 Oct 2015 09:38:00 +0000 (10:38 +0100)]
Merge branch 'patch-1' of https://github.com/Siot/tigervnc

8 years agoXvnc.man: remove -i option 229/head
Kirill Kolyshkin [Thu, 29 Oct 2015 00:01:07 +0000 (17:01 -0700)]
Xvnc.man: remove -i option

Xvnc does not understand -i as an alias to -interface anymore (since commit f8e3b34c69)
but it is still listed in the man page.

Fix man accordingly

Signed-off-by: Kir Kolyshkin <kir@openvz.org>
8 years agoMerge branch 'master' of https://github.com/graysky2/tigervnc
Pierre Ossman [Tue, 27 Oct 2015 13:31:39 +0000 (14:31 +0100)]
Merge branch 'master' of https://github.com/graysky2/tigervnc

8 years agoAllow BUILD_TIMESTAMP to be set statically
DRC [Sat, 17 Oct 2015 23:55:08 +0000 (18:55 -0500)]
Allow BUILD_TIMESTAMP to be set statically

8 years agoAllow static linking against only the GCC libs
DRC [Sat, 17 Oct 2015 23:13:05 +0000 (18:13 -0500)]
Allow static linking against only the GCC libs

8 years agoMerge branch 'jpeg_includes' of https://github.com/dcommander/tigervnc
Pierre Ossman [Tue, 27 Oct 2015 13:08:32 +0000 (14:08 +0100)]
Merge branch 'jpeg_includes' of https://github.com/dcommander/tigervnc

8 years agoAdded -noxstartup 226/head
Llorenç Garcia Martinez [Fri, 23 Oct 2015 11:42:13 +0000 (13:42 +0200)]
Added -noxstartup

8 years agonew option -noxstartup to not load any xstartup script file
Llorenç Garcia Martinez [Fri, 23 Oct 2015 11:37:42 +0000 (13:37 +0200)]
new option -noxstartup to not load any xstartup script file

8 years agoprovide a systemd user service unit for vncserver 221/head
graysky [Mon, 19 Oct 2015 12:27:27 +0000 (08:27 -0400)]
provide a systemd user service unit for vncserver

9 years agoupdate manpage teaching about ~/.vnc/config
graysky [Mon, 19 Oct 2015 12:26:44 +0000 (08:26 -0400)]
update manpage teaching about ~/.vnc/config

9 years agoupdate vncserver to parse a config file
graysky [Mon, 19 Oct 2015 12:24:14 +0000 (08:24 -0400)]
update vncserver to parse a config file

9 years agoFlush entire JPEG buffer, ignoring state
Pierre Ossman [Fri, 16 Oct 2015 11:03:14 +0000 (13:03 +0200)]
Flush entire JPEG buffer, ignoring state

libjpeg doesn't update the buffer state before calling the
empty_output_buffer() callback so we need to flush everything,
not just the apparent size.

9 years agoEnsure that libjpeg-turbo headers are included 222/head
DRC [Fri, 16 Oct 2015 08:28:58 +0000 (03:28 -0500)]
Ensure that libjpeg-turbo headers are included

On some systems, the build was picking up jpeglib.h from the system
include directories, and if the system's version of libjpeg[-turbo] used
a different API/ABI version than the one specified in JPEG_LIBRARY, this
led to a "Wrong JPEG library version" error at run time.

9 years agoMerge pull request #219 from astrand/master
astrand [Wed, 14 Oct 2015 11:58:12 +0000 (13:58 +0200)]
Merge pull request #219 from astrand/master

Meta no longer sends Super.

9 years agoMeta no longer sends Super. 219/head
Peter Åstrand (astrand) [Wed, 14 Oct 2015 11:47:28 +0000 (13:47 +0200)]
Meta no longer sends Super.

Since 83e019f599f409d60c12a3c0096f6b6d228d9fb1.

9 years agoMerge branch 'vncserverfix' of https://github.com/michalsrb/tigervnc
Pierre Ossman [Mon, 12 Oct 2015 08:03:33 +0000 (10:03 +0200)]
Merge branch 'vncserverfix' of https://github.com/michalsrb/tigervnc

9 years agoMerge pull request #215 from bphinz/master
Brian Hinz [Sun, 11 Oct 2015 16:26:21 +0000 (12:26 -0400)]
Merge pull request #215 from bphinz/master

Improved x509 auth for java viewer

9 years agoFix exit routine in java viewer 215/head
Brian P. Hinz [Sun, 11 Oct 2015 16:20:51 +0000 (12:20 -0400)]
Fix exit routine in java viewer

Some exceptions were causing all viewers to exit, not just the
one that threw the exception.

9 years agoMore cleanup of x509 exception handling in java viewer
Brian P. Hinz [Sun, 11 Oct 2015 16:19:23 +0000 (12:19 -0400)]
More cleanup of x509 exception handling in java viewer

Also removed some unnecessary functions & variables in CSecurityTLS

9 years agoCleanup exception handling for x509* auth types in java viewer
Brian P. Hinz [Sat, 10 Oct 2015 17:06:14 +0000 (13:06 -0400)]
Cleanup exception handling for x509* auth types in java viewer

9 years agoMerge pull request #214 from bphinz/java-HostnameVerifier
Brian Hinz [Sat, 10 Oct 2015 03:46:13 +0000 (23:46 -0400)]
Merge pull request #214 from bphinz/java-HostnameVerifier

Added hostname verification for x509 authentication types to java viewer

9 years agoAdded hostname verification for x509 authentication types 214/head
Brian P. Hinz [Sat, 10 Oct 2015 03:43:42 +0000 (23:43 -0400)]
Added hostname verification for x509 authentication types

9 years agovncserver: Clean pid files of dead processes. 207/head
Michal Srb [Thu, 1 Oct 2015 23:28:26 +0000 (02:28 +0300)]
vncserver: Clean pid files of dead processes.

When Xvnc fails to start, delete the pid file. Clean pid files of dead processes
when listing them as well.

9 years agoEnable Windows specific debug code in debug builds
Pierre Ossman [Tue, 29 Sep 2015 13:44:28 +0000 (15:44 +0200)]
Enable Windows specific debug code in debug builds

9 years agoProperly free temporary cursor buffer
Pierre Ossman [Tue, 29 Sep 2015 13:44:07 +0000 (15:44 +0200)]
Properly free temporary cursor buffer

9 years agoDon't shadow member variable
Pierre Ossman [Tue, 29 Sep 2015 13:43:46 +0000 (15:43 +0200)]
Don't shadow member variable

9 years agoAvoid dropping const qualifier needlessly
Pierre Ossman [Tue, 29 Sep 2015 13:43:28 +0000 (15:43 +0200)]
Avoid dropping const qualifier needlessly

9 years agoUse correct type for format string
Pierre Ossman [Tue, 29 Sep 2015 13:42:58 +0000 (15:42 +0200)]
Use correct type for format string

9 years agoClean up listening sockets on error
Pierre Ossman [Tue, 29 Sep 2015 13:42:33 +0000 (15:42 +0200)]
Clean up listening sockets on error

9 years agoReturn TcpListener pointers rather than objects
Pierre Ossman [Tue, 29 Sep 2015 13:40:49 +0000 (15:40 +0200)]
Return TcpListener pointers rather than objects

It is easier to control object life time and avoid magical socket
duplication by having a single TcpListener object to pass around.
We have to be more careful about deleting the object though.

9 years agoReturn correct error code from bind()
Pierre Ossman [Tue, 29 Sep 2015 07:42:36 +0000 (09:42 +0200)]
Return correct error code from bind()

Closing the socket might overwrite errno so we need to save
its value.

9 years agoDon't leak socket on setsockopt() errors
Pierre Ossman [Tue, 29 Sep 2015 07:42:03 +0000 (09:42 +0200)]
Don't leak socket on setsockopt() errors

9 years agoAdd address sanitizer switch
Pierre Ossman [Tue, 29 Sep 2015 07:40:20 +0000 (09:40 +0200)]
Add address sanitizer switch

Useful for debugging memory leaks and access violations. It is
not available on Windows though, and there is some problem compiling
ObjectiveC++ with it turned on.

9 years agoMake sure fallback block handler remains enabled
Pierre Ossman [Thu, 24 Sep 2015 14:24:48 +0000 (16:24 +0200)]
Make sure fallback block handler remains enabled

Commit f8e3b34 introduced a regression where the fallback write block
handler would cease working after the first time it was called,
potentially stalling writes.

9 years agoGive context for strings used in menus
Pierre Ossman [Wed, 23 Sep 2015 14:39:54 +0000 (16:39 +0200)]
Give context for strings used in menus

Makes it easier to see which hot-keys might conflict with each
other, and allow some variation in translation in the future.

9 years agoAdd support for pgettext()
Pierre Ossman [Wed, 23 Sep 2015 14:38:17 +0000 (16:38 +0200)]
Add support for pgettext()

Primarily gives it a shorthand, but also make gcc tolerate its
use for format strings.

9 years agoRemove duplicate gettext_noop() definition
Pierre Ossman [Wed, 23 Sep 2015 14:37:22 +0000 (16:37 +0200)]
Remove duplicate gettext_noop() definition

It's defined in gettext.h so no need for us to duplicate the work.

9 years agoUpdate gettext.h to a more current version
Pierre Ossman [Wed, 23 Sep 2015 14:36:32 +0000 (16:36 +0200)]
Update gettext.h to a more current version

9 years agoOnly include translation comments in .po files
Pierre Ossman [Wed, 23 Sep 2015 14:35:47 +0000 (16:35 +0200)]
Only include translation comments in .po files

9 years agoTerminate the viewer even when waiting for data
Pierre Ossman [Wed, 23 Sep 2015 10:20:32 +0000 (12:20 +0200)]
Terminate the viewer even when waiting for data

It should be possible to exit the viewer even if the network has
stalled in the middle of a transfer.

9 years agoDisplay partial updates on slow transfers
Pierre Ossman [Wed, 23 Sep 2015 10:18:52 +0000 (12:18 +0200)]
Display partial updates on slow transfers

Normally we only display screen changes once we have the updates for
the entire screen. This may give the impression that the viewer is
hung though. So display the partial data if the update is taking to
long to arrive.

9 years agoTrack statistics for CopyRect
Pierre Ossman [Tue, 22 Sep 2015 09:09:00 +0000 (11:09 +0200)]
Track statistics for CopyRect

9 years agoMerge pull request #198 from bphinz/bugfix/x509
Brian Hinz [Mon, 21 Sep 2015 03:04:32 +0000 (23:04 -0400)]
Merge pull request #198 from bphinz/bugfix/x509

Don't exit completely if single viewer declines server cert

9 years agoDon't exit completely if single viewer declines server cert 198/head
Brian P. Hinz [Mon, 21 Sep 2015 03:00:52 +0000 (23:00 -0400)]
Don't exit completely if single viewer declines server cert

Prevents viewer from exiting completely just because user
declined to trust the server certificate for a single connection.
Copied from TurboVNC.

9 years agoFixes for X509 CA certificate handling
Brian P. Hinz [Sun, 20 Sep 2015 00:47:56 +0000 (20:47 -0400)]
Fixes for X509 CA certificate handling

95f39a5 introduced a regression whereby an exception would be thrown
when a PEM encoded CA certificate file containing one or more blank
lines was read in under Apple Java 6.  Additionally, CA certs were
being appended to the ~/.vnc/x509_savedcerts.pem file even if they
were already included in it.  Also fixes a possible FileNotFoundException
if the x509_savedcerts.pem file didn't exist.

9 years agoUpdate German translation
Mario Blättermann [Tue, 15 Sep 2015 10:19:16 +0000 (12:19 +0200)]
Update German translation

9 years agoUse REGION_INTERSECT() rather than trying to compute things manually
Pierre Ossman [Mon, 14 Sep 2015 12:39:07 +0000 (14:39 +0200)]
Use REGION_INTERSECT() rather than trying to compute things manually

REGION_INIT() does not handle an empty or invalid BoxRec, so this
method makes sure we don't feed bad rects further in to the process.

9 years agoMake vncHooksComposite() and vncHooksGlyphs() static
Pierre Ossman [Mon, 14 Sep 2015 12:38:29 +0000 (14:38 +0200)]
Make vncHooksComposite() and vncHooksGlyphs() static

They should never have been global symbols to begin with.

9 years agoRemove REGION_NULL fallback
Pierre Ossman [Mon, 14 Sep 2015 12:37:45 +0000 (14:37 +0200)]
Remove REGION_NULL fallback

It's been in the Xorg code base for ages. Any version that lacks it is
too old for the rest of our code to work anyway.

9 years agoRefuse to start Xvnc if we failed to initialise a screen
Pierre Ossman [Mon, 14 Sep 2015 12:35:05 +0000 (14:35 +0200)]
Refuse to start Xvnc if we failed to initialise a screen

Starting Xvnc without having any VNC functionality is pretty much
pointless. So terminate when that happens, making the situation easier
to detect for startup scripts.