summaryrefslogtreecommitdiff
path: root/src/anastasis/print.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/anastasis/print.c')
-rw-r--r--src/anastasis/print.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/src/anastasis/print.c b/src/anastasis/print.c
index 6b4a4c5..c640c71 100644
--- a/src/anastasis/print.c
+++ b/src/anastasis/print.c
@@ -30,19 +30,19 @@
#include <gnunet/gnunet_util_lib.h>
#include "print.h"
-static jmp_buf env;
-
static void
error_handler (HPDF_STATUS error_no,
HPDF_STATUS detail_no,
void *user_data)
{
+ jmp_buf *env = user_data;
+
GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
"error_no=%04X, detail_no=%u\n",
(HPDF_UINT) error_no,
(HPDF_UINT) detail_no);
- longjmp (env,
+ longjmp (*env,
1);
}
@@ -59,8 +59,11 @@ AG_print (json_t *user,
HPDF_Page page;
float tw;
float fsize;
+ jmp_buf env;
+
- pdf = HPDF_New (error_handler, NULL);
+ pdf = HPDF_New (&error_handler,
+ &env);
if (! pdf)
{
printf ("error: cannot create PdfDoc object\n");
@@ -133,7 +136,7 @@ AG_print (json_t *user,
HPDF_Page_GetWidth (page) - 130,
HPDF_FALSE,
NULL);
- if ( (len < strlen (val)) &&
+ if ( (len < (ssize_t) strlen (val)) &&
(fsize > 10) )
fsize--;
else