Michael Rennie
129f4218c9
Choose FB config with a GLX_VISUAL_ID that matches the X screen.
...
Fixes glXCreateWindow returning "BadMatch (invalid parameter attributes)".
Also delete the GLX_ALPHA_SIZE=8 criteria, else there might not be any
matching config.
2016-08-23 20:37:10 +01:00
Michael Rennie
86fd623a54
Fix char* format specifier.
2016-08-23 20:26:28 +01:00
baldurk
e7cbc905e6
Add AMD D3D11 extensions headers, and force-disable AMD exts on create
...
* If the AMD extensions are active and captured, the driver will crash
on replay in a hard to diagnose way (unless you know what's really
wrong!)
* With this change, the target application should see the extensions
failing to create and gracefully fallback to not using them.
2016-08-23 17:23:42 +02:00
baldurk
5826777dfe
Blind (untested) implementation of wrapping/handling for VK_KHR_display
2016-08-23 17:18:42 +02:00
baldurk
872fbe017b
Make xlib and xcb support optional (but default on) on linux
...
* Also allow disabling GL a little better by removing the dependency in
renderdoccmd.
* Disabling them now completely removes all xcb and xlib build
dependencies. The resulting library/executable is only useful in
limited situations - e.g. replaying vulkan remotely which doesn't need
any window system interaction. Or capturing vulkan as well with the
KHR_display WSI extension which doesn't need any built-time includes
or libs.
2016-08-23 16:25:21 +02:00
baldurk
f8bbedeb8b
Ping the connected host regularly and check other hosts at lower freq.
...
* This lets us detect when a remote server has been disconnected and
needs to be restarted, as well as alerting the user if this happens in
the middle of a replay session.
* Pinging other hosts means the context switcher is reasonably up to
date if one of them comes up.
2016-08-23 15:21:52 +02:00
baldurk
0ddfd3d65b
Shut down active client properly when killing remote server
2016-08-23 13:47:06 +02:00
baldurk
a8cfc753df
Bullet proof the replay renderer against the proxy going away suddenly
2016-08-23 13:37:24 +02:00
baldurk
81b6b0653b
Display the local filename even when copying to remote for replaying
2016-08-23 13:25:47 +02:00
baldurk
27b7077c36
Add versioning into remote server protocol
2016-08-23 13:02:07 +02:00
baldurk
1b06e2b553
Handle EAGAIN and EINPROGRESS where appropriate as well as EWOULDBLOCK
2016-08-23 11:31:01 +02:00
baldurk
4bc3dbcc9e
Rejig update dialog to provide a bit more info and display RTF notes
2016-08-22 11:03:22 +02:00
baldurk
d632bc7ba8
Fix crash fetching data with an offset larger than the buffer size
2016-08-22 10:07:04 +02:00
baldurk
21a5bfd55a
Fix compile warnings about shadowed variables.
2016-08-19 19:23:59 +02:00
baldurk
8183c0d2ac
Better handling of BGRA8 dds saving and loading
2016-08-19 17:36:36 +02:00
baldurk
79b860c1d5
Fix saturate on the wrong sub-expression clamping sRGB white slightly
2016-08-19 17:26:39 +02:00
baldurk
a786ac2eab
When switching textures/events, leave pixel pick result valid
...
* This avoids a flicker when using remote replay while the pick result
comes in
2016-08-19 17:26:39 +02:00
baldurk
6008458216
Fix LZ4 compression for replay proxy texture data transfer
...
* The compression bound was just a hacked 'uncompressed size + 512'
which might not be enough for true worst case.
* Worse, the serialisation was transferring size_ts so it would break if
proxying between 32-bit and 64-bit executables.
2016-08-19 17:26:38 +02:00
baldurk
39b995fcfa
Add a dialog to ask if the user wants to replay remotely
2016-08-19 17:26:37 +02:00
baldurk
91bf3ff3fc
Handle empty strings in marshalling (NULL elems and count == 0)
2016-08-19 17:26:36 +02:00
baldurk
d2faf76356
Save machine ident in captures and compare to machine ident on open
...
* If the machine idents differ in significant ways that we'd consider
it to be a different platform (currently just OS), and if so mark it
as supported but suggested to be replayed remotely.
2016-08-19 17:26:36 +02:00
baldurk
52a754d4c1
Add function to get a coarse machine identifier
...
* This can be used to determine what kind of machine a capture came from
and potentially decide to alert the user and suggest replaying on that
kind of machine if it's very different.
2016-08-19 17:26:35 +02:00
baldurk
027bcdb7e8
Don't validate existance of working directories on remote captures
2016-08-19 17:26:34 +02:00
baldurk
b5e6f8bef2
Allow specifying environment variable modifications
...
* This works for local and remote invocations of programs, but is mostly
useful on unix systems (Windows programs use env vars less often)
2016-08-19 17:26:33 +02:00
baldurk
71cca06683
Make windows environment variable modification case-insensitive
2016-08-19 17:26:33 +02:00
baldurk
2fe43fab79
Don't try to copy a non-local log to the remote thost
2016-08-19 17:26:32 +02:00
baldurk
12d5f5bd70
Make sure copy from remote happens even when not running
2016-08-19 17:26:31 +02:00
baldurk
d05f99d1b5
Don't add non-local files to recent list
2016-08-19 17:26:31 +02:00
baldurk
d04c06a229
Add a remote/virtual open file dialog for browsing over the network
...
* This needs some optimisation - the obvious one being to batch up
requests for multiple children all at once.
2016-08-19 17:26:30 +02:00
baldurk
23cf596d52
When requesting directories for '/' on windows, return the drives
2016-08-19 17:26:29 +02:00
baldurk
fd1d7ef58c
Disable config options by default, and also disable the buttons
2016-08-19 17:26:28 +02:00
baldurk
aebed0e900
Expose directory listing functions to C#
2016-08-19 17:26:28 +02:00
baldurk
db57f18b08
Add function to get home/documents folder
2016-08-19 17:26:27 +02:00
baldurk
593e2c5903
Add an function to return directory list of files and basic properties.
2016-08-19 17:26:27 +02:00
baldurk
5dc70c2a72
Rename ProxySerialiser to ReplayProxy
2016-08-19 17:26:26 +02:00
baldurk
87c978f71a
Add functionality to copy captures to the remote server for replaying
2016-08-19 17:26:25 +02:00
baldurk
ebea48260d
Mark blocking invokes for painting as lower priority
...
* This allows them to be enqueued without the usual synchronous block
if there's something long-running on the queue while in remote mode.
2016-08-19 17:26:24 +02:00
baldurk
d63e3b89ad
Add support for copying files back from remote server
2016-08-19 17:26:24 +02:00
baldurk
6437347081
Don't double-delete serialiser of data into replay proxy
2016-08-19 17:26:23 +02:00
baldurk
96c777cb43
Set display properly when checking RemoteHost status
2016-08-19 17:26:22 +02:00
baldurk
a2955a39b0
Don't recreate RenderManager when closing logfile
2016-08-19 17:26:22 +02:00
baldurk
fe08662e38
Handle non-local logs, make sure they are properly owned and deleted
2016-08-19 17:26:21 +02:00
baldurk
0207c74b90
Check remote server status at startup to pre-populate context chooser
2016-08-19 17:26:20 +02:00
baldurk
dca8fe7905
Actually use modified path in working dir hint
2016-08-19 17:26:20 +02:00
baldurk
2060173049
Track busy and active connections and display in UI
2016-08-19 17:26:19 +02:00
baldurk
8a5d300e78
Use custom exception for replay creation failures
2016-08-19 17:26:18 +02:00
baldurk
42f57990d9
Change remote server to have server thread & client threads
...
* This lets us respond to multiple clients (although all but one will
get a busy signal).
2016-08-19 17:26:18 +02:00
baldurk
baad227145
Add status for network remote side being busy
2016-08-19 17:26:17 +02:00
baldurk
018cbcbcc1
Add errors encountered while executing & injecting.
2016-08-19 17:26:16 +02:00
baldurk
802ccc3991
Add initial handshake for remote server
2016-08-19 17:26:15 +02:00