From b1dc3eb11ae16ea2725f37d2b78ff893e336ed45 Mon Sep 17 00:00:00 2001 From: John Hewson Date: Wed, 23 Jan 2013 12:29:59 +0000 Subject: [PATCH 1/3] enhanced version information --- src/pdf2htmlEX.cc | 28 +++++++++++++++++++++++++--- src/util/ffw.c | 7 +++++++ src/util/ffw.h | 1 + 3 files changed, 33 insertions(+), 3 deletions(-) diff --git a/src/pdf2htmlEX.cc b/src/pdf2htmlEX.cc index 8bec400..1024206 100644 --- a/src/pdf2htmlEX.cc +++ b/src/pdf2htmlEX.cc @@ -12,6 +12,8 @@ #include #include +#include + #include #include @@ -24,6 +26,7 @@ #include "HTMLRenderer/HTMLRenderer.h" #include "util/ArgParser.h" #include "util/path.h" +#include "util/ffw.h" using namespace std; using namespace pdf2htmlEX; @@ -31,11 +34,17 @@ using namespace pdf2htmlEX; Param param; ArgParser argparser; -void show_usage_and_exit(const char * dummy = nullptr) +void show_version() { - cerr << "pdftohtmlEX version " << PDF2HTMLEX_VERSION << endl; + cerr << "pdftohtmlEX version " << PDF2HTMLEX_VERSION; + cerr << " (poppler " << POPPLER_VERSION; + cerr << ", libfontforge " << ffw_get_version() << ")"; cerr << endl; cerr << "Copyright 2012 Lu Wang " << endl; +} + +void show_usage() +{ cerr << endl; cerr << "Usage: pdf2htmlEX [Options] []" << endl; cerr << endl; @@ -47,11 +56,24 @@ void show_usage_and_exit(const char * dummy = nullptr) exit(EXIT_FAILURE); } +void show_usage_and_exit(const char * dummy = nullptr) +{ + show_version(); + show_usage(); + exit(EXIT_FAILURE); +} + +void show_version_and_exit(const char * dummy = nullptr) +{ + show_version(); + exit(EXIT_FAILURE); +} + void parse_options (int argc, char **argv) { argparser .add("help,h", "show all options", &show_usage_and_exit) - .add("version,v", "show copyright and version info", &show_usage_and_exit) + .add("version,v", "show copyright and version info", &show_version_and_exit) .add("owner-password,o", ¶m.owner_password, "", "owner password (for encrypted files)", nullptr, true) .add("user-password,u", ¶m.user_password, "", "user password (for encrypted files)", nullptr, true) diff --git a/src/util/ffw.c b/src/util/ffw.c index d0e0858..6bf2982 100644 --- a/src/util/ffw.c +++ b/src/util/ffw.c @@ -400,3 +400,10 @@ void ffw_auto_hint(void) FVAutoHint(cur_fv); FVAutoInstr(cur_fv); } + +char* ffw_get_version(void) +{ + char* str = (char*)malloc(sizeof(char) * 20); + printf("%d", library_version_configuration.library_source_versiondate); + return str; +} \ No newline at end of file diff --git a/src/util/ffw.h b/src/util/ffw.h index d388677..ae2758b 100644 --- a/src/util/ffw.h +++ b/src/util/ffw.h @@ -23,6 +23,7 @@ extern "C" { // global void ffw_init(int debug); void ffw_finalize(void); +char* ffw_get_version(void); //////////////////////// // load & save From df054d70cfe165724e1d2a6d5d88a23b37d2eccc Mon Sep 17 00:00:00 2001 From: John Hewson Date: Wed, 23 Jan 2013 14:40:28 +0000 Subject: [PATCH 2/3] fixed memory leak --- src/util/ffw.c | 6 ++---- src/util/ffw.h | 2 +- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/src/util/ffw.c b/src/util/ffw.c index 6bf2982..7106235 100644 --- a/src/util/ffw.c +++ b/src/util/ffw.c @@ -401,9 +401,7 @@ void ffw_auto_hint(void) FVAutoInstr(cur_fv); } -char* ffw_get_version(void) +long ffw_get_version(void) { - char* str = (char*)malloc(sizeof(char) * 20); - printf("%d", library_version_configuration.library_source_versiondate); - return str; + return library_version_configuration.library_source_versiondate; } \ No newline at end of file diff --git a/src/util/ffw.h b/src/util/ffw.h index ae2758b..bfcdacd 100644 --- a/src/util/ffw.h +++ b/src/util/ffw.h @@ -23,7 +23,7 @@ extern "C" { // global void ffw_init(int debug); void ffw_finalize(void); -char* ffw_get_version(void); +long ffw_get_version(void); //////////////////////// // load & save From 43ae72b9b0e400284d7c081ba86f327f18433cbe Mon Sep 17 00:00:00 2001 From: John Hewson Date: Wed, 23 Jan 2013 15:02:11 +0000 Subject: [PATCH 3/3] removed version from usage --- src/pdf2htmlEX.cc | 25 ++++++------------------- 1 file changed, 6 insertions(+), 19 deletions(-) diff --git a/src/pdf2htmlEX.cc b/src/pdf2htmlEX.cc index 1024206..0c158c5 100644 --- a/src/pdf2htmlEX.cc +++ b/src/pdf2htmlEX.cc @@ -34,18 +34,8 @@ using namespace pdf2htmlEX; Param param; ArgParser argparser; -void show_version() +void show_usage_and_exit(const char * dummy = nullptr) { - cerr << "pdftohtmlEX version " << PDF2HTMLEX_VERSION; - cerr << " (poppler " << POPPLER_VERSION; - cerr << ", libfontforge " << ffw_get_version() << ")"; - cerr << endl; - cerr << "Copyright 2012 Lu Wang " << endl; -} - -void show_usage() -{ - cerr << endl; cerr << "Usage: pdf2htmlEX [Options] []" << endl; cerr << endl; cerr << "Options:" << endl; @@ -56,16 +46,13 @@ void show_usage() exit(EXIT_FAILURE); } -void show_usage_and_exit(const char * dummy = nullptr) -{ - show_version(); - show_usage(); - exit(EXIT_FAILURE); -} - void show_version_and_exit(const char * dummy = nullptr) { - show_version(); + cerr << "pdftohtmlEX version " << PDF2HTMLEX_VERSION << endl; + cerr << "Copyright 2012 Lu Wang " << endl; + cerr << "Libraries: "; + cerr << "poppler " << POPPLER_VERSION << ", "; + cerr << "libfontforge " << ffw_get_version() << endl; exit(EXIT_FAILURE); }