parent
310b760ac2
commit
6aaddd1cf8
@ -0,0 +1,33 @@
|
||||
From fabf05464f137875a5ee74fcc21938161ecca077 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Fridrich=20=C5=A0trba?= <fridrich.strba@bluewin.ch>
|
||||
Date: Fri, 25 Jan 2013 12:25:36 +0100
|
||||
Subject: [PATCH] Handle correctly negative angles in ellipse
|
||||
|
||||
---
|
||||
src/lib/CDRParser.cpp | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/src/lib/CDRParser.cpp b/src/lib/CDRParser.cpp
|
||||
index c30d987..a76a0a6 100644
|
||||
--- a/src/lib/CDRParser.cpp
|
||||
+++ b/src/lib/CDRParser.cpp
|
||||
@@ -1186,6 +1186,16 @@ void libcdr::CDRParser::readEllipse(WPXInputStream *input)
|
||||
double rx = fabs(cx);
|
||||
double ry = fabs(cy);
|
||||
|
||||
+ while (angle1 < 0.0)
|
||||
+ angle1 += 2*M_PI;
|
||||
+ while (angle1 > 2*M_PI)
|
||||
+ angle1 -= 2*M_PI;
|
||||
+
|
||||
+ while (angle2 < 0.0)
|
||||
+ angle2 += 2*M_PI;
|
||||
+ while (angle2 > 2*M_PI)
|
||||
+ angle2 -= 2*M_PI;
|
||||
+
|
||||
if (angle1 != angle2)
|
||||
{
|
||||
if (angle2 < angle1)
|
||||
--
|
||||
1.7.11.7
|
||||
|
@ -1,35 +0,0 @@
|
||||
From 625677ba4ec9f0b0bb930fcefab5b7fc91b9bae8 Mon Sep 17 00:00:00 2001
|
||||
From: David Tardon <dtardon@redhat.com>
|
||||
Date: Thu, 13 Dec 2012 12:49:19 +0100
|
||||
Subject: [PATCH] coverity: do not let CDRDocument::parse throw
|
||||
|
||||
---
|
||||
src/lib/CDRDocument.cpp | 12 +++++++++++-
|
||||
1 file changed, 11 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/lib/CDRDocument.cpp b/src/lib/CDRDocument.cpp
|
||||
index 4a75389..2633954 100644
|
||||
--- a/src/lib/CDRDocument.cpp
|
||||
+++ b/src/lib/CDRDocument.cpp
|
||||
@@ -129,7 +129,17 @@ bool libcdr::CDRDocument::parse(::WPXInputStream *input, libwpg::WPGPaintInterfa
|
||||
{
|
||||
input->seek(0, WPX_SEEK_SET);
|
||||
bool retVal = false;
|
||||
- unsigned version = getCDRVersion(input);
|
||||
+ unsigned version = 0;
|
||||
+ try
|
||||
+ {
|
||||
+ version = getCDRVersion(input);
|
||||
+ }
|
||||
+ catch (libcdr::EndOfStreamException const&)
|
||||
+ {
|
||||
+ // This can only happen if isSupported() has not been called before
|
||||
+ return false;
|
||||
+ }
|
||||
+
|
||||
if (version)
|
||||
{
|
||||
input->seek(0, WPX_SEEK_SET);
|
||||
--
|
||||
1.8.0.1
|
||||
|
@ -1,35 +0,0 @@
|
||||
From c21b18b668b9efc0dc14257e1e43a85c1ccea807 Mon Sep 17 00:00:00 2001
|
||||
From: David Tardon <dtardon@redhat.com>
|
||||
Date: Thu, 13 Dec 2012 12:13:14 +0100
|
||||
Subject: [PATCH] coverity: do not let CMXDocument::isSupported throw
|
||||
|
||||
---
|
||||
src/lib/CMXDocument.cpp | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/src/lib/CMXDocument.cpp b/src/lib/CMXDocument.cpp
|
||||
index 35d361d..9845552 100644
|
||||
--- a/src/lib/CMXDocument.cpp
|
||||
+++ b/src/lib/CMXDocument.cpp
|
||||
@@ -45,6 +45,7 @@ Analyzes the content of an input stream to see if it can be parsed
|
||||
stream is a Corel Draw Document that libcdr is able to parse
|
||||
*/
|
||||
bool libcdr::CMXDocument::isSupported(WPXInputStream *input)
|
||||
+try
|
||||
{
|
||||
input->seek(0, WPX_SEEK_SET);
|
||||
unsigned riff = readU32(input);
|
||||
@@ -62,6 +63,10 @@ bool libcdr::CMXDocument::isSupported(WPXInputStream *input)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
+catch (...)
|
||||
+{
|
||||
+ return false;
|
||||
+}
|
||||
|
||||
/**
|
||||
Parses the input stream content. It will make callbacks to the functions provided by a
|
||||
--
|
||||
1.8.0.1
|
||||
|
Loading…
Reference in new issue