diff mbox series

[PULL,4/9] hw/display/artist: Avoid drawing line when nothing to display

Message ID 20200218193929.11404-5-richard.henderson@linaro.org
State Accepted
Commit b0f6455feac97e41045ee394e11c24d92c370f6e
Headers show
Series target/hppa patch queue | expand

Commit Message

Richard Henderson Feb. 18, 2020, 7:39 p.m. UTC
From: Philippe Mathieu-Daudé <f4bug@amsat.org>


Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

Message-Id: <20200214001303.12873-5-f4bug@amsat.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

---
 hw/display/artist.c | 3 +++
 1 file changed, 3 insertions(+)

-- 
2.20.1

Comments

Sven Schnelle Feb. 29, 2020, 9:31 a.m. UTC | #1
On Tue, Feb 18, 2020 at 11:39:24AM -0800, Richard Henderson wrote:
> From: Philippe Mathieu-Daudé <f4bug@amsat.org>

> 

> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

> Message-Id: <20200214001303.12873-5-f4bug@amsat.org>

> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

> ---

>  hw/display/artist.c | 3 +++

>  1 file changed, 3 insertions(+)

> 

> diff --git a/hw/display/artist.c b/hw/display/artist.c

> index 97c811b35e..5492079116 100644

> --- a/hw/display/artist.c

> +++ b/hw/display/artist.c

> @@ -579,6 +579,9 @@ static void draw_line(ARTISTState *s, int x1, int y1, int x2, int y2,

>      } else {

>          dy = y1 - y2;

>      }

> +    if (!dx || !dy) {

> +        return;

> +    }

>  

>      c1 = false;

>      if (dy > dx) {

> -- 

> 2.20.1

> 

> 


I noticed that this change causes 1px wide lines to disappear. So i would propose
to revert that change.

Regards
Sven
Philippe Mathieu-Daudé March 2, 2020, 9:50 a.m. UTC | #2
On 2/29/20 10:31 AM, Sven Schnelle wrote:
> On Tue, Feb 18, 2020 at 11:39:24AM -0800, Richard Henderson wrote:

>> From: Philippe Mathieu-Daudé <f4bug@amsat.org>

>>

>> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>

>> Message-Id: <20200214001303.12873-5-f4bug@amsat.org>

>> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>

>> ---

>>   hw/display/artist.c | 3 +++

>>   1 file changed, 3 insertions(+)

>>

>> diff --git a/hw/display/artist.c b/hw/display/artist.c

>> index 97c811b35e..5492079116 100644

>> --- a/hw/display/artist.c

>> +++ b/hw/display/artist.c

>> @@ -579,6 +579,9 @@ static void draw_line(ARTISTState *s, int x1, int y1, int x2, int y2,

>>       } else {

>>           dy = y1 - y2;

>>       }

>> +    if (!dx || !dy) {

>> +        return;

>> +    }

>>   

>>       c1 = false;

>>       if (dy > dx) {

>> -- 

>> 2.20.1

>>

>>

> 

> I noticed that this change causes 1px wide lines to disappear. So i would propose

> to revert that change.


Maybe "if (!dx && !dy) { return; }"?

> 

> Regards

> Sven

>
diff mbox series

Patch

diff --git a/hw/display/artist.c b/hw/display/artist.c
index 97c811b35e..5492079116 100644
--- a/hw/display/artist.c
+++ b/hw/display/artist.c
@@ -579,6 +579,9 @@  static void draw_line(ARTISTState *s, int x1, int y1, int x2, int y2,
     } else {
         dy = y1 - y2;
     }
+    if (!dx || !dy) {
+        return;
+    }
 
     c1 = false;
     if (dy > dx) {