spice/client
Arnon Gilboa 30f347e41a client/windows: fix SetClipboardViewer error handling rhbz#786554
MSDN says the following about SetClipboardViewer(): "If an error occurs or there
are no other windows in the clipboard viewer chain, the return value is NULL".
Seems like the buggy case was "no other windows in the clipboard viewer chain",
which explains the 3rd party clipboard manager workaround detailed in the bug
description.

It also seems like SetClipboardViewer() does not clear the error state on
succcess. Calling SetLastError(0) before SetClipboardViewer() seems to solves
this issue.

Since we could not reproduce the bug on our env, the customer has verified on
several of their systems that a private build resolved the issue.
2012-03-01 14:18:57 +02:00
..
gui add missing "LGPLv2.1 or later" header to source files 2011-07-21 15:09:28 +03:00
tests add .gitignore for tests 2010-11-30 20:54:49 +02:00
windows client/windows: fix SetClipboardViewer error handling rhbz#786554 2012-03-01 14:18:57 +02:00
x11 client: menu: make RedWindow::set_menu() return an error-code (#758260) 2011-12-21 13:04:01 +02:00
.gitignore gitignore: add generated_*, vim temps, pyc 2010-11-08 16:06:55 +02:00
application.cpp client: foreign-menu: pass "active" param when creating a ForeignMenu (#769020) 2011-12-21 13:05:12 +02:00
application.h client: setting monitors resolution before resizing screens, RHBZ #728252 2011-08-25 15:04:27 +03:00
audio_channels.h client: playback/record channels: implement on_disconnect 2011-09-26 12:17:59 +03:00
audio_devices.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
cache.hpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
canvas_utils.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
canvas.cpp client: rewrite surfaces cache 2011-09-26 12:17:57 +03:00
canvas.h client: rewrite surfaces cache 2011-09-26 12:17:57 +03:00
client_net_socket.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
client_net_socket.h Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
cmd_line_parser.cpp client: s/reqired/required in CmdLineParser 2011-07-21 15:09:27 +03:00
cmd_line_parser.h client: s/reqired/required in CmdLineParser 2011-07-21 15:09:27 +03:00
common.h client/windows: init PACKAGE_VERSION 2011-05-24 12:29:13 +03:00
controller.cpp client controller/foreign_menu: use memmove instead of memcpy in readers 2011-12-21 12:58:07 +02:00
controller.h controller: Make menu text utf-8 2010-10-25 11:36:35 +02:00
cursor_channel.cpp Make cursor data @as_ptr to avoid copying data 2010-06-18 20:27:32 +02:00
cursor_channel.h Make cursor data @as_ptr to avoid copying data 2010-06-18 20:27:32 +02:00
cursor.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
cursor.h Make all message structs internal to spice 2010-06-18 20:27:32 +02:00
debug.h Replace log4cpp with custom log function 2010-06-28 21:54:53 +02:00
demarshallers.h Generate marshaller/demarshallers for old protocol 2010-06-22 17:34:39 +02:00
display_channel.cpp client: display channel - destroy all surfaces on disconnect 2011-09-26 12:17:59 +03:00
display_channel.h client: display channel - destroy all surfaces on disconnect 2011-09-26 12:17:59 +03:00
event_sources.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
foreign_menu.cpp client: foreign-menu: pass "active" param when creating a ForeignMenu (#769020) 2011-12-21 13:05:12 +02:00
foreign_menu.h client: foreign-menu: pass "active" param when creating a ForeignMenu (#769020) 2011-12-21 13:05:12 +02:00
gdi_canvas.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
gl_canvas.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
glc.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
glz_decode_tmpl.c Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
glz_decoded_image.h Fix spelling errors in comments and strings 2010-05-21 10:51:28 +02:00
glz_decoder_config.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
glz_decoder_window.cpp spicec: Do not try to do accounting of pci memory 2010-10-09 22:27:53 +02:00
glz_decoder_window.h spicec: Do not try to do accounting of pci memory 2010-10-09 22:27:53 +02:00
glz_decoder.cpp client/glz_decoder.cpp: gcc 4.6.0 unused fixes 2011-01-27 12:48:44 +02:00
glz_decoder.h Move in spice/draw.h from spice-protocol to common/ 2010-07-08 13:56:01 +02:00
hot_keys.cpp client: gcc 4.6.0: two more unused variable fixes 2011-01-27 12:48:53 +02:00
hot_keys.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
icon.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
inputs_channel.cpp Fix keyb modifiers not syncing from client to client os (rhbz#679467) 2011-03-01 19:40:36 +02:00
inputs_channel.h client inputs: stop blinking keyboard when out of focus 2011-01-17 20:29:33 +02:00
inputs_handler.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
jpeg_decoder.cpp JPEG support: introducing jpeg encoding for spice bitmaps 2010-06-09 11:40:25 +02:00
jpeg_decoder.h add eol after #ifdef in jpeg_encoder.h for n900 scratchbox compiler 2010-07-29 11:10:41 +03:00
lines.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
lz.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
Makefile.am client: use silent generation rules in Makefile.am 2011-07-21 15:09:27 +03:00
marshaller.cpp Generate and link marshallers into client 2010-06-18 20:27:32 +02:00
marshallers.h Fix build error due to member "SpiceMsgEmpty" same name as type 2010-06-28 12:45:07 +02:00
mem.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
menu.cpp spicec: add menu id & find_sub() 2010-10-17 11:44:13 +02:00
menu.h spicec: add menu id & find_sub() 2010-10-17 11:44:13 +02:00
mjpeg_decoder.cpp client: Include config.h from common.h 2010-09-29 13:26:21 +02:00
mjpeg_decoder.h Swap red and blue when decoding 0.4 mjpeg streams 2010-07-20 11:45:37 +02:00
monitor.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
monitor.h Fix inclusion of common files, no need for common/ part 2010-07-08 15:44:15 +02:00
pixels_source.h Fix inclusion of common files, no need for common/ part 2010-07-08 15:44:15 +02:00
pixman_utils.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
platform.h spicec: Move setting of clipboard_owner to guest to platform code 2010-10-06 19:17:08 +02:00
playback_channel.cpp client: playback/record channels: implement on_disconnect 2011-09-26 12:17:59 +03:00
process_loop.cpp spicec: add ProcessLoop::on_start_running() 2010-10-17 11:45:50 +02:00
process_loop.h spicec: add ProcessLoop::on_start_running() 2010-10-17 11:45:50 +02:00
quic.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
read_write_mutex.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
record_channel.cpp client: playback/record channels: implement on_disconnect 2011-09-26 12:17:59 +03:00
red_channel.cpp client: support semi-seamless migration between spice servers with different protocols. 2011-09-26 12:18:00 +03:00
red_channel.h client: support semi-seamless migration between spice servers with different protocols. 2011-09-26 12:18:00 +03:00
red_client.cpp client: support semi-seamless migration between spice servers with different protocols. 2011-09-26 12:18:00 +03:00
red_client.h client: support semi-seamless migration between spice servers with different protocols. 2011-09-26 12:18:00 +03:00
red_drawable.h Add helper to compare RedDrawable::Formats for copy compabible 2010-04-23 16:36:35 +02:00
red_gdi_canvas.cpp client: rewrite surfaces cache 2011-09-26 12:17:57 +03:00
red_gdi_canvas.h client: rewrite surfaces cache 2011-09-26 12:17:57 +03:00
red_gl_canvas.cpp client: rewrite surfaces cache 2011-09-26 12:17:57 +03:00
red_gl_canvas.h client: rewrite surfaces cache 2011-09-26 12:17:57 +03:00
red_key.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
red_peer.cpp client: RedPeer::HostAuthOptions::set_cert_subject 2011-09-26 12:17:58 +03:00
red_peer.h client: RedPeer::HostAuthOptions::set_cert_subject 2011-09-26 12:17:58 +03:00
red_pixmap_gdi.h Remove all mentions of "cairo" from the code 2010-05-03 12:38:02 +02:00
red_pixmap_gl.h Make client canvas and pixmaps handle more formats and simplify 2010-04-23 16:36:35 +02:00
red_pixmap_sw.h Remove all mentions of "cairo" from the code 2010-05-03 12:38:02 +02:00
red_pixmap.h Add RedDrawable::Format get_format() 2010-04-23 16:36:35 +02:00
red_sw_canvas.cpp client: rewrite surfaces cache 2011-09-26 12:17:57 +03:00
red_sw_canvas.h client: rewrite surfaces cache 2011-09-26 12:17:57 +03:00
red_types.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
red_window.h client: menu: make RedWindow::set_menu() return an error-code (#758260) 2011-12-21 13:04:01 +02:00
region.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
rop3.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
screen_layer.cpp Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
screen_layer.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
screen.cpp client: RedScreen::RedScreen: fix initialization order of _menu_needs_update 2011-12-22 11:43:39 +02:00
screen.h client: update menu if needed when exiting full-screen mode (#758260) 2011-12-21 13:05:04 +02:00
shared_cache.hpp support for lossy images in the pixmap cache and fill bits 2010-06-09 11:41:01 +02:00
smartcard_channel.cpp fix make distcheck 2011-07-22 16:24:04 +03:00
smartcard_channel.h add missing "LGPLv2.1 or later" header to source files 2011-07-21 15:09:28 +03:00
sw_canvas.cpp Remove all mentions of "cairo" from the code 2010-05-03 12:38:02 +02:00
threads.cpp client: Fall back to gettimeofday if clock_gettime not found 2010-09-29 13:35:18 +02:00
threads.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
tunnel_channel.cpp codegen: Various cleanups 2010-07-19 16:28:22 +02:00
tunnel_channel.h Relicense everything from GPL to LGPL 2.1+ 2010-04-13 22:22:15 +02:00
utils.cpp Remove no longer used wstring_printf functions 2010-10-21 13:22:01 +02:00
utils.h Remove no longer used wstring_printf functions 2010-10-21 13:22:01 +02:00
zlib_decoder.cpp add missing "LGPLv2.1 or later" header to source files 2011-07-21 15:09:28 +03:00
zlib_decoder.h applying zlib compression over glz on WAN connection 2010-06-21 15:05:37 +02:00