Hello community, here is the log from the commit of package libmspub for openSUSE:Factory checked in at 2018-03-12 12:05:00 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libmspub (Old) and /work/SRC/openSUSE:Factory/.libmspub.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libmspub" Mon Mar 12 12:05:00 2018 rev:15 rq:583879 version:0.1.4 Changes: -------- --- /work/SRC/openSUSE:Factory/libmspub/libmspub.changes 2018-01-09 14:48:41.216478412 +0100 +++ /work/SRC/openSUSE:Factory/.libmspub.new/libmspub.changes 2018-03-12 12:05:00.841878930 +0100 @@ -1,0 +2,8 @@ +Wed Mar 7 12:47:35 UTC 2018 - tchva...@suse.com + +- Version update to 0.1.4: + * Fix several problems found by oss-fuzz + * Fix regression in closing shape groups that caused missing shapes + on second and subsequent pages. (tdf#116018) + +------------------------------------------------------------------- Old: ---- libmspub-0.1.3.tar.xz New: ---- libmspub-0.1.4.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libmspub.spec ++++++ --- /var/tmp/diff_new_pack.1tcfhp/_old 2018-03-12 12:05:02.825807827 +0100 +++ /var/tmp/diff_new_pack.1tcfhp/_new 2018-03-12 12:05:02.829807684 +0100 @@ -18,7 +18,7 @@ %define libname libmspub-0_1-1 Name: libmspub -Version: 0.1.3 +Version: 0.1.4 Release: 0 Summary: Microsoft Publisher file format parser library License: MPL-2.0 @@ -99,7 +99,8 @@ %postun -n %{libname} -p /sbin/ldconfig %files -n %{libname} -%doc AUTHORS COPYING.* +%doc AUTHORS +%license COPYING.* %{_libdir}/*.so.* %files devel @@ -112,7 +113,6 @@ %doc %{_docdir}/%{name}/html %files tools -%doc AUTHORS COPYING.* %{_bindir}/* %changelog ++++++ libmspub-0.1.3.tar.xz -> libmspub-0.1.4.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/ChangeLog new/libmspub-0.1.4/ChangeLog --- old/libmspub-0.1.3/ChangeLog 2017-12-31 14:14:57.000000000 +0100 +++ new/libmspub-0.1.4/ChangeLog 2018-02-28 14:06:01.000000000 +0100 @@ -1,3 +1,87 @@ +2018-02-28 David Tardon <dtar...@redhat.com> [a374b9c963deeb485b80c8d534ad80b41e059cc6] + + prepare for a release + + Change-Id: I844da04860cf29c8d947395e675eef6f045b7409 + +2018-02-28 David Tardon <dtar...@redhat.com> [a2e4fb779cff37a2cfc6ddf747d7715c545578a6] + + tdf#116018 close shape group correctly + + Regression since commit bbe7f806b95ef427153ba18bff80e674b1704ae5 . + + Change-Id: Ib6d3f58373c7cb0e1ba7a7a720187cc68d9bc7b1 + +2018-02-20 David Tardon <dtar...@redhat.com> [9f49ab526414275f711c6669f6e39f737654bdac] + + ofz#6410 avoid signed integer overflow + + Change-Id: Ife08fdb17a58e6fd32a967a1a553c1d346689209 + +2018-02-15 David Tardon <dtar...@redhat.com> [2be062bd914c000899a03822664f9a523d435f3e] + + drop unnecessary variables + + Change-Id: If3d15512433406399716e458c666b81dc7aa41ef + +2018-02-15 David Tardon <dtar...@redhat.com> [a500976df2557c4c4c5f90bda0a401319573ceff] + + ofz#6339 avoid signed int overflow + + Change-Id: I6459deafb6d0dabc47e6e446457165b6814f348e + +2018-02-02 David Tardon <dtar...@redhat.com> [a20be18c6101168da5779ec0faeb045c285bab4c] + + iwyu: prune includes + + Change-Id: I9e8af1510a54668526bf739e30cb98eb4a3b3559 + +2018-01-20 David Tardon <dtar...@redhat.com> [875a2afea73aaea306fb757dc2533c26686206f6] + + ofz#5515 avoid signed integer overflow + + Change-Id: I80207d028bd5348e4f53b8888f7deec1eb48e6c2 + +2018-01-19 David Tardon <dtar...@redhat.com> [5cd502a195c713c1d64efcaa5ebc82cd422a5f5e] + + ofz#5224 avoid signed integer overflow + + Change-Id: I0110730e2d3e8bc329b0599554fa4017d7a214f0 + +2018-01-09 David Tardon <dtar...@redhat.com> [796f5e1f01b1a654964dfd8551cb1eaaa3a51287] + + ofz#4951 do not shift signed value + + Change-Id: I6c2a48589fe6a585ce37c57a59d06c7e5ef31b25 + +2018-01-09 David Tardon <dtar...@redhat.com> [035c728fc49b86c68bf8c8db9a13be1590c04b1a] + + ofz#4916 fix division by 0 + + Change-Id: I629399bb0790b27e71bea9cd89485ecd471830d8 + +2018-01-09 David Tardon <dtar...@redhat.com> [ab9002c37b6be82e572c354281de9c7d5e636a61] + + avoid undef. behavior casting arbitrary int to enum + + Just pass the values around as unsigned ints and use the enums as + constant sets. The previous code doesn't add any extra type safety + anyway. + + Change-Id: I914e136136a97cbf411fad7e1bedbbb79a7c49d2 + +2018-01-09 David Tardon <dtar...@redhat.com> [9c252a30064a7968b8e548db46cfa8018d4876c1] + + ofz#4903 avoid division by 0 + + Change-Id: I6322d2093e3f4646a238f68ad9beff9a6a6448d0 + +2017-12-31 David Tardon <dtar...@redhat.com> [4c2c68c098865d96f2568cda9f22584f56d033ea] + + bump version + + Change-Id: Ia7d4fa9ba5aceb838626ed00b80bb3fbacd64a93 + 2017-12-30 David Tardon <dtar...@redhat.com> [7f990c439d981dc280faac3db4c9f5805250bc2d] cid#1427014 pointer to local outside scope diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/Makefile.in new/libmspub-0.1.4/Makefile.in --- old/libmspub-0.1.3/Makefile.in 2017-12-30 21:08:25.000000000 +0100 +++ new/libmspub-0.1.4/Makefile.in 2018-02-28 13:02:05.000000000 +0100 @@ -194,9 +194,8 @@ CSCOPE = cscope DIST_SUBDIRS = $(SUBDIRS) am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \ - $(srcdir)/libmspub.pc.in AUTHORS NEWS README TODO ar-lib \ - compile config.guess config.sub depcomp install-sh ltmain.sh \ - missing + $(srcdir)/libmspub.pc.in AUTHORS NEWS README ar-lib compile \ + config.guess config.sub depcomp install-sh ltmain.sh missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/NEWS new/libmspub-0.1.4/NEWS --- old/libmspub-0.1.3/NEWS 2017-12-30 18:25:11.000000000 +0100 +++ new/libmspub-0.1.4/NEWS 2018-02-28 13:48:03.000000000 +0100 @@ -1,3 +1,9 @@ +libmspub 0.1.4 + +- Fix several problems found by oss-fuzz. +- Fix regression in closing shape groups that caused missing shapes on + second and subsequent pages. (tdf#116018) + libmspub 0.1.3 - Workaround a build error on some 32-bit systems. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/TODO new/libmspub-0.1.4/TODO --- old/libmspub-0.1.3/TODO 2017-12-30 16:48:58.000000000 +0100 +++ new/libmspub-0.1.4/TODO 1970-01-01 01:00:00.000000000 +0100 @@ -1,3 +0,0 @@ -* Parse bullets -* Parse arrows -* Draw missing shapes diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/ar-lib new/libmspub-0.1.4/ar-lib --- old/libmspub-0.1.3/ar-lib 2012-12-13 18:11:11.000000000 +0100 +++ new/libmspub-0.1.4/ar-lib 2014-03-29 11:29:05.000000000 +0100 @@ -4,7 +4,7 @@ me=ar-lib scriptversion=2012-03-01.08; # UTC -# Copyright (C) 2010, 2012 Free Software Foundation, Inc. +# Copyright (C) 2010-2013 Free Software Foundation, Inc. # Written by Peter Rosin <p...@lysator.liu.se>. # # This program is free software; you can redistribute it and/or modify diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/compile new/libmspub-0.1.4/compile --- old/libmspub-0.1.3/compile 2017-12-28 15:40:44.000000000 +0100 +++ new/libmspub-0.1.4/compile 2017-03-30 15:13:15.000000000 +0200 @@ -1,9 +1,9 @@ #! /bin/sh # Wrapper for compilers which do not understand '-c -o'. -scriptversion=2016-01-11.22; # UTC +scriptversion=2012-10-14.11; # UTC -# Copyright (C) 1999-2017 Free Software Foundation, Inc. +# Copyright (C) 1999-2014 Free Software Foundation, Inc. # Written by Tom Tromey <tro...@cygnus.com>. # # This program is free software; you can redistribute it and/or modify @@ -255,8 +255,7 @@ echo "compile $scriptversion" exit $? ;; - cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ - icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) + cl | *[/\\]cl | cl.exe | *[/\\]cl.exe ) func_cl_wrapper "$@" # Doesn't return... ;; esac @@ -343,6 +342,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" +# time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/config.guess new/libmspub-0.1.4/config.guess --- old/libmspub-0.1.3/config.guess 2012-06-30 14:54:32.000000000 +0200 +++ new/libmspub-0.1.4/config.guess 2014-03-29 11:29:05.000000000 +0100 @@ -2,13 +2,13 @@ # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, -# 2011, 2012 Free Software Foundation, Inc. +# 2011, 2012, 2013 Free Software Foundation, Inc. -timestamp='2012-01-01' +timestamp='2012-12-29' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or +# the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but @@ -17,26 +17,22 @@ # General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -# 02110-1301, USA. +# along with this program; if not, see <http://www.gnu.org/licenses/>. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. - - -# Originally written by Per Bothner. Please send patches (context -# diff format) to <config-patc...@gnu.org> and include a ChangeLog -# entry. +# the same distribution terms that you use for the rest of that +# program. This Exception is an additional permission under section 7 +# of the GNU General Public License, version 3 ("GPLv3"). # -# This script attempts to guess a canonical system name similar to -# config.sub. If it succeeds, it prints the system name on stdout, and -# exits with 0. Otherwise, it exits with 1. +# Originally written by Per Bothner. # # You can get the latest version of this script from: # http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD +# +# Please send patches with a ChangeLog entry to config-patc...@gnu.org. + me=`echo "$0" | sed -e 's,.*/,,'` @@ -57,8 +53,8 @@ Originally written by Per Bothner. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 -Free Software Foundation, Inc. +2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, +2012, 2013 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -202,6 +198,10 @@ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "${machine}-${os}${release}" exit ;; + *:Bitrig:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} + exit ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} @@ -304,7 +304,7 @@ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit ;; - arm:riscos:*:*|arm:RISCOS:*:*) + arm*:riscos:*:*|arm*:RISCOS:*:*) echo arm-unknown-riscos exit ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) @@ -803,6 +803,9 @@ i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit ;; + *:MINGW64*:*) + echo ${UNAME_MACHINE}-pc-mingw64 + exit ;; *:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; @@ -863,6 +866,13 @@ i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit ;; + aarch64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; + aarch64_be:Linux:*:*) + UNAME_MACHINE=aarch64_be + echo ${UNAME_MACHINE}-unknown-linux-gnu + exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in EV5) UNAME_MACHINE=alphaev5 ;; @@ -1196,6 +1206,9 @@ BePC:Haiku:*:*) # Haiku running on Intel PC compatible. echo i586-pc-haiku exit ;; + x86_64:Haiku:*:*) + echo x86_64-unknown-haiku + exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; @@ -1251,7 +1264,7 @@ NEO-?:NONSTOP_KERNEL:*:*) echo neo-tandem-nsk${UNAME_RELEASE} exit ;; - NSE-?:NONSTOP_KERNEL:*:*) + NSE-*:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; NSR-?:NONSTOP_KERNEL:*:*) @@ -1320,11 +1333,11 @@ i*86:AROS:*:*) echo ${UNAME_MACHINE}-pc-aros exit ;; + x86_64:VMkernel:*:*) + echo ${UNAME_MACHINE}-unknown-esx + exit ;; esac -#echo '(No uname command or uname output not recognized.)' 1>&2 -#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 - eval $set_cc_for_build cat >$dummy.c <<EOF #ifdef _SEQUENT_ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/config.sub new/libmspub-0.1.4/config.sub --- old/libmspub-0.1.3/config.sub 2012-06-30 14:54:32.000000000 +0200 +++ new/libmspub-0.1.4/config.sub 2014-03-29 11:29:05.000000000 +0100 @@ -2,37 +2,32 @@ # Configuration validation subroutine script. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, -# 2011, 2012 Free Software Foundation, Inc. +# 2011, 2012, 2013 Free Software Foundation, Inc. -timestamp='2012-01-01' +timestamp='2012-12-29' -# This file is (in principle) common to ALL GNU software. -# The presence of a machine in this file suggests that SOME GNU software -# can handle that machine. It does not imply ALL GNU software can. -# -# This file is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2 of the License, or +# This file is free software; you can redistribute it and/or modify it +# under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or # (at your option) any later version. # -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. # # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA -# 02110-1301, USA. +# along with this program; if not, see <http://www.gnu.org/licenses/>. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under -# the same distribution terms that you use for the rest of that program. +# the same distribution terms that you use for the rest of that +# program. This Exception is an additional permission under section 7 +# of the GNU General Public License, version 3 ("GPLv3"). -# Please send patches to <config-patc...@gnu.org>. Submit a context -# diff and a properly formatted GNU ChangeLog entry. +# Please send patches with a ChangeLog entry to config-patc...@gnu.org. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. @@ -76,8 +71,8 @@ GNU config.sub ($timestamp) Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, -2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 -Free Software Foundation, Inc. +2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, +2012, 2013 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." @@ -125,13 +120,17 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ - linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ + linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ knetbsd*-gnu* | netbsd*-gnu* | \ kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; + android-linux) + os=-linux-android + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown + ;; *) basic_machine=`echo $1 | sed 's/-[^-]*$//'` if [ $basic_machine != $1 ] @@ -154,7 +153,7 @@ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ - -apple | -axis | -knuth | -cray | -microblaze) + -apple | -axis | -knuth | -cray | -microblaze*) os= basic_machine=$1 ;; @@ -223,6 +222,12 @@ -isc*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; + -lynx*178) + os=-lynxos178 + ;; + -lynx*5) + os=-lynxos5 + ;; -lynx*) os=-lynxos ;; @@ -247,11 +252,14 @@ # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ + | aarch64 | aarch64_be \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ - | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr | avr32 \ - | be32 | be64 \ + | arc \ + | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ + | avr | avr32 \ + | be32 | be64 \ | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ @@ -264,7 +272,7 @@ | le32 | le64 \ | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | mcore | mep | metag \ + | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ @@ -319,7 +327,7 @@ c6x) basic_machine=tic6x-unknown ;; - m6811 | m68hc11 | m6812 | m68hc12 | picochip) + m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | picochip) basic_machine=$basic_machine-unknown os=-none ;; @@ -332,7 +340,10 @@ strongarm | thumb | xscale) basic_machine=arm-unknown ;; - + xgate) + basic_machine=$basic_machine-unknown + os=-none + ;; xscaleeb) basic_machine=armeb-unknown ;; @@ -355,6 +366,7 @@ # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ + | aarch64-* | aarch64_be-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ @@ -376,7 +388,8 @@ | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* | metag-* | microblaze-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ + | microblaze-* | microblazeel-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ @@ -775,9 +788,13 @@ basic_machine=ns32k-utek os=-sysv ;; - microblaze) + microblaze*) basic_machine=microblaze-xilinx ;; + mingw64) + basic_machine=x86_64-pc + os=-mingw64 + ;; mingw32) basic_machine=i386-pc os=-mingw32 @@ -991,7 +1008,7 @@ ;; ppc64) basic_machine=powerpc64-unknown ;; - ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` + ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64le | powerpc64little | ppc64-le | powerpc64-little) basic_machine=powerpc64le-unknown @@ -1006,7 +1023,11 @@ basic_machine=i586-unknown os=-pw32 ;; - rdos) + rdos | rdos64) + basic_machine=x86_64-pc + os=-rdos + ;; + rdos32) basic_machine=i386-pc os=-rdos ;; @@ -1339,15 +1360,15 @@ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ - | -openbsd* | -solidbsd* \ + | -bitrig* | -openbsd* | -solidbsd* \ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ - | -mingw32* | -linux-gnu* | -linux-android* \ - | -linux-newlib* | -linux-uclibc* \ + | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ + | -linux-newlib* | -linux-musl* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ @@ -1530,6 +1551,9 @@ c4x-* | tic4x-*) os=-coff ;; + hexagon-*) + os=-elf + ;; tic54x-*) os=-coff ;; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/configure new/libmspub-0.1.4/configure --- old/libmspub-0.1.3/configure 2017-12-30 21:08:24.000000000 +0100 +++ new/libmspub-0.1.4/configure 2018-02-28 13:02:05.000000000 +0100 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for libmspub 0.1.3. +# Generated by GNU Autoconf 2.69 for libmspub 0.1.4. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -587,8 +587,8 @@ # Identity of this package. PACKAGE_NAME='libmspub' PACKAGE_TARNAME='libmspub' -PACKAGE_VERSION='0.1.3' -PACKAGE_STRING='libmspub 0.1.3' +PACKAGE_VERSION='0.1.4' +PACKAGE_STRING='libmspub 0.1.4' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1379,7 +1379,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libmspub 0.1.3 to adapt to many kinds of systems. +\`configure' configures libmspub 0.1.4 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1449,7 +1449,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libmspub 0.1.3:";; + short | recursive ) echo "Configuration of libmspub 0.1.4:";; esac cat <<\_ACEOF @@ -1591,7 +1591,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libmspub configure 0.1.3 +libmspub configure 0.1.4 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2021,7 +2021,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libmspub $as_me 0.1.3, which was +It was created by libmspub $as_me 0.1.4, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2887,7 +2887,7 @@ # Define the identity of the package. PACKAGE='libmspub' - VERSION='0.1.3' + VERSION='0.1.4' cat >>confdefs.h <<_ACEOF @@ -18949,9 +18949,9 @@ MSPUB_MINOR_VERSION=1 -MSPUB_MICRO_VERSION=3 +MSPUB_MICRO_VERSION=4 -MSPUB_VERSION=0.1.3 +MSPUB_VERSION=0.1.4 # AC_SUBST(LT_RELEASE, [libmspub_version_major.libmspub_version_minor]) LT_CURRENT=`expr 100 '*' 0 + 1` @@ -18959,7 +18959,7 @@ LT_AGE=0 # LT_AGE=libmspub_version_minor -LT_REVISION=3 +LT_REVISION=4 @@ -19928,7 +19928,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libmspub $as_me 0.1.3, which was +This file was extended by libmspub $as_me 0.1.4, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -19994,7 +19994,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -libmspub config.status 0.1.3 +libmspub config.status 0.1.4 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/configure.ac new/libmspub-0.1.4/configure.ac --- old/libmspub-0.1.3/configure.ac 2017-12-30 16:51:17.000000000 +0100 +++ new/libmspub-0.1.4/configure.ac 2018-02-28 12:54:49.000000000 +0100 @@ -7,7 +7,7 @@ # ==================== m4_define([libmspub_version_major],[0]) m4_define([libmspub_version_minor],[1]) -m4_define([libmspub_version_micro],[3]) +m4_define([libmspub_version_micro],[4]) m4_define([libmspub_version],[libmspub_version_major.libmspub_version_minor.libmspub_version_micro]) # ============= diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/depcomp new/libmspub-0.1.4/depcomp --- old/libmspub-0.1.3/depcomp 2017-12-28 15:40:46.000000000 +0100 +++ new/libmspub-0.1.4/depcomp 2017-03-30 15:13:15.000000000 +0200 @@ -1,9 +1,9 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2016-01-11.22; # UTC +scriptversion=2013-05-30.07; # UTC -# Copyright (C) 1999-2017 Free Software Foundation, Inc. +# Copyright (C) 1999-2014 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -786,6 +786,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" +# time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/install-sh new/libmspub-0.1.4/install-sh --- old/libmspub-0.1.3/install-sh 2012-06-30 14:54:32.000000000 +0200 +++ new/libmspub-0.1.4/install-sh 2014-03-29 11:29:05.000000000 +0100 @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2011-01-19.21; # UTC +scriptversion=2011-11-20.07; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -35,7 +35,7 @@ # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent -# `make' implicit rules from creating a file called install from it +# 'make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written @@ -156,7 +156,7 @@ -s) stripcmd=$stripprog;; -t) dst_arg=$2 - # Protect names problematic for `test' and other utilities. + # Protect names problematic for 'test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac @@ -190,7 +190,7 @@ fi shift # arg dst_arg=$arg - # Protect names problematic for `test' and other utilities. + # Protect names problematic for 'test' and other utilities. case $dst_arg in -* | [=\(\)!]) dst_arg=./$dst_arg;; esac @@ -202,7 +202,7 @@ echo "$0: no input file specified." >&2 exit 1 fi - # It's OK to call `install-sh -d' without argument. + # It's OK to call 'install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi @@ -240,7 +240,7 @@ for src do - # Protect names problematic for `test' and other utilities. + # Protect names problematic for 'test' and other utilities. case $src in -* | [=\(\)!]) src=./$src;; esac @@ -354,7 +354,7 @@ if test -z "$dir_arg" || { # Check for POSIX incompatibilities with -m. # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or - # other-writeable bit of parent directory when it shouldn't. + # other-writable bit of parent directory when it shouldn't. # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. ls_ld_tmpdir=`ls -ld "$tmpdir"` case $ls_ld_tmpdir in diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/missing new/libmspub-0.1.4/missing --- old/libmspub-0.1.3/missing 2017-12-28 15:40:44.000000000 +0100 +++ new/libmspub-0.1.4/missing 2017-03-30 15:13:15.000000000 +0200 @@ -1,9 +1,9 @@ #! /bin/sh # Common wrapper for a few potentially missing GNU programs. -scriptversion=2016-01-11.22; # UTC +scriptversion=2013-10-28.13; # UTC -# Copyright (C) 1996-2017 Free Software Foundation, Inc. +# Copyright (C) 1996-2014 Free Software Foundation, Inc. # Originally written by Fran,cois Pinard <pin...@iro.umontreal.ca>, 1996. # This program is free software; you can redistribute it and/or modify @@ -210,6 +210,6 @@ # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-time-zone: "UTC0" +# time-stamp-time-zone: "UTC" # time-stamp-end: "; # UTC" # End: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/conv/svg/pub2xhtml.cpp new/libmspub-0.1.4/src/conv/svg/pub2xhtml.cpp --- old/libmspub-0.1.3/src/conv/svg/pub2xhtml.cpp 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/conv/svg/pub2xhtml.cpp 2018-02-28 12:54:49.000000000 +0100 @@ -11,9 +11,8 @@ #include "config.h" #endif -#include <iostream> -#include <sstream> #include <fstream> +#include <iostream> #include <stdio.h> #include <string.h> #include <librevenge-stream/librevenge-stream.h> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/ColorReference.h new/libmspub-0.1.4/src/lib/ColorReference.h --- old/libmspub-0.1.3/src/lib/ColorReference.h 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/ColorReference.h 2018-02-28 12:54:49.000000000 +0100 @@ -10,6 +10,8 @@ #ifndef INCLUDED_COLORREFERENCE_H #define INCLUDED_COLORREFERENCE_H +#include <vector> + #include "MSPUBTypes.h" namespace libmspub diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/Dash.cpp new/libmspub-0.1.4/src/lib/Dash.cpp --- old/libmspub-0.1.3/src/lib/Dash.cpp 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/Dash.cpp 2018-02-28 12:54:49.000000000 +0100 @@ -8,6 +8,8 @@ */ #include "Dash.h" + +#include "MSPUBConstants.h" #include "libmspub_utils.h" namespace libmspub diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/Fill.cpp new/libmspub-0.1.4/src/lib/Fill.cpp --- old/libmspub-0.1.3/src/lib/Fill.cpp 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/Fill.cpp 2018-02-28 12:54:49.000000000 +0100 @@ -9,6 +9,8 @@ #include "Fill.h" +#include <utility> + #include "FillType.h" #include "MSPUBCollector.h" #include "libmspub_utils.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/Fill.h new/libmspub-0.1.4/src/lib/Fill.h --- old/libmspub-0.1.3/src/lib/Fill.h 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/Fill.h 2018-02-28 12:54:49.000000000 +0100 @@ -10,7 +10,6 @@ #ifndef INCLUDED_FILL_H #define INCLUDED_FILL_H -#include <cstddef> #include <vector> #include <librevenge/librevenge.h> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBCollector.cpp new/libmspub-0.1.4/src/lib/MSPUBCollector.cpp --- old/libmspub-0.1.3/src/lib/MSPUBCollector.cpp 2017-12-30 21:05:31.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBCollector.cpp 2018-02-28 13:01:54.000000000 +0100 @@ -9,17 +9,29 @@ #include "MSPUBCollector.h" +#include <algorithm> +#include <functional> #include <math.h> +#include <memory> #include <boost/multi_array.hpp> #include <unicode/ucsdet.h> #include <unicode/uloc.h> +#include "Arrow.h" #include "Coordinate.h" +#include "Dash.h" +#include "Fill.h" +#include "Line.h" +#include "Margins.h" #include "MSPUBConstants.h" #include "MSPUBTypes.h" #include "PolygonUtils.h" +#include "Shadow.h" +#include "ShapeGroupElement.h" +#include "TableInfo.h" +#include "VectorTransformation2D.h" #include "libmspub_utils.h" namespace libmspub @@ -546,9 +558,7 @@ { return false; } - auto parent = m_currentShapeGroup->getParent(); - if (parent) - m_currentShapeGroup = parent; + m_currentShapeGroup = m_currentShapeGroup->getParent(); return true; } @@ -819,7 +829,7 @@ const std::vector<Line> &lines = info.m_lines; if (hasStroke) { - if (hasBorderArt) + if (hasBorderArt && lines[0].m_widthInEmu > 0) { bool stretch = info.m_stretchBorderArt; double x = coord.getXIn(m_width); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBCollector.h new/libmspub-0.1.4/src/lib/MSPUBCollector.h --- old/libmspub-0.1.3/src/lib/MSPUBCollector.h 2017-12-30 15:18:50.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBCollector.h 2018-02-28 12:54:49.000000000 +0100 @@ -10,36 +10,37 @@ #ifndef INCLUDED_MSPUBCOLLECTOR_H #define INCLUDED_MSPUBCOLLECTOR_H -#include <algorithm> -#include <functional> #include <list> #include <map> -#include <memory> #include <set> -#include <string> +#include <utility> #include <vector> #include <librevenge/librevenge.h> -#include "Arrow.h" #include "BorderArtInfo.h" #include "ColorReference.h" -#include "Coordinate.h" -#include "Dash.h" #include "EmbeddedFontInfo.h" -#include "Fill.h" -#include "MSPUBContentChunkType.h" #include "MSPUBTypes.h" #include "PolygonUtils.h" -#include "Shadow.h" -#include "ShapeGroupElement.h" #include "ShapeInfo.h" #include "ShapeType.h" #include "VerticalAlign.h" -#include "libmspub_utils.h" namespace libmspub { + +class Fill; +class ShapeGroupElement; +class VectorTransformation2D; + +struct Arrow; +struct Coordinate; +struct Dash; +struct Line; +struct Shadow; +struct TableInfo; + class MSPUBCollector { friend class Fill; @@ -200,6 +201,7 @@ public: static librevenge::RVNGString getColorString(const Color &); }; + } // namespace libmspub #endif /* INCLUDED_MSPUBCOLLECTOR_H */ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBDocument.cpp new/libmspub-0.1.4/src/lib/MSPUBDocument.cpp --- old/libmspub-0.1.3/src/lib/MSPUBDocument.cpp 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBDocument.cpp 2018-02-28 12:54:49.000000000 +0100 @@ -7,13 +7,10 @@ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -#include <memory> -#include <sstream> -#include <string.h> -#include <string> - #include <libmspub/libmspub.h> +#include <memory> + #include "MSPUBCollector.h" #include "MSPUBParser.h" #include "MSPUBParser2k.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBMetaData.cpp new/libmspub-0.1.4/src/lib/MSPUBMetaData.cpp --- old/libmspub-0.1.3/src/lib/MSPUBMetaData.cpp 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBMetaData.cpp 2018-02-28 12:54:49.000000000 +0100 @@ -13,6 +13,7 @@ #include <cstdio> #include <cstring> #include <ctime> +#include <string> #include "libmspub_utils.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBMetaData.h new/libmspub-0.1.4/src/lib/MSPUBMetaData.h --- old/libmspub-0.1.3/src/lib/MSPUBMetaData.h 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBMetaData.h 2018-02-28 12:54:49.000000000 +0100 @@ -18,8 +18,6 @@ #include <librevenge-stream/librevenge-stream.h> -#include "libmspub_utils.h" - namespace libmspub { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBParser.cpp new/libmspub-0.1.4/src/lib/MSPUBParser.cpp --- old/libmspub-0.1.3/src/lib/MSPUBParser.cpp 2017-12-30 15:20:16.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBParser.cpp 2018-02-28 12:54:49.000000000 +0100 @@ -11,10 +11,10 @@ #include <algorithm> #include <cassert> +#include <list> #include <memory> #include <set> #include <sstream> -#include <string.h> #include <string> #include <utility> @@ -22,13 +22,15 @@ #include <librevenge-stream/librevenge-stream.h> -#include <zlib.h> - +#include "Arrow.h" +#include "ColorReference.h" +#include "Coordinate.h" #include "Dash.h" #include "EscherContainerType.h" #include "EscherFieldIds.h" #include "Fill.h" #include "FillType.h" +#include "Line.h" #include "ListInfo.h" #include "MSPUBBlockID.h" #include "MSPUBBlockType.h" @@ -36,6 +38,7 @@ #include "MSPUBConstants.h" #include "MSPUBContentChunkType.h" #include "MSPUBMetaData.h" +#include "Shadow.h" #include "ShapeFlags.h" #include "ShapeType.h" #include "TableInfo.h" @@ -1951,10 +1954,14 @@ else if (cAnchor.type == OFFICE_ART_CHILD_ANCHOR) { input->seek(cAnchor.contentsOffset, librevenge::RVNG_SEEK_SET); - int coordSystemWidth = thisParentCoordinateSystem.m_xe - thisParentCoordinateSystem.m_xs; + int coordSystemWidth = int64_t(thisParentCoordinateSystem.m_xe) - thisParentCoordinateSystem.m_xs; + if (coordSystemWidth == 0) + coordSystemWidth = 1; int coordSystemHeight = thisParentCoordinateSystem.m_ye - thisParentCoordinateSystem.m_ys; - int groupWidth = parentGroupAbsoluteCoord.m_xe - parentGroupAbsoluteCoord.m_xs; - int groupHeight = parentGroupAbsoluteCoord.m_ye - parentGroupAbsoluteCoord.m_ys; + if (coordSystemHeight == 0) + coordSystemHeight = 1; + int groupWidth = int64_t(parentGroupAbsoluteCoord.m_xe) - parentGroupAbsoluteCoord.m_xs; + int groupHeight = int64_t(parentGroupAbsoluteCoord.m_ye) - parentGroupAbsoluteCoord.m_ys; double widthScale = (double)groupWidth / coordSystemWidth; double heightScale = (double)groupHeight / coordSystemHeight; int xs = (readU32(input) - thisParentCoordinateSystem.m_xs) * widthScale + parentGroupAbsoluteCoord.m_xs; @@ -1966,12 +1973,10 @@ } if (rotated90) { - int initialX = absolute.m_xs; - int initialY = absolute.m_ys; - int initialWidth = absolute.m_xe - absolute.m_xs; - int initialHeight = absolute.m_ye - absolute.m_ys; - int centerX = initialX + initialWidth / 2; - int centerY = initialY + initialHeight / 2; + int initialWidth = int64_t(absolute.m_xe) - absolute.m_xs; + int initialHeight = int64_t(absolute.m_ye) - absolute.m_ys; + int centerX = int64_t(absolute.m_xs) + initialWidth / 2; + int centerY = int64_t(absolute.m_ys) + initialHeight / 2; int xs = centerX - initialHeight / 2; int ys = centerY - initialWidth / 2; int xe = xs + initialHeight; @@ -2028,7 +2033,7 @@ const unsigned *ptr_fillOpacity = getIfExists_const(foptProperties, FIELDID_FILL_OPACITY); const unsigned *ptr_fillBackOpacity = getIfExists_const(foptProperties, FIELDID_FILL_BACK_OPACITY); const unsigned *ptr_fillFocus = getIfExists_const(foptProperties, FIELDID_FILL_FOCUS); - short fillFocus = ptr_fillFocus ? ((int)(*ptr_fillFocus) << 16) >> 16 : 0; + short fillFocus = ptr_fillFocus ? int((*ptr_fillFocus << 16) >> 16) : 0; angle = ptr_angle ? *ptr_angle : 0; angle >>= 16; //it's actually only 16 bits // Don't try to figure out what sense the following switch statement makes. @@ -2387,7 +2392,7 @@ { //input should be at block.dataOffset + 4 , that is, at the beginning of the list of sub-blocks MSPUB_DEBUG_MSG(("Parsing chunk reference 0x%x\n", m_lastSeenSeqNum)); - MSPUBContentChunkType type = UNKNOWN_CHUNK; + unsigned type = UNKNOWN_CHUNK; unsigned long offset = 0; unsigned parentSeqNum = 0; bool seenType = false; @@ -2399,7 +2404,7 @@ //FIXME: Warn if multiple of these blocks seen. if (subBlock.id == CHUNK_TYPE) { - type = (MSPUBContentChunkType)subBlock.data; + type = subBlock.data; seenType = true; } else if (subBlock.id == CHUNK_OFFSET) @@ -2498,8 +2503,8 @@ { MSPUBBlockInfo info; info.startPosition = input->tell(); - info.id = (MSPUBBlockID)readU8(input); - info.type = (MSPUBBlockType)readU8(input); + info.id = readU8(input); + info.type = readU8(input); info.dataOffset = input->tell(); int len = getBlockDataLength(info.type); bool varLen = len < 0; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBParser.h new/libmspub-0.1.4/src/lib/MSPUBParser.h --- old/libmspub-0.1.3/src/lib/MSPUBParser.h 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBParser.h 2018-02-28 12:54:49.000000000 +0100 @@ -20,14 +20,17 @@ #include <librevenge/librevenge.h> -#include "Coordinate.h" -#include "Fill.h" #include "MSPUBTypes.h" #include "PolygonUtils.h" namespace libmspub { + +class Fill; class MSPUBCollector; + +struct Coordinate; + class FindBySeqNum { unsigned seqNum; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBParser2k.cpp new/libmspub-0.1.4/src/lib/MSPUBParser2k.cpp --- old/libmspub-0.1.3/src/lib/MSPUBParser2k.cpp 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBParser2k.cpp 2018-02-28 12:54:49.000000000 +0100 @@ -10,11 +10,14 @@ #include "MSPUBParser2k.h" #include <algorithm> +#include <utility> #include <memory> #include <librevenge-stream/librevenge-stream.h> #include "ColorReference.h" +#include "Fill.h" +#include "Line.h" #include "MSPUBCollector.h" #include "ShapeType.h" #include "libmspub_utils.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBParser97.cpp new/libmspub-0.1.4/src/lib/MSPUBParser97.cpp --- old/libmspub-0.1.3/src/lib/MSPUBParser97.cpp 2017-12-30 12:43:07.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBParser97.cpp 2018-02-28 12:54:49.000000000 +0100 @@ -9,9 +9,10 @@ #include "MSPUBParser97.h" +#include <algorithm> #include <limits> +#include <map> #include <memory> -#include <utility> #include "MSPUBCollector.h" #include "MSPUBTypes.h" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBParser97.h new/libmspub-0.1.4/src/lib/MSPUBParser97.h --- old/libmspub-0.1.3/src/lib/MSPUBParser97.h 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBParser97.h 2018-02-28 12:54:49.000000000 +0100 @@ -10,6 +10,8 @@ #ifndef INCLUDED_MSPUBPARSER97_H #define INCLUDED_MSPUBPARSER97_H +#include <vector> + #include "MSPUBParser2k.h" namespace libmspub diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/MSPUBTypes.h new/libmspub-0.1.4/src/lib/MSPUBTypes.h --- old/libmspub-0.1.3/src/lib/MSPUBTypes.h 2017-12-30 16:19:05.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/MSPUBTypes.h 2018-02-28 12:54:49.000000000 +0100 @@ -77,9 +77,9 @@ struct MSPUBBlockInfo { - MSPUBBlockInfo() : id((MSPUBBlockID)0), type((MSPUBBlockType)0), startPosition(0), dataOffset(0), dataLength(0), data(0), stringData() { } - MSPUBBlockID id; - MSPUBBlockType type; + MSPUBBlockInfo() : id(0), type(0), startPosition(0), dataOffset(0), dataLength(0), data(0), stringData() { } + unsigned id; + unsigned type; unsigned long startPosition; unsigned long dataOffset; unsigned long dataLength; @@ -89,10 +89,10 @@ struct ContentChunkReference { - ContentChunkReference() : type(UNKNOWN_CHUNK), offset(0), end(0), seqNum(0), parentSeqNum(0) { } - ContentChunkReference(MSPUBContentChunkType t, unsigned long o, unsigned long e, unsigned sn, unsigned psn) : + ContentChunkReference() : type(0), offset(0), end(0), seqNum(0), parentSeqNum(0) { } + ContentChunkReference(unsigned t, unsigned long o, unsigned long e, unsigned sn, unsigned psn) : type(t), offset(o), end(e), seqNum(sn), parentSeqNum(psn) {} - MSPUBContentChunkType type; + unsigned type; unsigned long offset; unsigned long end; //offset of the last element plus one. unsigned seqNum; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/PolygonUtils.cpp new/libmspub-0.1.4/src/lib/PolygonUtils.cpp --- old/libmspub-0.1.3/src/lib/PolygonUtils.cpp 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/PolygonUtils.cpp 2018-02-28 12:54:49.000000000 +0100 @@ -9,12 +9,16 @@ #include "PolygonUtils.h" +#include <algorithm> #include <math.h> #include <librevenge/librevenge.h> +#include "ColorReference.h" +#include "Line.h" #include "MSPUBCollector.h" #include "ShapeType.h" +#include "VectorTransformation2D.h" #include "libmspub_utils.h" #define CALCULATED_VALUE(val) (int(unsigned(val) | 0x80000000)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/PolygonUtils.h new/libmspub-0.1.4/src/lib/PolygonUtils.h --- old/libmspub-0.1.3/src/lib/PolygonUtils.h 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/PolygonUtils.h 2018-02-28 12:54:49.000000000 +0100 @@ -17,9 +17,7 @@ #include <librevenge/librevenge.h> #include "Coordinate.h" -#include "Line.h" #include "ShapeType.h" -#include "VectorTransformation2D.h" namespace libmspub { @@ -33,7 +31,10 @@ const int OTHER_CALC_VAL = 0x400; const int ASPECT_RATIO = 0x600; -class MSPUBCollector; +class VectorTransformation2D; + +struct Color; +struct Line; typedef struct { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/ShapeGroupElement.cpp new/libmspub-0.1.4/src/lib/ShapeGroupElement.cpp --- old/libmspub-0.1.3/src/lib/ShapeGroupElement.cpp 2017-12-30 21:07:45.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/ShapeGroupElement.cpp 2018-02-28 12:54:49.000000000 +0100 @@ -9,6 +9,11 @@ #include "ShapeGroupElement.h" +#include <algorithm> + +#include "Coordinate.h" +#include "MSPUBConstants.h" + namespace libmspub { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/ShapeGroupElement.h new/libmspub-0.1.4/src/lib/ShapeGroupElement.h --- old/libmspub-0.1.3/src/lib/ShapeGroupElement.h 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/ShapeGroupElement.h 2018-02-28 12:54:49.000000000 +0100 @@ -21,6 +21,9 @@ namespace libmspub { + +struct Coordinate; + class ShapeGroupElement { boost::optional<ShapeInfo> m_shapeInfo; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libmspub-0.1.3/src/lib/libmspub_utils.h new/libmspub-0.1.4/src/lib/libmspub_utils.h --- old/libmspub-0.1.3/src/lib/libmspub_utils.h 2017-12-28 17:16:08.000000000 +0100 +++ new/libmspub-0.1.4/src/lib/libmspub_utils.h 2018-02-28 12:54:49.000000000 +0100 @@ -15,7 +15,6 @@ #endif #include <cmath> -#include <map> #include <vector> #include <boost/cstdint.hpp>