summaryrefslogtreecommitdiff
path: root/csrc/drawing.c
diff options
context:
space:
mode:
authorIru Cai <mytbk920423@gmail.com>2018-09-07 14:23:59 +0800
committerIru Cai <mytbk920423@gmail.com>2018-09-07 14:23:59 +0800
commit40d6a3f9e43b1645d50e6b9478f740516fe2248f (patch)
tree0307ed43a436c33573b91215534a1a6809616882 /csrc/drawing.c
parenteb25162b231d83d47a86098c60028a598880bbcb (diff)
downloadrich4-40d6a3f9e43b1645d50e6b9478f740516fe2248f.tar.xz
fcn_00455b3a fixes
Diffstat (limited to 'csrc/drawing.c')
-rw-r--r--csrc/drawing.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/csrc/drawing.c b/csrc/drawing.c
index 96cc871..f09de62 100644
--- a/csrc/drawing.c
+++ b/csrc/drawing.c
@@ -6,9 +6,9 @@ struct st st_46caec;
void fcn_00455b3a(int a1, int a2, uint16_t *a3, struct st *a4, int a5, int a6)
{
- int ret = 1;
- a5 -= (int16_t)a4->f4;
- a6 -= (int16_t)a4->f6;
+ int ret = 1;
+ a5 -= (int16_t)a4->f4;
+ a6 -= (int16_t)a4->f6;
int t1, t2, t3, t4;
if (a5 < a1 && a5 + (uint16_t)a4->f0 > 0 && a6 < a2 && a6 + (uint16_t)a4->f2 > 0) {
@@ -23,7 +23,7 @@ void fcn_00455b3a(int a1, int a2, uint16_t *a3, struct st *a4, int a5, int a6)
a5 = 0;
} else {
int t = t3 + a5 - a1;
- if (a5 > t) {
+ if (t > 0) {
t3 = a1 - a5;
}
}
@@ -34,7 +34,7 @@ void fcn_00455b3a(int a1, int a2, uint16_t *a3, struct st *a4, int a5, int a6)
a6 = 0;
} else {
int t = t4 + a6 - a2;
- if (a6 > t) {
+ if (t > 0) {
t4 = a2 - a6;
}
}
@@ -42,6 +42,7 @@ void fcn_00455b3a(int a1, int a2, uint16_t *a3, struct st *a4, int a5, int a6)
uint16_t *edi = &a3[a6 * a1 + a5];
size_t r1 = (a4->f0 - t3);
size_t r2 = (a1 - t3);
+ ret = t4;
if (t3 != 0) {
do {