Update: UltraVNC 1.4.3.6 and UltraVNC SC 1.4.3.6: viewtopic.php?t=37885
Important: Please update to latest version before to create a reply, a topic or an issue: viewtopic.php?t=37864

Join us on social networks and share our announcements:
- Website: https://uvnc.com/
- GitHub: https://github.com/ultravnc
- Mastodon: https://mastodon.social/@ultravnc
- Facebook: https://www.facebook.com/ultravnc1
- X/Twitter: https://twitter.com/ultravnc1
- Reddit community: https://www.reddit.com/r/ultravnc
- OpenHub: https://openhub.net/p/ultravnc

Problem with too many full frame updates at start

Developers may discuss here
Post Reply
tobybuk
Posts: 1
Joined: 2015-03-06 21:02

Problem with too many full frame updates at start

Post by tobybuk »

Hi all

I have an issue which is with UltraVnc that seems inexplicable:

I have written a specialised RFB client and it works well except for the initial screen update - I seem to be getting two full screen updates as opposed to an initial full screen and then just differences.

My client does the following:

1. Opens the socket and Negotiates 8 Bit, no auth and the following encodings: CopyRect, Hextile, RRE, Raw (The client and server are on the same machine - loopback enabled.)
2. The client then sends a RfbRequestFrameBufferUpdate for the full screen with incremental = false
3. Server sends a full screen as expected.
3. The client then sends a RfbRequestFrameBufferUpdate for the full screen with incremental = true
4. The server sends another full screen - obviously unnecessary.
5. Further RfbRequestFrameBufferUpdate results in just the changed regions.

I've tried debugging the server but it looks like it will take a heavy time investment to get into what its really doing. If someone could shed some light on this I'd be very grateful.

I'd be happy to supply debug or PCAP traces.

Many thanks

Toby


Windows 7 SP1
NO mirror driver or hooks.
UltraVnc 1.2.0.5
stefano2015
Posts: 1
Joined: 2015-03-19 10:28

Re: Problem with too many full frame updates at start

Post by stefano2015 »

I had same problem. It is still unsolved.
User avatar
Rudi De Vos
Admin & Developer
Admin & Developer
Posts: 6831
Joined: 2004-04-23 10:21
Contact:

Re: Problem with too many full frame updates at start

Post by Rudi De Vos »

This wil be fixed in next release

vncdesktopthread.cpp

Code: Select all

//BOOL screensize_changed=false;
				BOOL monitor_changed=true;
				rfbServerInitMsg oldscrinfo;

Code: Select all

//BOOL screensize_changed=false;
				BOOL monitor_changed=false;
				BOOL initial_run = false;
				if (m_desktop->m_old_monitor == 6) initial_run = true;
				rfbServerInitMsg oldscrinfo;

Code: Select all

					m_desktop->m_buffer.BlackBack();


					}
					m_desktop->m_buffer.ClearCache();
					m_desktop->m_buffer.BlackBack();
					InvalidateRect(NULL,NULL,TRUE);

Code: Select all

m_desktop->m_buffer.BlackBack();


					}
					if (!initial_run)
					{
						initial_run = false;
						m_desktop->m_buffer.ClearCache();
						m_desktop->m_buffer.BlackBack();
					}
					InvalidateRect(NULL,NULL,TRUE);
Post Reply