RE: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing (RDP)

2002-09-10 Thread Jean-Claude Gervais

OK, this is weird:

Running with the default drawing engine -

If I start XWin locally (and then run fluxbox) in -nodecoration mode on the
Windows XP machine, whose screen resolution is 1024x768@32bpp and go to a
Windows 2000 machine whose screen resolution is 800x600@32bpp and run RDP
client to connect back to the XP box (RDP@MaxRes24bpp), I get the Cygwin
screen, but it looks really gross and pixilated... Also the extent of the X
screen seems to go beyond the RDP client's borders, and RDP does not permit
scrolling the remote desktop Strange...

I can disconnect RDP, reconnect RDP, and things don't get better or any
worse...

2nd test.

I start XWin (fullscreen) in query mode and connect it to a machine running
Redhat 7.3.

If I go to the Windows 2000 machine and connect to XP, I get XWin's Redhat
view, but it looks psychedelic. If go back to the Windows XP box and take
back control, I cannot see XWin's output anymore. Instead of a big white
square, I get nothing at all, although from what I can tell, I am still in
control of the Redhat machine.

If I close XWin, go back to the Windows 2000 machine, connect to XP with
RDP and start Xwin (query mode), then I get Redhat's login screen and
everything is beautiful. I can log in, close the RDP connection to XP,
reconnect to XP with RDP, and everything is still hunky-dory. If I go back
to the XP machine and retake control by its console, the XWin window is
minimized and if I restore it, it is transparent like the test before and
will not draw anything even if I am still remotely controlling the Redhat
computer. If I then go back to the windows 2000 machine and reconnect to XP
with RDP, everything is perfect. XWin draws the Redhat view perfectly.

What seems to be the problem here is that the XP machine and the Windows
2000 machine are running at different geometries. XP is 1024x768 and Windows
2000 is running 800x600. It seems like XWin cannot deal with a dynamically
changing display size. This is probably a limitation in X, I would bet. So
as long as the console manipulating XWin has the same geometry as the one
that was in use when XWin was started, XWin is fine.

Now to run the same test with XWin -engine 1

If I start XWin locally (and then run fluxbox) in -nodecoration mode on the
Windows XP machine, whose screen resolution is 1024x768@32bpp and go to a
Windows 2000 machine whose screen resolution is 800x600@32bpp and run RDP
client to connect back to the XP box (RDP@MaxRes24bpp), I get the Cygwin
screen, and it looks perfect. The extent of the X screen still seems to go
beyond the RDP client's borders, and RDP still does not permit scrolling the
remote desktop.

I can disconnect RDP, reconnect RDP, and Xwin is unaffected and still draws
perfectly.

2nd test.

I start XWin (fullscreen) in query mode and connect it to a machine running
Redhat 7.3.

If I go to the Windows 2000 machine and connect to XP, I get XWin's Redhat
view, there is a slight dithering effect apparent on the desktop wallpaper,
maybe due to the view being converted from 32bpp to 24bpp by RDP. Dithering
aside, visually, everything is fine, except for the fact that I cannot see
the whole XWin window. If go back to the Windows XP box and take back
control, I can still see XWin's output and control the Redhat machine.
XWin's colors are fine, but XWin's window has gone from being fullscreen to
being about 800x600 and the outer edges of the Redhat screen are now clipped
out and lost. Even if I use taskmanager to send a MAXIMIZE command to XWin,
there is no effect; I cannot recover the lost display area.

If I close XWin, go back to the Windows 2000 machine, connect to XP with
RDP and start Xwin (query mode), then I get Redhat's login screen and
everything is beautiful. I can log in, close the RDP connection to XP,
reconnect to XP with RDP, and everything is still hunky-dory. If I go back
to the XP machine and retake control by its console, the XWin window is no
longer fullscreen but it is still displaying perfectly and I can still
remotely control the Redhat computer. If I then go back to the windows 2000
machine and reconnect to XP with RDP, everything is perfect. XWin is back to
being fullscreen (on the smaller 800x600 display) and still draws the Redhat
view perfectly. Oddly enough, there were NO dithering artifacts present
during this run...

