Julien Nabet | 16 Jun 2012 15:07

.: libvisio/libvisio-0.0.17-fdo48601_part1.patch libvisio/makefile.mk

 libvisio/libvisio-0.0.17-fdo48601_part1.patch |   26 ++++++++++++++++++++++++++
 libvisio/makefile.mk                          |    1 +
 2 files changed, 27 insertions(+)

New commits:
commit 74b5e0d5e5b57755553fde6c77712a87025f1667
Author: Julien Nabet <serval2412 <at> yahoo.fr>
Date:   Sat Jun 16 15:01:23 2012 +0200

    Related: fdo#48601 FILEOPEN: Open Visio's file with bitmap's blocks

    This fdo contains 2 files with which I had a different crash for each of them.
    This patch fixes one of the 2 crashes.

    Change-Id: Ic67cad4de4b66e913debe95efc04db3ae6fbf781

diff --git a/libvisio/libvisio-0.0.17-fdo48601_part1.patch b/libvisio/libvisio-0.0.17-fdo48601_part1.patch
new file mode 100644
index 0000000..c73af00
--- /dev/null
+++ b/libvisio/libvisio-0.0.17-fdo48601_part1.patch
 <at>  <at>  -0,0 +1,26  <at>  <at> 
+--- misc/build/libvisio-0.0.17/src/lib/VSDXContentCollector.cpp	2012-06-16
13:41:40.583153038 +0200
++++ misc/libvisio-0.0.17/src/lib/VSDXContentCollector.cpp	2012-06-16 13:44:16.311155881 +0200
+ <at>  <at>  -1131,14 +1131,16  <at>  <at> 
+     if (x <= m_pageWidth && x >= 0)
+       points[x] = y;
+ 
+-    xmove = points.begin()->first;
+-    ymove = points.begin()->second;
+-    for (std::map<double, double>::iterator iter = points.begin(); iter != points.end(); ++iter)
+-    {
+-      if (iter->first != xmove || iter->second != ymove)
++    if (!points.empty()) {
++      xmove = points.begin()->first;
++      ymove = points.begin()->second;
++      for (std::map<double, double>::iterator iter = points.begin(); iter != points.end(); ++iter)
+       {
+-        xline = iter->first;
+-        yline = iter->second;
++        if (iter->first != xmove || iter->second != ymove)
++        {
++          xline = iter->first;
++          yline = iter->second;
++        }
+       }
+     }
+   }
diff --git a/libvisio/makefile.mk b/libvisio/makefile.mk
index 305a32b..2855741 100644
--- a/libvisio/makefile.mk
+++ b/libvisio/makefile.mk
 <at>  <at>  -59,6 +59,7  <at>  <at>  TARFILE_MD5=90010e213dd25648e70f0cc12f8fed55

 PATCH_FILES=\
 	$(TARFILE_NAME)-fdo50988.patch \
+	$(TARFILE_NAME)-fdo48601_part1.patch \
 	$(TARFILE_NAME).patch

 BUILD_ACTION=dmake $(MFLAGS) $(CALLMACROS)

Gmane