poppler/Function.cc | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
New commits:
commit 56c924609223196c5c41b9e6d9102bc248bad947
Author: Albert Astals Cid <[EMAIL PROTECTED]>
Date: Sat Feb 9 12:26:06 2008 +0100
atan operator must yield a degrees result between 0 and 360
See testcase at http://bugs.kde.org/show_bug.cgi?id=157497
diff --git a/poppler/Function.cc b/poppler/Function.cc
index ff05650..9a9951a 100644
--- a/poppler/Function.cc
+++ b/poppler/Function.cc
@@ -1262,7 +1262,7 @@ void PostScriptFunction::resizeCode(int newSize) {
void PostScriptFunction::exec(PSStack *stack, int codePtr) {
int i1, i2;
- double r1, r2;
+ double r1, r2, result;
GBool b1, b2;
while (1) {
@@ -1307,7 +1307,9 @@ void PostScriptFunction::exec(PSStack *stack, int
codePtr) {
case psOpAtan:
r2 = stack->popNum();
r1 = stack->popNum();
- stack->pushReal(atan2(r1, r2));
+ result = atan2(r1, r2) * 180.0 / M_PI;
+ if (result < 0) result += 360.0;
+ stack->pushReal(result);
break;
case psOpBitshift:
i2 = stack->popInt();
_______________________________________________
poppler mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/poppler