Also, I seemed to notice that sometimes, the RDP client seemed to think
that the XWin window was busy and would send back the BUSY cursor whenever
the mouse was over XWin, but I didn't make a strict analysis of it, and its
late.

If there are any permutations you'd like me to try, let me know.

Jean-Claude



-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On
Behalf Of Harold L Hunt II
Sent: Monday, September 09, 2002 12:05 PM
To: [EMAIL PROTECTED]
Subject: Re: Bug report: Using Cygwin-Xfree through Remote

Re: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing(RDP)

2002-09-09 Thread Harold L Hunt II

Jean-Claude,

Repeat the entire scenario you described, but start XWin with the 
``-engine 1'' parameter, e.g.
XWin -engine 1

The default graphics engine on Windows 2000/XP will be DirectDraw 4.0; 
DirectDraw will probably have a problem with RDP --- I am surprised that 
it works at all.  The ``-engine 1'' parameter will tell XWin to use GDI 
DIBs (Device Independent Bitamps) and regular GDI BLTs (Bit-Block 
Transfers) as the graphics engine; GDI will be less prone to having a 
problem with RDP.

If RDP works with the GDI engine then I know exactly what to fix; if 
not, I will have to pump you for some more information.

Harold

Jean-Claude Gervais wrote:

This is complicated, so I'll try to be clear.

Let's say you have machine A, which is a Windows XP machine that has Cygwin
and Cygwin-XFree installed on it.
You use A to connect to B. B is a machine running Linux and X.
Everything so far works.
Then you use machine C (a machine running Windows 2000) to remote-control
machine A with Windows XP Remote Desktop Client (RDP).
Machine C can use machine A's Cygwin-XFree connection and view machine B. No
problem.
However, when machine C breaks its connection to machine A, machine A's
Cygwin-XFree will no longer display machine B. It will instead display a
white screen in Cygwin-XFree.
Although I am pretty sure that A is still connected and controlling B, it
can no longer see B's display.
It seems like Remote Desktop Client mucks-up Cygwin-XFree.

I hope that that was clear enough.

Thanks.


  





Re: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing (RDP)

2002-09-09 Thread Thomas Chadwick

Sounds similar to this problem I reported a while back...

http://www.cygwin.com/ml/cygwin-xfree/2002-06/msg00373.html

What's in /tmp/XWin.log?

From: Jean-Claude Gervais [EMAIL PROTECTED]
Reply-To: [EMAIL PROTECTED]
To: Cygwin-XFree [EMAIL PROTECTED]
Subject: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing 
(RDP)
Date: Mon, 09 Sep 2002 11:00:28 -0400

This is complicated, so I'll try to be clear.

Let's say you have machine A, which is a Windows XP machine that has Cygwin
and Cygwin-XFree installed on it.
You use A to connect to B. B is a machine running Linux and X.
Everything so far works.
Then you use machine C (a machine running Windows 2000) to remote-control
machine A with Windows XP Remote Desktop Client (RDP).
Machine C can use machine A's Cygwin-XFree connection and view machine B. 
No
problem.
However, when machine C breaks its connection to machine A, machine A's
Cygwin-XFree will no longer display machine B. It will instead display a
white screen in Cygwin-XFree.
Although I am pretty sure that A is still connected and controlling B, it
can no longer see B's display.
It seems like Remote Desktop Client mucks-up Cygwin-XFree.

I hope that that was clear enough.

Thanks.




_
Chat with friends online, try MSN Messenger: http://messenger.msn.com




Re: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing(RDP)

2002-09-09 Thread Harold L Hunt II

Thomas,

Yes, it is similar in that it is likely that some surface is being lost 
and we are not restoring it.  There were several places in the code 
where I made a decision not to look for lost surfaces because it did not 
seem that we could ever lose a surface at those points.  However, I 
think that in this case we might actually be losing the offscreen 
surface, as opposed to the usually lost primary surface, and there is no 
code in place to look for or restore a lost offscreen surface.  It 
wouldn't be hard to add such code for the DirectDraw engines.  Of 
course, we have to identify the problem first.

