[poppler] 2 commits - CMakeLists.txt configure.ac msvc/config.h NEWS poppler/Object.h qt4/src
Albert Astals Cid
aacid at kemper.freedesktop.org
Tue Sep 23 13:40:03 PDT 2008
CMakeLists.txt | 2 +-
NEWS | 19 +++++++++++++++++++
configure.ac | 2 +-
msvc/config.h | 6 +++---
poppler/Object.h | 36 ++++++++++++++++++++++--------------
qt4/src/Doxyfile | 2 +-
6 files changed, 47 insertions(+), 20 deletions(-)
New commits:
commit 539d29f4f3b24b98c9fc5f88d3477e427fbe409d
Author: Albert Astals Cid <aacid at kde.org>
Date: Tue Sep 23 22:39:50 2008 +0200
0.9.2
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 6cf9765..b0f2728 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -11,7 +11,7 @@ find_package(PkgConfig)
include(MacroEnsureVersion)
include(MacroBoolTo01)
-set(POPPLER_VERSION "0.9.1")
+set(POPPLER_VERSION "0.9.2")
# command line switches
option(ENABLE_XPDF_HEADERS "Install unsupported xpdf headers." OFF)
diff --git a/NEWS b/NEWS
index 1f8feec..30772df 100644
--- a/NEWS
+++ b/NEWS
@@ -1,3 +1,22 @@
+Release 0.9.2 (0.10 RC 1)
+
+ core:
+ * Fix conversion to PS some files (bug #17645)
+ * Small Form fixes
+ * Small JS fixes
+ * Improve memory usage of the cairo renderer
+
+ utils:
+ * Fix mismatched free/delete in pdftohtml
+ * Fix memory leak in pdftohtml
+ * Fix crash in pdftohtml
+
+ glib:
+ * Fix a crash in forms demo
+
+ misc:
+ * Compile with -pedantic
+
Release 0.9.1 (0.10 Beta 2)
Core:
diff --git a/configure.ac b/configure.ac
index 452e884..8129cf9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
AC_PREREQ(2.59)
-AC_INIT(poppler, 0.9.1)
+AC_INIT(poppler, 0.9.2)
AM_INIT_AUTOMAKE([foreign])
AM_CONFIG_HEADER(config.h)
AM_CONFIG_HEADER(poppler/poppler-config.h)
diff --git a/msvc/config.h b/msvc/config.h
index 8afc294..fe55102 100644
--- a/msvc/config.h
+++ b/msvc/config.h
@@ -32,13 +32,13 @@
#define PACKAGE_NAME "poppler"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "poppler 0.9.1"
+#define PACKAGE_STRING "poppler 0.9.2"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "poppler"
/* Define to the version of this package. */
-#define PACKAGE_VERSION "0.9.1"
+#define PACKAGE_VERSION "0.9.2"
/* Poppler data dir */
#define POPPLER_DATADIR "/usr/local/share/poppler"
@@ -53,7 +53,7 @@
/* #undef USE_EXCEPTIONS */
/* Version number of package */
-#define VERSION "0.9.1"
+#define VERSION "0.9.2"
#define snprintf _snprintf
#define unlink _unlink
diff --git a/qt4/src/Doxyfile b/qt4/src/Doxyfile
index 7566664..4a8d13b 100644
--- a/qt4/src/Doxyfile
+++ b/qt4/src/Doxyfile
@@ -31,7 +31,7 @@ PROJECT_NAME = "Poppler Qt4 "
# This could be handy for archiving the generated documentation or
# if some version control system is used.
-PROJECT_NUMBER = 0.9.1
+PROJECT_NUMBER = 0.9.2
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
# base path where the generated documentation will be put.
commit abd070a79d8345bda3853395a39e4e2882c4ff8a
Author: Albert Astals Cid <aacid at kde.org>
Date: Mon Sep 22 20:23:11 2008 +0200
Check the types here too
Benchmarking in release mode, both in "human feel" and callgrind the benefit/lost is almost inexistant
diff --git a/poppler/Object.h b/poppler/Object.h
index 29542c1..01bff6b 100644
--- a/poppler/Object.h
+++ b/poppler/Object.h
@@ -15,6 +15,7 @@
//
// Copyright (C) 2007 Julien Rebetez <julienr at svn.gnome.org>
// Copyright (C) 2008 Kees Cook <kees at outflux.net>
+// Copyright (C) 2008 Albert Astals Cid <aacid at kde.org>
//
// To see a description of the changes please see the Changelog file that
// came with your tarball or type make ChangeLog if you are building from git
@@ -50,6 +51,13 @@
abort(); \
}
+#define OBJECT_2TYPES_CHECK(wanted_type1, wanted_type2) \
+ if (unlikely(type != wanted_type1) && unlikely(type != wanted_type2)) { \
+ error(0, "Call to Object where the object was type %d, " \
+ "not the expected type %d or %d", type, wanted_type1, wanted_type2); \
+ abort(); \
+ }
+
class XRef;
class Array;
class Dict;
@@ -177,20 +185,20 @@ public:
GBool isCmd(char *cmdA)
{ return type == objCmd && !strcmp(cmd, cmdA); }
- // Accessors. NB: these assume object is of correct type.
- GBool getBool() { return booln; }
- int getInt() { return intg; }
- double getReal() { return real; }
- double getNum() { return type == objInt ? (double)intg : real; }
- GooString *getString() { return string; }
- char *getName() { return name; }
- Array *getArray() { return array; }
- Dict *getDict() { return dict; }
- Stream *getStream() { return stream; }
- Ref getRef() { return ref; }
- int getRefNum() { return ref.num; }
- int getRefGen() { return ref.gen; }
- char *getCmd() { return cmd; }
+ // Accessors.
+ GBool getBool() { OBJECT_TYPE_CHECK(objBool); return booln; }
+ int getInt() { OBJECT_TYPE_CHECK(objInt); return intg; }
+ double getReal() { OBJECT_TYPE_CHECK(objReal); return real; }
+ double getNum() { OBJECT_2TYPES_CHECK(objInt, objReal); return type == objInt ? (double)intg : real; }
+ GooString *getString() { OBJECT_TYPE_CHECK(objString); return string; }
+ char *getName() { OBJECT_TYPE_CHECK(objName); return name; }
+ Array *getArray() { OBJECT_TYPE_CHECK(objArray); return array; }
+ Dict *getDict() { OBJECT_TYPE_CHECK(objDict); return dict; }
+ Stream *getStream() { OBJECT_TYPE_CHECK(objStream); return stream; }
+ Ref getRef() { OBJECT_TYPE_CHECK(objRef); return ref; }
+ int getRefNum() { OBJECT_TYPE_CHECK(objRef); return ref.num; }
+ int getRefGen() { OBJECT_TYPE_CHECK(objRef); return ref.gen; }
+ char *getCmd() { OBJECT_TYPE_CHECK(objCmd); return cmd; }
// Array accessors.
int arrayGetLength();
More information about the poppler
mailing list