On 3/2/12 3:32 AM, Arthur Huillet wrote:
> --- a/common/rfb/tightEncode.h
> +++ b/common/rfb/tightEncode.h
> @@ -248,23 +248,28 @@ void TIGHT_ENCODE (const Rect& r, rdr::OutStream *os, 
> bool forceSolid)
>  #if (BPP != 8)
>      if (jpegQuality != -1) {
>        encodeJpegRect(r, os);
> +      lossy_tracker.add_changed(Region(r));
>        break;
>      }
>  #endif
>      ENCODE_FULLCOLOR_RECT(pixels, r, os);
> +    lossy_tracker.subtract(Region(r));
>      break;
>    case 1:
>      // Solid rectangle
>      ENCODE_SOLID_RECT(pixels, os);
> +    lossy_tracker.subtract(Region(r));
>      break;
>    case 2:
>      // Two-color rectangle
>      ENCODE_MONO_RECT(pixels, r, os);
> +    lossy_tracker.subtract(Region(r));
>      break;
>  #if (BPP != 8)
>    default:
>      // Up to 256 different colors
>      ENCODE_INDEXED_RECT(pixels, r, os);
> +    lossy_tracker.subtract(Region(r));
>  #endif
>    }
>  }

Why do you have to subtract the non-JPEG regions here?  AFAICT, the
subrectangles within a given FBU are unique, but please correct me if
I'm wrong about that.

------------------------------------------------------------------------------
Virtualization & Cloud Management Using Capacity Planning
Cloud computing makes use of virtualization - but cloud computing 
also focuses on allowing computing to be delivered as a service.
http://www.accelacomm.com/jaw/sfnl/114/51521223/
_______________________________________________
Tigervnc-devel mailing list
Tigervnc-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tigervnc-devel

Reply via email to