Harold

Thomas Chadwick wrote:

 Sounds similar to this problem I reported a while back...

 http://www.cygwin.com/ml/cygwin-xfree/2002-06/msg00373.html

 What's in /tmp/XWin.log?

 From: Jean-Claude Gervais [EMAIL PROTECTED]
 Reply-To: [EMAIL PROTECTED]
 To: Cygwin-XFree [EMAIL PROTECTED]
 Subject: Bug report: Using Cygwin-Xfree through Remote Desktop 
 Sharing (RDP)
 Date: Mon, 09 Sep 2002 11:00:28 -0400

 This is complicated, so I'll try to be clear.

 Let's say you have machine A, which is a Windows XP machine that has 
 Cygwin
 and Cygwin-XFree installed on it.
 You use A to connect to B. B is a machine running Linux and X.
 Everything so far works.
 Then you use machine C (a machine running Windows 2000) to 
 remote-control
 machine A with Windows XP Remote Desktop Client (RDP).
 Machine C can use machine A's Cygwin-XFree connection and view 
 machine B. No
 problem.
 However, when machine C breaks its connection to machine A, machine A's
 Cygwin-XFree will no longer display machine B. It will instead display a
 white screen in Cygwin-XFree.
 Although I am pretty sure that A is still connected and controlling 
 B, it
 can no longer see B's display.
 It seems like Remote Desktop Client mucks-up Cygwin-XFree.

 I hope that that was clear enough.

 Thanks.





 _
 Chat with friends online, try MSN Messenger: http://messenger.msn.com





RE: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing (RDP)

2002-09-09 Thread Jean-Claude Gervais

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]]On Behalf Of Thomas Chadwick
Sent: Monday, September 09, 2002 12:08 PM
To: [EMAIL PROTECTED]
Subject: Re: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing
(RDP)

Sounds similar to this problem I reported a while back...

http://www.cygwin.com/ml/cygwin-xfree/2002-06/msg00373.html

What's in /tmp/XWin.log?


This -

ddxProcessArgument - Initializing default screens
winInitializeDefaultScreens - w 1024 h 768
winInitializeDefaultScreens - Returning
winDetectSupportedEngines - Windows NT/2000/XP
winDetectSupportedEngines - DirectDraw installed
winDetectSupportedEngines - Allowing PrimaryDD
winDetectSupportedEngines - DirectDraw4 installed
winDetectSupportedEngines - Returning, supported engines 001f
winSetEngine - Using Shadow DirectDraw NonLocking
winAdjustVideoModeShadowDDNL - Using Windows display depth of 32 bits per
pixel
winAllocateFBShadowDDNL - Not changing video mode
winAllocateFBShadowDDNL - lPitch: 4096
winFinishScreenInitFB - Masks: 00ff ff00 00ff
winInitVisualsShadowDDNL - Masks 00ff ff00 00ff BPRGB 8 d 24 bpp
32
winCreateDefColormap - Deferring to fbCreateDefColormap ()
winScreenInit - returning
winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry:
1winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry: 2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2

 A lot of these deleted, but there were TONS of them.

winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry:
1winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry: 2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2

... More of these lines deleted ...

winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry:
1winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry: 2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2

... More of these lines deleted ...

winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry:
1winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry: 2winShadowUpdateDDNL -
IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2

And on and on...






From: Jean-Claude Gervais [EMAIL PROTECTED]
Reply-To: [EMAIL PROTECTED]
To: Cygwin-XFree [EMAIL PROTECTED]
Subject: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing
(RDP)
Date: Mon, 09 Sep 2002 11:00:28 -0400

This is complicated, so I'll try to be clear.

