diff options
author | root <root@rshg054.dnsready.net> | 2011-08-09 23:14:31 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2011-08-09 23:14:31 +0000 |
commit | a306c2530354c1c02351c4cc02eefa53c8d23eac (patch) | |
tree | 85f473f0abb92a80a4a400a7c07eed79d83880bd /extra/xorg-server/randr-compare-all-the-bytes-in-rrpostpendingproperties.patch | |
parent | 5135b52f901206bbb365152084e82e92c120e0be (diff) |
Tue Aug 9 23:14:31 UTC 2011
Diffstat (limited to 'extra/xorg-server/randr-compare-all-the-bytes-in-rrpostpendingproperties.patch')
-rw-r--r-- | extra/xorg-server/randr-compare-all-the-bytes-in-rrpostpendingproperties.patch | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/extra/xorg-server/randr-compare-all-the-bytes-in-rrpostpendingproperties.patch b/extra/xorg-server/randr-compare-all-the-bytes-in-rrpostpendingproperties.patch new file mode 100644 index 000000000..36d28ded0 --- /dev/null +++ b/extra/xorg-server/randr-compare-all-the-bytes-in-rrpostpendingproperties.patch @@ -0,0 +1,36 @@ +From fa425363e3927e86d57f42c4b6e4995d26d6bd0c Mon Sep 17 00:00:00 2001 +From: Aaron Plattner <aplattner@nvidia.com> +Date: Fri, 29 Jul 2011 23:12:06 +0000 +Subject: randr: Compare all the bytes in RRPostPendingProperties + +RRPostPendingProperties tries to compare the pending and current +property values to decide whether they're actually changing. However, +it does this using a memcmp that passes in pending_value->size as the +number of bytes. This is actually the number of elements, where each +element is (pending_value->format / 8) bytes long. This causes the +pending value to not be propagated if the first pending_value->size +bytes are the same and only the end of it is changing. + +Fix this by computing the total number of bytes to compare in the +memcmp. + +Signed-off-by: Aaron Plattner <aplattner@nvidia.com> +Reviewed-by: Keith Packard <keithp@keithp.com> +Signed-off-by: Keith Packard <keithp@keithp.com> +(cherry picked from commit 08dfff92e8d0c2b1726634392c147f6634d1706d) +--- +diff --git a/randr/rrproperty.c b/randr/rrproperty.c +index ba04c16..61e7bb4 100644 +--- a/randr/rrproperty.c ++++ b/randr/rrproperty.c +@@ -283,7 +283,7 @@ RRPostPendingProperties (RROutputPtr output) + pending_value->format == current_value->format && + pending_value->size == current_value->size && + !memcmp (pending_value->data, current_value->data, +- pending_value->size)) ++ pending_value->size * (pending_value->format / 8))) + continue; + + if (RRChangeOutputProperty (output, property->propertyName, +-- +cgit v0.8.3-6-g21f6 |