CVS: rdesktop cliprdr.c,1.28,1.29 proto.h,1.89,1.90 xclip.c,1.34,1.35

Pierre Ossman <[email protected]> Mon, 27 Mar 2006 04:29:31 -0800
Newsgroups gmane.network.rdesktop.cvs
Message-ID <[email protected]>
Update of /cvsroot/rdesktop/rdesktop
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2619

Modified Files:
	cliprdr.c proto.h xclip.c 
Log Message:
Handle when server sends a failure back for a clipboard request.


Index: cliprdr.c
===================================================================
RCS file: /cvsroot/rdesktop/rdesktop/cliprdr.c,v
retrieving revision 1.28
retrieving revision 1.29
diff -C2 -d -r1.28 -r1.29
*** cliprdr.c	27 Mar 2006 09:20:23 -0000	1.28
--- cliprdr.c	27 Mar 2006 12:29:29 -0000	1.29
***************
*** 127,139 ****
  	if (status == CLIPRDR_ERROR)
  	{
! 		if (type == CLIPRDR_FORMAT_ACK)
  		{
! 			/* FIXME: We seem to get this when we send an announce while the server is
! 			   still processing a paste. Try sending another announce. */
! 			cliprdr_send_native_format_announce(last_formats, last_formats_length);
! 			return;
  		}
  
- 		DEBUG_CLIPBOARD(("CLIPRDR error (type=%d)\n", type));
  		return;
  	}
--- 127,145 ----
  	if (status == CLIPRDR_ERROR)
  	{
! 		switch (type)
  		{
! 			case CLIPRDR_FORMAT_ACK:
! 				/* FIXME: We seem to get this when we send an announce while the server is
! 				   still processing a paste. Try sending another announce. */
! 				cliprdr_send_native_format_announce(last_formats,
! 								    last_formats_length);
! 				break;
! 			case CLIPRDR_DATA_RESPONSE:
! 				ui_clip_request_failed();
! 				break;
! 			default:
! 				DEBUG_CLIPBOARD(("CLIPRDR error (type=%d)\n", type));
  		}
  
  		return;
  	}

Index: proto.h
===================================================================
RCS file: /cvsroot/rdesktop/rdesktop/proto.h,v
retrieving revision 1.89
retrieving revision 1.90
diff -C2 -d -r1.89 -r1.90
*** proto.h	27 Mar 2006 09:20:24 -0000	1.89
--- proto.h	27 Mar 2006 12:29:29 -0000	1.90
***************
*** 205,208 ****
--- 205,209 ----
  void ui_clip_format_announce(uint8 * data, uint32 length);
  void ui_clip_handle_data(uint8 * data, uint32 length);
+ void ui_clip_request_failed(void);
  void ui_clip_request_data(uint32 format);
  void ui_clip_sync(void);

Index: xclip.c
===================================================================
RCS file: /cvsroot/rdesktop/rdesktop/xclip.c,v
retrieving revision 1.34
retrieving revision 1.35
diff -C2 -d -r1.34 -r1.35
*** xclip.c	27 Mar 2006 11:31:10 -0000	1.34
--- xclip.c	27 Mar 2006 12:29:29 -0000	1.35
***************
*** 900,903 ****
--- 900,910 ----
  
  void
+ ui_clip_request_failed()
+ {
+ 	xclip_refuse_selection(&selection_request);
+ 	has_selection_request = False;
+ }
+ 
+ void
  ui_clip_request_data(uint32 format)
  {



-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642