Let's say you have machine A, which is a Windows XP machine that has Cygwin
and Cygwin-XFree installed on it.
You use A to connect to B. B is a machine running Linux and X.
Everything so far works.
Then you use machine C (a machine running Windows 2000) to remote-control
machine A with Windows XP Remote Desktop Client (RDP).
Machine C can use machine A's Cygwin-XFree connection and view machine B.
No
problem.
However, when machine C breaks its connection to machine A, machine A's
Cygwin-XFree will no longer display machine B. It will instead display a
white screen in Cygwin-XFree.
Although I am pretty sure that A is still connected and controlling B, it
can no longer see B's display.
It seems like Remote Desktop Client mucks-up Cygwin-XFree.

I hope that that was clear enough.

Thanks.




_
Chat with friends online, try MSN Messenger: http://messenger.msn.com




Re: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing(RDP)

2002-09-09 Thread Harold L Hunt II

Jean-Claude,

How about with -engine 1?

Harold

Jean-Claude Gervais wrote:

-Original Message-
From: [EMAIL PROTECTED]


[mailto:[EMAIL PROTECTED]]On Behalf Of Thomas Chadwick
  

Sent: Monday, September 09, 2002 12:08 PM
To: [EMAIL PROTECTED]
Subject: Re: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing


(RDP)

  

Sounds similar to this problem I reported a while back...



  

http://www.cygwin.com/ml/cygwin-xfree/2002-06/msg00373.html



  

What's in /tmp/XWin.log?




This -

ddxProcessArgument - Initializing default screens
winInitializeDefaultScreens - w 1024 h 768
winInitializeDefaultScreens - Returning
winDetectSupportedEngines - Windows NT/2000/XP
winDetectSupportedEngines - DirectDraw installed
winDetectSupportedEngines - Allowing PrimaryDD
winDetectSupportedEngines - DirectDraw4 installed
winDetectSupportedEngines - Returning, supported engines 001f
winSetEngine - Using Shadow DirectDraw NonLocking
winAdjustVideoModeShadowDDNL - Using Windows display depth of 32 bits per
pixel
winAllocateFBShadowDDNL - Not changing video mode
winAllocateFBShadowDDNL - lPitch: 4096
winFinishScreenInitFB - Masks: 00ff ff00 00ff
winInitVisualsShadowDDNL - Masks 00ff ff00 00ff BPRGB 8 d 24 bpp
32
winCreateDefColormap - Deferring to fbCreateDefColormap ()
winScreenInit - returning
winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry:
1winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry: 2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2

 A lot of these deleted, but there were TONS of them.

winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry:
1winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry: 2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2

... More of these lines deleted ...

winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry:
1winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry: 2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2

... More of these lines deleted ...

winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry:
1winBltExposedRegionsShadowDDNL - IDirectDrawSurface4_Blt reported that the
primary surface was lost, trying to restore, retry: 2winShadowUpdateDDNL -
IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2
winShadowUpdateDDNL - IDirectDrawSurface4_Blt () failed: 887601c2

And on and on...






  

From: Jean-Claude Gervais [EMAIL PROTECTED]
Reply-To: [EMAIL PROTECTED]
To: Cygwin-XFree [EMAIL PROTECTED]
Subject: Bug report: Using Cygwin-Xfree through Remote Desktop Sharing
(RDP)
Date: Mon, 09 Sep 2002 11:00:28 -0400

This is complicated, so I'll try to be clear.

Let's say you have machine A, which is a Windows XP machine that has Cygwin
and Cygwin-XFree installed on it.
You use A to connect to B. B is a machine running Linux and X.
Everything so far works.
Then you use machine C (a machine running Windows 2000) to remote-control
machine A with Windows XP Remote Desktop Client (RDP).
Machine C can use machine A's Cygwin-XFree connection and view machine B.
No
problem.
However, when machine C breaks its connection to machine A, machine A's
Cygwin-XFree will no longer display machine B. It will instead display a
white screen in Cygwin-XFree.
Although I am pretty sure that A is still connected and controlling B, it
can no longer see B's display.
It seems like Remote Desktop Client mucks-up Cygwin-XFree.

I hope that that was clear enough.

Thanks.






_
Chat with friends online, try MSN Messenger: http://messenger.msn.com