|
Packit |
daac2c |
/* otferror.c -- Error handling.
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
|
|
Packit |
daac2c |
National Institute of Advanced Industrial Science and Technology (AIST)
|
|
Packit |
daac2c |
Registration Number H15PRO167
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
This file is part of libotf.
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
Libotf is free software; you can redistribute it and/or modify it
|
|
Packit |
daac2c |
under the terms of the GNU Lesser General Public License as published
|
|
Packit |
daac2c |
by the Free Software Foundation; either version 2.1 of the License, or
|
|
Packit |
daac2c |
(at your option) any later version.
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
Libotf is distributed in the hope that it will be useful, but WITHOUT
|
|
Packit |
daac2c |
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
|
|
Packit |
daac2c |
FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
|
|
Packit |
daac2c |
License for more details.
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
You should have received a copy of the GNU Lesser General Public
|
|
Packit |
daac2c |
License along with this library, in a file named COPYING; if not,
|
|
Packit |
daac2c |
write to the Free Software Foundation, Inc., 59 Temple Place, Suite
|
|
Packit |
daac2c |
330, Boston, MA 02111-1307, USA. */
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
#include <stdio.h>
|
|
Packit |
daac2c |
#include <stdlib.h>
|
|
Packit |
daac2c |
#include <string.h>
|
|
Packit |
daac2c |
#include <config.h>
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
#include "otf.h"
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
static char error_message[1024];
|
|
Packit |
daac2c |
int OTF_error;
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
static char *error_string[] =
|
|
Packit |
daac2c |
{
|
|
Packit |
daac2c |
"No error",
|
|
Packit |
daac2c |
"Memory shortage",
|
|
Packit |
daac2c |
"File error",
|
|
Packit |
daac2c |
"Invalid table",
|
|
Packit |
daac2c |
"CMAP drive",
|
|
Packit |
daac2c |
"GDEF drive",
|
|
Packit |
daac2c |
"GSUB drive",
|
|
Packit |
daac2c |
"GPOS drive"
|
|
Packit |
daac2c |
};
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
int
|
|
Packit |
daac2c |
otf__error (int err, const char *fmt, const void *arg)
|
|
Packit |
daac2c |
{
|
|
Packit |
daac2c |
sprintf (error_message, "OTF-Error (%s): ", error_string[err]);
|
|
Packit |
daac2c |
sprintf (error_message + strlen (error_message), fmt, arg);
|
|
Packit |
daac2c |
OTF_error = err;
|
|
Packit |
daac2c |
return 0;
|
|
Packit |
daac2c |
}
|
|
Packit |
daac2c |
|
|
Packit |
daac2c |
void
|
|
Packit |
daac2c |
OTF_perror (const char *prefix)
|
|
Packit |
daac2c |
{
|
|
Packit |
daac2c |
if (OTF_error == 0)
|
|
Packit |
daac2c |
sprintf (error_message, "%s", error_string[0]);
|
|
Packit |
daac2c |
if (prefix)
|
|
Packit |
daac2c |
fprintf (stderr, "%s: %s\n", prefix, error_message);
|
|
Packit |
daac2c |
else
|
|
Packit |
daac2c |
fprintf (stderr, "%s\n", error_message);
|
|
Packit |
daac2c |
}
|